Games101 学习笔记07

辐射度量学

WHY

Whitted Style的光线追踪用的也是Blinn-Phong模型做的光照着色,而这个模型没有考虑到光照是如何衰减的。

What

辐射度量学可以精确得到光照的结果

  • 精确描述光和物体表面的作用
  • 基于几何光学(不考虑波动性)
  • 定义了Radiant flux、intensity、irradiance、radiance。
定义
image-20220322151323496

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

image-20220322151548127

Radiant Intensity

image-20220322151816361

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

单位立体角

image-20220322152424669

各项同性的点光源

image-20220322152804552

Irradiance

image-20220329154226472

面积必须与光线垂直。随着距离增加,Irradiance按照距离平方衰减。

Radiance

image-20220329155010904

image-20220329155504895

BRDF(Bidirectional Reflectance Distribution Function)

image-20220329160547072

可以将所有入射方向的光积分,通过BRDF计算出某一个出射方向的能量。

image-20220329164713293 image-20220329164732614

考虑平面本身也要发射能量,得到渲染方程。

反射方程

image-20220329165332237

为了计算方便,Wi作为入射角是假定从平面向外的(如果朝内,法线和wi是钝角),就是和入射角成反向,同理,为了计算别的平面的反射角度wi要取负号,表示朝内。

image-20220329170822915 image-20220329170953781

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

蒙特卡洛积分

image-20220401160134471
Whitted-Style Ray Tracing存在的问题
  • 只考虑镜面反射和折射
  • 在漫反射表面停止反射

仅仅考虑直接光照的路径追踪

image-20220401165628426

递归的路径追踪

image-20220401170821143

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

image-20220401171004317

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

image-20220401172200068

image-20220401172611465
采样光源:提高渲染效率,降低SSP

这种算法会出现低采样率时走样问题,原因是均匀采样的情况下,许多光线产生了浪费,所以需要变换积分区域,对光源进行采样。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AbZtDJta-1648990576253)(https://cdn.jsdelivr.net/gh/code-gx/photo/202204011738532.png)]

image-20220401174215408

把一个像素的颜色贡献分为两部分:

  • 来自光源直接光,按照上面的方法对光源进行采样,没有多次弹射并且不需要RR。
  • 来自周围物体的间接光,用RR来解决多次弹射问题。
image-20220401174240158

对光源采样时,如果采样点和光源之间被挡住,就不计算该光线。### 辐射度量学

WHY

Whitted Style的光线追踪用的也是Blinn-Phong模型做的光照着色,而这个模型没有考虑到光照是如何衰减的。

What

辐射度量学可以精确得到光照的结果

  • 精确描述光和物体表面的作用
  • 基于几何光学(不考虑波动性)
  • 定义了Radiant flux、intensity、irradiance、radiance。
定义
image-20220322151323496

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

image-20220322151548127

Radiant Intensity

image-20220322151816361

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

单位立体角

image-20220322152424669

各项同性的点光源

image-20220322152804552

Irradiance

image-20220329154226472

面积必须与光线垂直。随着距离增加,Irradiance按照距离平方衰减。

Radiance

image-20220329155010904

image-20220329155504895

BRDF(Bidirectional Reflectance Distribution Function)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rtDQjhRY-1648990576698)(https://cdn.jsdelivr.net/gh/code-gx/photo/202203291605109.png)]

可以将所有入射方向的光积分,通过BRDF计算出某一个出射方向的能量。

image-20220329164713293 image-20220329164732614

考虑平面本身也要发射能量,得到渲染方程。

反射方程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9WG09QKW-1648990576698)(https://cdn.jsdelivr.net/gh/code-gx/photo/202203291653269.png)]

为了计算方便,Wi作为入射角是假定从平面向外的(如果朝内,法线和wi是钝角),就是和入射角成反向,同理,为了计算别的平面的反射角度wi要取负号,表示朝内。

image-20220329170822915 image-20220329170953781

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

蒙特卡洛积分

image-20220401160134471
Whitted-Style Ray Tracing存在的问题
  • 只考虑镜面反射和折射
  • 在漫反射表面停止反射

仅仅考虑直接光照的路径追踪

image-20220401165628426

递归的路径追踪

image-20220401170821143

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

image-20220401171004317

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

image-20220401172200068

image-20220401172611465
采样光源:提高渲染效率,降低SSP

这种算法会出现低采样率时走样问题,原因是均匀采样的情况下,许多光线产生了浪费,所以需要变换积分区域,对光源进行采样。

image-20220401173812499

image-20220401174215408

把一个像素的颜色贡献分为两部分:

  • 来自光源直接光,按照上面的方法对光源进行采样,没有多次弹射并且不需要RR。
  • 来自周围物体的间接光,用RR来解决多次弹射问题。
image-20220401174240158

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值