物理天空的太阳导致出现高亮杂点
此场景由一个船模型和一个表示海面的平面组成。两个模型都指定了标准曲面着色器。从上图中可以看到,此场景中有许多“高亮杂点”。在这种情况下,它们是由物理天空着色器中连接到天穹灯光的明亮太阳圆盘引起的。单纯增加“渲染设置”(Render Settings)中的采样数,很难去除这种噪波。但是,有几种方法可以克服这种噪波。下面我们来介绍其中一些方法。
[pay point="2"]
AOV 图像
我们立刻就能知道它们来自两个地方:
船的着色器,它有一些镜面反射度。
海面的着色器,它也有一些镜面反射度。
在渲染这些 AOV 时,可以清楚地看到高亮杂点:
镜面反射粗糙度
在某些情况下,增大镜面反射的“粗糙度”(Roughness)可帮助减少高亮杂点,因为这实际上是创建了一个更大、更柔和的镜面反射高光。增大指定给船的标准曲面着色器的镜面反射“粗糙度”(Roughness)可以减少高亮杂点的数量。但是,在本例中,使用这种方法后仍然有一些明显的高亮杂点。
镜面反射采样数
由于海面着色器的表面几乎就像镜面一样,因此会有极高的镜面反射值从太阳反射到镜面反射的海面上。这些高镜面反射值很难采样,因此在这种情况下,增大镜面反射采样数无助于消除高亮杂点。
光线切换
更好的方法是使用光线切换着色器为镜面反射和漫反射光线指定一个更简单的着色器。
为船指定一个光线切换着色器。
将一个标准曲面着色器连接到该光线切换着色器的漫反射和镜面反射光线。确保将镜面反射的“权重”(Weight)设置为 0。这将强制镜面反射和漫反射光线不计算着色器的镜面反射组件,而这也是产生高亮杂点的源头。
将船的标准曲面着色器(连同镜面反射的“权重”(Weight))连接到其余属性(“摄影机”(Camera)、“镜面反射”(Specular Reflection)、“透射”(Transmission)和“阴影”(Shadow))。
现在观察 AOV,会发现高亮杂点已经不见了:
区间限定采样值
另一种方法是区间限定场景中像素的输出值。此控制选项会将场景中所有着色器的像素采样数区间限定到指定的最大值。
下面的图像显示了区间限定操作对高亮杂点产生的效果。值为 1 时,可完全消除高亮杂点。但这样也会删除渲染的全部动态范围。
.ass 文件位于此处。
[/pay]
还是没看懂