← 返回图形编程
GLSL 着色器路径追踪渲染器
基于 GLSL/OpenGL 的 GPU 加速路径追踪渲染器,支持 MIS 与 BVH
封面渲染
128spp,1303×2000,无降噪,2 分 19 秒。ACES 色调映射

角色模型来自 YYB-Era,场景模型、构图与打光由我完成。
材质
Trowbridge-Reitz 微表面镜面反射与透射
1024spp,1000×1000,无降噪。Reinhard 色调映射
| 粗糙度 0.01 | 粗糙度 0.05 | 粗糙度 0.25 |
|---|---|---|
![]() | ![]() | ![]() |
| 粗糙度 0.50 | 粗糙度 0.75 | 粗糙度 0.95 |
|---|---|---|
![]() | ![]() | ![]() |
Oren-Nayar 微表面漫反射
512spp,1000×1000,已降噪。ACES 色调映射。Oren-Nayar 模型使用 sigma = 0.8。
可以明显看到,常规的简化 Oren-Nayar 比 Lambertian 更暗——这是因为最常见的简化 Oren-Nayar 模型并不满足能量守恒,当 sigma > 0 时 A < 0,从而损失光能。下方的渲染加入了一个小的能量守恒补偿。
渲染差异最明显的部分是石头和龙的下颌——在这些掠射角下,Oren-Nayar 模型能更好地保留光能。
| Lambertian | Oren-Nayar(能量守恒修正) | Oren-Nayar |
|---|---|---|
![]() | ![]() | ![]() |
金属导体的 Fresnel 反射率
金 — eta [0.183, 0.421, 1.373],k [3.424, 2.346, 1.770]
铜 — eta [0.271, 0.677, 1.316],k [3.609, 2.625, 2.292]
铝 — eta [1.655, 0.879, 0.520],k [9.224, 6.270, 4.837]

Intel OpenImageDenoise
12spp,1303×2000。ACES 色调映射
| 原始 | 降噪后 |
|---|---|
![]() | ![]() |
环境贴图
1024spp,1000×1000,2 秒。Reinhard 色调映射
| 康奈尔盒 | 玻璃球 |
|---|---|
![]() | ![]() |
顶部的封面渲染使用的是程序化天空盒。
景深
128spp,1303×2000,无降噪。ACES 色调映射
| 无景深 | 开启景深 |
|---|---|
![]() | ![]() |
| 球面镜头 | 变形宽银幕 |
|---|---|
![]() | ![]() |
NEE 演示渲染
1024spp,1000×1000
| 面光源 | 聚光灯 | 球形光源 |
|---|---|---|
![]() | ![]() | ![]() |
| 点光源 | 粗糙镜面 | Veach 场景 |
|---|---|---|
![]() | ![]() | ![]() |





















