大家好,本系列會從0開始,開發一個基於WebGPU的路徑追蹤渲染器,使用深度學習降噪、DLSS等AI技術實現實時渲染;並且基於自研的低程式碼開發平臺,讓使用者可以通過視覺化拖拽的方式快速搭建自定義的Web3D引擎
我已經在Web3D引擎領域有1萬小時開發經驗,主要完成了下面的事情:
1.用了4年,全職開發了Wonder:類似於Unity的WebGL引擎和編輯器,釋出了v1.1正式版,完成了MVP功能
詳細介紹可看:
Wonder 1.0正式版釋出-----WebGL 3D引擎和編輯器
2.學習了WebGPU,寫了WebGPU的新手教學,熟悉了計算著色器的使用,實現了LBVH演演算法
詳情請見:
WebGPU學習系列目錄
後面還作為技術合夥人,拿到了「WebGPU引擎專案」的天使輪千萬投資
3.用了大概1年的時間,全職開發了基礎的離線路徑追蹤渲染器,開設了相關的課程(課時長達49小時)
詳情請見:
WebGPU+光線追蹤Ray Tracing 開發三個月總結
釋出了幾個版本的程式碼
離線渲染零基礎實戰開發培訓班
渲染圖:
4.用了大概1年的時間,全職開發了Meta3D:Web3D低程式碼開發平臺
Meta3D是開源的Web3D低程式碼平臺,致力於建設共用互助開放的Web3D生態,讓Web3D引擎和編輯器開發輕而易舉
Meta3D的使用者是Web3D引擎或編輯器的開發者,您使用Meta3D來快速搭建Web3D引擎或編輯器
Meta3D已經發布了內測版本
詳情請見:
Meta3D官網
5.用了大概1年半的時間,學習了深度學習,開發了一個深度學習框架、開辦了深度學習基礎班培訓課程,並且已經實現了深度學習降噪、DLSS等Demo
詳情請見:
我開發的深度學習框架
深度學習基礎課系列目錄
深度學習降噪專題課
實時渲染前沿研究:在瀏覽器上實現了Facebook提出的DLSS演演算法
6.用了3個月,全職完成了《3D程式設計模式》這本開源書
本書提出了3D引擎和編輯器相關的7個程式設計模式,詳情請見:
我寫了本開源書:《3D程式設計模式》
開發Wonder v1.2版本時暫停了開發,原因是發現有兩個問題難以解決:
(1)沒有實現全域性光照,只有區域性光照
因為使用的是WebGL,效能不行,沒有計算著色器,所以難以實現高效能的全域性光照演演算法
(2)使用者不能擴充套件編輯器
因為編輯器的UI是React寫的,所以不方便由使用者擴充套件
因此,本系列開發的引擎將作為Wonder的v3.0版本,徹底解決這個兩個問題。
解決方案如下:
(1)對於第一個問題,我們從WebGL改為WebGPU,從光柵化渲染改為路徑追蹤渲染,從而實現全域性光照。
這裡不使用光柵化+光追的混合渲染的好處是可以只用一套演演算法而實現所有的渲染效果,方便實現和管理。
另外,因為使用深度學習輻射亮度快取、深度學習降噪、DLSS作為後處理,所以只需要1spp和低解析度的取樣,從而實現實時渲染
更多思考請詳見:
實時渲染路徑追蹤概述
(2)對於第二個問題,因為現在我們基於Meta3D來開發引擎和編輯器,使用者可以通過組裝不同的元件來實現自定義的引擎和編輯器,並且UI改為用IMGUI實現,從而能容易地實現引擎和編輯器的擴充套件
實現下面的功能: