Loading
0

如何去除corona渲染里的噪点

很多时候我们都会被渲染图里的大量细小的噪点所烦恼,这个问题是所有采用实时光线跟踪的渲染器的通病,尤其在渲染测试阶段尤甚。有些时候连最后的大图高参数渲染,进过几百遍后还是不能去除,这可能是由于你的渲染或者场景设置出了问题。不过cr本身自带了一个降噪的选项,通过很轻微的模糊来去掉那些细密的噪点,不过除此之外,你的场景和设置也要确保没有问题。
为了可以更好的去除这些噪点,你需要了解哪些不好的作图习惯会产生这些烦人的噪点:

错误的材质设置:

这类噪点的问题往往集中在某一个物体或者采用了某种材质的物体上,是局部的。产生这个问题的主要因素有:

1.不真实的albedo(反照率)

你可以通过 CShading_Albedo渲染通道检查你的场景里是否存在不真实的反照率的物体,红色即为不真实的albedo,灰色代表正常的albedo。

2.错误的玻璃材质

corona里有两种玻璃的种类,在做类似玻璃窗,灯泡的时候,要选择Thin (no refraction),而在制作类似液体,玻璃制品等带有吸光属性的材质时,不要勾选该选项。

3.滥用自发光材质

用这类材质打出的光具有很多的噪点

错误的灯光设置:

该类噪点一般集中出现在光与影交汇的边缘部分或者阴影里。产生这个问题的主要因素有:

1.窗户太小

此时这种情况要加天光入口,这样能提高室内的光线,降低噪点,下图里左侧是不加入口的,右侧是加了以后的。

在添加入口的时候,需要注意的是,即便是渲染里看不到的窗户也要加。加的时候要尽量贴合窗口的开口。

2.灯光细分不够

你可以通过添加CESSENTIAL_Direct和CESSENTIAL_Indirect这两个渲染通道,来检查到底是直接光还是间接光产生了噪点,是否需要提高细分值,下图里是CESSENTIAL_Direct通道,可以看到有噪点。

那么你需要增加下图里设置(默认是2,不建议加大到超过4的数值):

下图里是CESSENTIAL_Indirect通道,可以看到有噪点。

那么你需要增加下图里设置(默认是16,不建议加大到超过64的数值):

3.散焦

可以适当的降低这个效果的强度来缓解噪点

4.太多的灯光

尽量使用高效的灯光种类来模拟场景里的灯

5.滥用自发光材质

用这类材质打出的光具有很多的噪点

错误的渲染设置:

该类噪点一般出现在整个渲染里,或者集中出现在某一直接光照区域或者某一间接光照区域里。产生这个问题的主要因素有:

1. max sample intensity给的太高

2.GI vs. AA Balance或者Light Samples Multiplier这两个数值太高或者太低(建议默认)

渲染里产生白色亮斑

产生该类亮斑的因素可能是你的模型物体没有厚度,只要给了厚度,就能解决。

由抗锯齿和过滤方式引起的噪点

假如你看到边缘产生很多锯齿或者硬边,尤其是靠近灯光,或者窗口的地方尤其明显,那么你需要增加一下参数的数值:

Highlight compression

默认是1,提高到10可以解决硬边问题

你还可以勾选Sharpnening/Bluring来去除锯齿和噪点

改用box过滤方式能解决锯齿严重的问题

由相机引起的噪点:DOF或者动态模糊效果均会产生噪点。除了以上这些,还有一些现实物理上的现象会产生噪点,比如:
1.草地,叶子等小物体上的反射
2小物体内部的折射
3.复杂的贴图类别,尤其是凹凸和置换贴图
4.莫尔云纹

最后,你还能提高highlight clamping的参数