辐射度量学
WHY
Whitted Style的光线追踪用的也是Blinn-Phong模型做的光照着色,而这个模型没有考虑到光照是如何衰减的。
What
辐射度量学可以精确得到光照的结果
- 精确描述光和物体表面的作用
- 基于几何光学(不考虑波动性)
- 定义了Radiant flux、intensity、irradiance、radiance。
定义

Radiant flux可以类比为功率、亮度、光通量。

Radiant Intensity
立体角为球面面积除以半径的平方。球面有4pai立体角。
单位立体角

各项同性的点光源

Irradiance

面积必须与光线垂直。随着距离增加,Irradiance按照距离平方衰减。
Radiance
BRDF(Bidirectional Reflectance Distribution Function)
可以将所有入射方向的光积分,通过BRDF计算出某一个出射方向的能量。


考虑平面本身也要发射能量,得到渲染方程。
反射方程
为了计算方便,Wi作为入射角是假定从平面向外的(如果朝内,法线和wi是钝角),就是和入射角成反向,同理,为了计算别的平面的反射角度wi要取负号,表示朝内。


全局光照就是直接光照(一次弹射)和间接光照的总和。光栅化只能做直接光照(将物体投影到屏幕上)和直接看到从光源的光(将光源投影到屏幕上)。
蒙特卡洛积分

Whitted-Style Ray Tracing存在的问题
- 只考虑镜面反射和折射
- 在漫反射表面停止反射
仅仅考虑直接光照的路径追踪
递归的路径追踪

会产生指数爆照问题。解决方法是将底数变为1。

递归必须需要终止条件,但设置终止条件会使能量损失,所以引入俄罗斯轮盘赌博。


采样光源:提高渲染效率,降低SSP
这种算法会出现低采样率时走样问题,原因是均匀采样的情况下,许多光线产生了浪费,所以需要变换积分区域,对光源进行采样。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AbZtDJta-1648990576253)(https://cdn.jsdelivr.net/gh/code-gx/photo/202204011738532.png)]
把一个像素的颜色贡献分为两部分:
- 来自光源直接光,按照上面的方法对光源进行采样,没有多次弹射并且不需要RR。
- 来自周围物体的间接光,用RR来解决多次弹射问题。

对光源采样时,如果采样点和光源之间被挡住,就不计算该光线。### 辐射度量学
WHY
Whitted Style的光线追踪用的也是Blinn-Phong模型做的光照着色,而这个模型没有考虑到光照是如何衰减的。
What
辐射度量学可以精确得到光照的结果
- 精确描述光和物体表面的作用
- 基于几何光学(不考虑波动性)
- 定义了Radiant flux、intensity、irradiance、radiance。
定义

Radiant flux可以类比为功率、亮度、光通量。

Radiant Intensity
立体角为球面面积除以半径的平方。球面有4pai立体角。
单位立体角

各项同性的点光源

Irradiance

面积必须与光线垂直。随着距离增加,Irradiance按照距离平方衰减。
Radiance
BRDF(Bidirectional Reflectance Distribution Function)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rtDQjhRY-1648990576698)(https://cdn.jsdelivr.net/gh/code-gx/photo/202203291605109.png)]
可以将所有入射方向的光积分,通过BRDF计算出某一个出射方向的能量。


考虑平面本身也要发射能量,得到渲染方程。
反射方程
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9WG09QKW-1648990576698)(https://cdn.jsdelivr.net/gh/code-gx/photo/202203291653269.png)]
为了计算方便,Wi作为入射角是假定从平面向外的(如果朝内,法线和wi是钝角),就是和入射角成反向,同理,为了计算别的平面的反射角度wi要取负号,表示朝内。


全局光照就是直接光照(一次弹射)和间接光照的总和。光栅化只能做直接光照(将物体投影到屏幕上)和直接看到从光源的光(将光源投影到屏幕上)。
蒙特卡洛积分

Whitted-Style Ray Tracing存在的问题
- 只考虑镜面反射和折射
- 在漫反射表面停止反射
仅仅考虑直接光照的路径追踪
递归的路径追踪

会产生指数爆照问题。解决方法是将底数变为1。

递归必须需要终止条件,但设置终止条件会使能量损失,所以引入俄罗斯轮盘赌博。


采样光源:提高渲染效率,降低SSP
这种算法会出现低采样率时走样问题,原因是均匀采样的情况下,许多光线产生了浪费,所以需要变换积分区域,对光源进行采样。
把一个像素的颜色贡献分为两部分:
- 来自光源直接光,按照上面的方法对光源进行采样,没有多次弹射并且不需要RR。
- 来自周围物体的间接光,用RR来解决多次弹射问题。

对光源采样时,如果采样点和光源之间被挡住,就不计算该光线。