許多人可能直接拿一些水插件就直接套上專案,但在開發中後期可能會發生許多整合方面的問題,這時候花些時間理解其中組成的模組是必要的,甚至還可以達到客製化的目的,而projected grid就是無限大海水方案的基礎模組之一。
近期ChatGPT蠻流行的,對於通用的演算法、數學或物理公式,可以幫上不少忙,甚至也可以幫你寫一些demo代碼,所以覺得所有演算法都要自己寫過的必要性也不高,反而我個人認為之後整合的部份會更勝於演算法的實作,簡單來說就是懂得怎麼用可能會比怎麼寫還來得更重要,所以這裡關於Projected grid的演算法如何推導就不是本文的重點,最後會附上相關的理論連結供參考。
- 依鏡頭解析度建立投射格子mesh
- 每個frame依鏡頭換算相關投射矩陣
- 畫出相關projected grid mesh
- 使用geometryShader顯示wireframe來進行相關除錯,並用一個RenderObjectPass來畫它
相關demo影片:
相關理論文章連結:
Real-time water rendering - Introducing the projected grid concept
最後再附上相關的Github連結:
Dream continues in...
沒有留言:
張貼留言