趁著晚上小孩去補習,就順勢把另外兩個範例做完了,同時也把repository名字改成Compute Ray Tracing Samples,之後會陸續把一些跟ray tracing相關的範例放進去。

第一個範例是Ray Query,也就是示範如何用compute shader實作ray query的功能。ray query可以用來偵測ray是否與物件交會,因此範例中使用了ray query來渲染影子。此範例使用簡易版本的ray tracing來渲染。ray query也是目前Vulkan Ray Tracing final spec的其中一個標準功能。

Ray Query

Ray Query

第二個範例是Hybrid Rendering,一樣是使用ray query來渲染影子,但是主要是示範如何將傳統 rasterizing與ray query並用。ray query渲染影子比起shadow map有許多優點,比如self shadowing的時候不會有精確度瑕疵,廣大場景的影子也不會有記憶體用量跟高低解析度交接的問題等等。

Hybrid Rendering

Hybrid Rendering

目前先把程式碼上傳,之後會再補上程式的說明,有興趣的人請持續關注我的網誌,之後應該也會花點時間製作一下Vulkan Ray Tracing的懶人包。

Github Page

fallingcat/ComputeRayTracingSamples


About Midnight Coder