使用 Radeon Rays 和 OpenCL 1.2 的 Monte-Carlo-Raytracer
特徵
- 常規路徑追蹤器
- 雙向路徑追蹤器
- 光源
- 具有可編輯場景的 GUI
- 優步材料
- 光澤反射和透射:Torrance-Sparrow Microfacet BRDF 和 BTDF 以及電介質的 Trowbridge-Reitz 分佈
- 鏡面透射
- 鏡面反射
- 朗伯反射
- 法線貼圖
- 目前使用隨機採樣器,但可以透過 asset/kernels/samplers.cl 中的#define 將其變更為 Sobol
建造
- git clone --recursive https://github.com/compix/Monte-Carlo-Raytracer.git
- CMake - 目前僅支援 Windows,需要進行少量修改才能支援 Linux。
- 在 Windows 10 上測試,使用 Visual Studio 2017 編譯(內建 CMake 支援)
相關來源
- Pharr、Matt、Wenzel Jakob 和 Greg Humphreys:基於物理的渲染:從理論到實現。摩根考夫曼,2016。
- Veach,Eric:用於光傳輸模擬的魯棒蒙特卡羅方法。編號 1610。
- Torrance、Kenneth E 和 Ephraim M Sparrow:粗糙表面的非鏡面反射理論。喬薩,57(9):1105-1114,1967。
- Trowbridge、TS 和 Karl P Reitz:光線反射粗糙表面的平均不規則性表示。
- Munshi,Aaftab:OpenCL 規格版本:1.2 文件修訂版:2012 年 19 日。
- Radeon Rays:https://www.amd.com/de/technologies/radeon-rays
- Sobol',Il'ya Meerovich:關於立方體中點的分佈和積分的近似評估。
- Morgan McGuire,電腦繪圖檔案,2017 年 7 月 (https://casual-effects.com/data)