全局光照技术(二)

Direction Occlusion

环境遮挡:不对任何方向建模 下图 a,b收到的环境颜色irradiance一样

Bent Normal:有效将余lobe移动向天空中未被遮蔽的部分,但是积分范围却没有限制

Direction Occlusion:可以调整光照积分域。

从上图可知道,尽管上一节所说的环境遮挡可以大大提高图像视觉质量,但他也是一种大大的简化,使用bent normal可以有效的将lobe英东向天空中未被遮挡的部分,但是他对积分范围没有收到限制,这不足以提供准确的结果,定向的方法能够正确地消除来自的天空遮挡部分的光线。

方法:

1 预先计算的方向遮挡:

把未被遮挡的方向建模名为一个椭圆形或者时圆形孔径,而不是存储某些给定方向的地平角(horizon angle)。担当未被遮挡的方向不是椭圆形,可能导致不正确的阴影。

2 方向遮挡的动态计算:

Ren等人的球谐指数法。

Sloan等人的屏幕空间法产生球谐向量形式的可见性。

Crassin,Wright圆锥跟踪法。

lwanicki使用圆锥跟踪。

Klehm等人使用Zbuffer数据计算屏幕空间bent锥。

3 有方向遮挡的着色:

当我们为不同的方向遮挡提供着色方案时,我们提供的着色公式不能是单一的,具体方案取决于我们想要达到的具体效果。在反射方程中:

我们用最简单操作就是对可见性函数对点光源进行投影。由于是点光源,默认光照各项同性的。可以得到:

我们吧上面的方程定义为计算材质对未遮挡光的相应,并将结果乘以可见性函数的值。

我们可以对区域光源的照明进行类似的操作,In this case, Li除了在光线所面对的立体角内,在任何地方都等于零,在立体角内的Li等于光源发出的radiance,我们将它称为Ll,并假设他在光的立体角上是恒定的,我们可以用光的立体角的积分Ωl代替整个球面的积分Ω:

为了确定遮挡光照,我们必须计算可见性函数乘以余弦除以光线所覆盖的立体角积分。Lambertian推到了一个计算球面多边形的余弦积分公式,然而,当使用bent锥,剪切会产生圆形段,我们就不能使用Lambert公式了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值