side project離上次更新有幾個月了..聖誕返臺度假休息、登記結婚後就一直忙到最近
耗時兩個月左右完成了簽證延簽跟太太的依親,雙雙可用到2027年,直接接軌永居沒問題啦
然後又玩了RDR2跟某個好玩不花錢的線上遊戲一陣子,拖了一點時程
不過最好玩的時候還是回到side project解決問題的時候
加入了折射材質以及光追反射~(尚未加入多重反射)
施加反射效果到物件時也有考量到材質粗糙度來做變化,更讓折射材質也能在反射中顯示
並且盡可能的考量到效能問題,在4070Ti, 1440p下光追反射能維持在1ms左右
整體來說,比以前用D3D12時做的還要好
折射模糊部分施加了高斯模糊,單純的mipmap實在太醜了,塊狀感太重
反射部分則是混和了mipmap以及高斯模糊
而追蹤的部分,hit group僅僅負責材質的收集而已
反射的光照計算會在TraceRay()結束後回到Ray gen shader做 (類deferred的概念)
過程中也作了一些最佳化,避免不必要的TraceRay()呼叫
除此之外還有一堆雜七雜八的功能新增我省略了,例如
- 場景的存讀,聽起來簡單但如果是非基本型別 (pointer reference)要另外處理
- 以及0 keyword shader,一個材質只會有一個shader了,全面改用dynamic branch,效能上幾乎沒差但可以少掉一堆shader變體
大概這樣~新的sprint又要開始了