天天看點

剖析虛幻渲染體系-開篇說明

目錄

  • 前言
  • 内容綱目
  • 團隊招員
  • 特别說明
  • 參考文獻

筆者的部落格園博文斷更很久了,上一篇文章是去年10月,有關UE的PBR材質制作。斷更的原因有二:一是潛心研讀UE底層源碼,做二次開發;二是工作壓力和KPI考核較緊,人在江湖身不由己,生計為先。

衆所皆知,虛幻引擎(Unreal Engine)是當今世界上最流行最知名的商業引擎之一,并且在幾年前開放了源代碼,前兩年随着PUBGM而起,在移動端發力,漸漸成為遊戲研發廠商的首選(反觀某U以賣源碼為榮,以高昂的學費開班授課為賺錢之道,結果移動端也被UE反超,實在是目光短淺所緻)。毫不誇張地說,UE是濃縮了實時渲染界幾十年來的精華和瑰寶。研究UE的人也數不勝數,并有逐年增加之勢。

在此背景下,筆者認為更有撰寫文章剖析UE渲染體系的必要性。

筆者從2019年年中接觸UE以來,也有一年多了。在這段時間裡,潛心研究UE而無法自拔,從最初熟悉編輯器的使用,再到光照系統、材質系統、延遲渲染管線、後處理、光線追蹤等功能子產品,再到近期的底層源代碼研讀和二次開發。這期間曆經了很多思考、摸索、探索,踩過不少坑,當然更多的是收獲、感悟和總結,于是萌生了撰寫這個系列文章的念頭,以飨同行,以師新人。

本想将此系列文章發表到知乎,因為知乎的使用者基數大,利于傳播,也利于圈粉,筆者也夢想有朝一日成為知乎大V,成為技術網紅。

剖析虛幻渲染體系-開篇說明

截止2020年8月中旬,筆者之前的數篇技術文章浏覽量達數萬,但粉絲隻有區區數十。難道這是傳說中的叫好不叫座?

然而,靜下來思索,寫文章的最終目的還是在于分享和教學,而不是圈粉,加上部落格園的頁面幹淨純粹,不夾雜任何廣告,在商業化和物欲橫流的當今,确實是一股清流。此外,良好地支援Markdown和\(\LaTeX\)等文法(如支援數學公式,支援目錄,支援跳轉等等),這些特點正與筆者的初衷和設想不謀而合,既有偏好,也有情懷,不為商業低頭,舍它其誰?

能看到自己的文章幫助到很多人,看到他們為發揚圖形學技術而前仆後繼,後浪推前浪,這是圈粉所不能帶來的滿足和快樂感。這些想法讓筆者更加堅定了繼續将文章發表在部落格園的決心。

當然,按慣例事先聲明,這不是UE的入門教程,要求讀者具備以下計算機專業技能:

  • 良好的計算機語言(如C++、C#等)基礎。
  • 良好的計算機圖形學基礎。
  • 掌握UE的使用。
  • 掌握UE的材質、光照、後處理等子產品。
  • 掌握Shader程式設計基礎。

如果讀者不具備以上技能,或者對UE不熟悉,建議先從閱讀UE的官方文檔,熟悉UE後再閱讀此系列文章。

本系列文章以UnrealEngine 4.25.3版本的源碼為基礎,分析它在PC平台的延遲渲染管線的渲染體系和特性。

本系列文章将分很多篇章,每篇都将是長篇大論。由于筆者本就工作繁忙,隻能抽取業餘時間一邊研讀UE源碼,一邊參考衆多文獻,一邊撰寫,更新頻率不會很快,短則數周,長則數月,但求有足夠動力和精力維繼下去,盡力不太監。

由于UE太過龐大,單單渲染子產品涉及的體系和知識點衆多,預計每篇數萬字,整個系列的總字數将達到數十萬字,即便抽出大部分業餘時間,也需要耗費長達1~2年才能完成。

言歸正傳,本系列文章拟定了以下章目:

  • 剖析虛幻渲染體系(01)- 綜述和基礎
  • 剖析虛幻渲染體系(02)- 多線程渲染
  • 剖析虛幻渲染體系(03)- 渲染機制
  • 剖析虛幻渲染體系(04)- 延遲渲染管線
  • 剖析虛幻渲染體系(05)- 光源和陰影
  • 剖析虛幻渲染體系(06)- UE5特輯Part 1(特性和Nanite)
  • 剖析虛幻渲染體系(06)- UE5特輯Part 2(Lumen和其它)
  • 剖析虛幻渲染體系(07)- 後處理(此篇需登入部落格園方可打開,原因未知)
  • 剖析虛幻渲染體系(08)- Shader體系
  • 剖析虛幻渲染體系(09)- 材質體系
  • 剖析虛幻渲染體系(10)- RHI
  • 剖析虛幻渲染體系(11)- RDG
  • 剖析虛幻渲染體系(12)- 移動端專題Part 1(UE移動端渲染分析)
  • 剖析虛幻渲染體系(12)- 移動端專題Part 2(GPU架構和機制)
  • 剖析虛幻渲染體系(12)- 移動端專題Part 3(渲染優化)
  • 剖析虛幻渲染體系(13)- RHI補充篇:現代圖形API之奧義與指南
  • 剖析虛幻渲染體系(14)- 實時光線追蹤
  • 剖析虛幻渲染體系(15)- 特殊渲染技術
  • 剖析虛幻渲染體系(16)- 優化技術
  • 剖析虛幻渲染體系(17)- 實用工具合集

以上章目可能有變動,有增有删有改,但總的宗旨在于先總後分、先上而下、由外入裡,層層遞進,逐漸揭開UE龐大且複雜的渲染體系的神秘面紗。

感興趣的讀者可以收藏這篇說明頁面連結,以便能夠及時查閱到更新。

應不少同學的要求,建立了UE技術交流QQ群,有興趣的同學掃描下面的二維碼加入。

剖析虛幻渲染體系-開篇說明

部落客所在的團隊正在用UE4開發一種全新的沉浸式體驗的産品,急需各路賢士加入,共謀宏圖大業。目前急招以下職位:

  • UE邏輯開發。
  • UE引擎程式。
  • UE圖形渲染。
  • TA(技術向、美術向)。

要求:

  • 紮實的技術基礎。
  • 高度的技術熱情。
  • 良好的自驅力。
  • 良好的溝通協作能力。
  • 有UE使用經驗或移動端開發經驗更佳。

有意向或想了解更多的請添加部落客微信:81079389(注明部落格園求職),或者發履歷到部落客郵箱:81079389#qq.com(#換成@)。

靜待各路英雄豪傑相會。

本系列文章為筆者原創,隻發表在部落格園上,歡迎分享本文連結,但未經同意,不允許轉載!

  • Unreal Engine Source
  • Rendering and Graphics
  • Materials
  • Graphics Programming

繼續閱讀