一、采样的基本概念:
渲染时,Arnold需要获取每个像素的颜色值,然后组合在一起形成整个图像。 为了实现这个过程,Arnold会从摄像机发射出光线,当光线碰到对象后计算其表面信息,然后将信息返回。这个过程大致称为“采样”。根据采样值的大小,渲染质量也会有所不同。简单来说,采样值等于发射到每个像素的光线数量的平方根。
例如下图中,Camera(AA)的采样值为3,其光线实际采样数量为3²=9,即采样信息栏中显示的Camera(AA) Samples: 9。
从摄像机发射出的光线数量由Camera(AA)控制。Camera(AA)是一个全局倍增值,该值越高,渲染质量就越高,相应的渲染时间也会大幅增加。
Camera(AA)还是一个全局采样控制器,改变该值,会同步改变Diffuse(漫反射)、Specular/Glossy(高光/光泽)、Transmission/Refraction(透射/折射)等采样数量。
漫反射/光泽/折射等采样数量=Camera(AA)采样值² x 漫反射/光泽/折射等采样值²。
例如上图中:Diffuse Sample:36=Camera(AA)3² x Diffuse 2²
二、采样工作流程:
1、摄像机 Camera(AA)
准备一个C4D场景,渲染设置选择阿诺德渲染器,灯光使用阿诺德灯光。
当采样数字设置为一个很低的时候,例如:1,时在IPR实时预览窗口看到渲染出来的图片很多噪点。
提高Camera(AA)采样值到3,(可以看到相应的Diffuse、Specular ...采样数量变为9,因为Camera(AA)是全局倍增值,平方关系,之前有讲过,不多赘述)。启动IPR Window可以看到图像质量明显提高——更少的噪点,更好的GI(Global Illumination 全局光照)和反射模糊。
Camera (AA) Samples : 9 Diffuse Samples : 9 (max : 9) Specular Samples : 9 (max : 9) Transmission Samples : 9 (max : 72) Total (no lights) : 36 (max : 99)
不同Camera(AA)采样数字下,渲染出来的不同质量对比:
以上可以看出提高Camera(AA)会提高整体渲染质量,但通常情况下,并不会采用这种方式提高渲染质量。因为提高该值不仅会增加来自摄像机的光线数量,也会增加次级光线,比如光泽、漫反射的光线数量。再次强调,Camera(AA)是全局采样控制器/全局倍增值。
请务必记住,Arnold Renderer是基于真实物理世界进行计算的(光子反弹,光线衰减等)。我们的需求是消除这些噪点以提高渲染质量,所以要了解这些噪点到底来自哪里,是光泽产生的,还是漫反射产生的?然后去提高相应的采样值,以便提高图片质量,而不是提高全局的光线采样值(提高全局采样值会大幅提升渲染时间及最终文件大小)。
2、Diffuse(漫反射采样)
漫反射采样定义了场景中GI光子反弹的采样数量。
如果该值为0,场景中就只有直接照明(没有光子反弹),如果该值大于0,场景中的光线碰到对象表面后,就会沿半球状进行传播,如下图:
当提高Diffuse(漫射) 即漫反射采样后,Indirect diffuse rays(间接漫反射光线数量)就会增加,进而降低间接漫反射的噪点,提高GI光子反弹质量。例如:
Arnold会自行修正物理光照效果,所以我们只需要考虑怎样降低噪点,提高渲染质量。
为了降低噪点,我们可以提高漫反射采样值,也可以提高Camera(AA)采样值(但是这样会提高所有类型的采样数量),所以如果确定噪点来自GI光子反弹,仅需要提高漫反射采样即可。一定要有针对性的提高采样值。
请务必记住两件事:
① 漫反射的实际采样数量=Camera(AA)² x Diffuse²
② 谨慎提高采样值,这会导致渲染时间大幅增加,如果噪点过多,应逐步提高采样值。
3、Specular 镜面反射
控制在计算按镜面反射 BRDF 加权的半球形范围内累计的反射间接辐射时发射的光线数。精确的光线数是此值的平方。增加该值可减少间接镜面反射噪波(软反射/模糊反射)。请记住,镜面反射采样操作针对每个摄影机 (AA) 采样执行。因此,摄影机 (AA) 采样数和镜面反射采样数的值都较高时,往往会减慢渲染速度。
在下面的示例中,地板曲面的镜面反射值和粗糙度值均较高。在左侧的图像中,您可以看到镜面反射采样数不足,因此地板上产生了噪波。增加镜面反射采样数可获得更好的结果。
如果将镜面反射采样数和镜面反射光线深度都减小为零,此时噪波消失,则说明噪波是由镜面反射导致的。
4、Transmission 透射
控制用于模拟基于微面的透射求值的采样数。增加该值可消除透射中的任何噪波。
如果将此参数和 GI_transmission_depth 都切换为零,此时噪波消失,则说明噪波是由透射导致的。
在阿诺德渲染中传输光线如何工作的
Specular Ray Sampling and Transmission Noise 镜面反射光线采样和透射噪波
5、SSS 次表面反射采样率
该值控制将用于估算着色点某一半径内的照明的照明采样(直接和间接)数,从而计算次表面散射。值越大,产生的结果越清晰,但渲染时间也更长。
在间接镜面反射和漫反射 GI 中,预计有一些额外的噪波源自具有 SSS 的对象,特别是漫反射采样设置低于 SSS 采样设置时。为了对抗这种类型的噪波,可以尝试使用较高的摄影机设置以及较低的镜面反射、漫反射和 SSS 采样率,或者增加漫反射/镜面反射采样数。增加 SSS 采样数只会减少次表面效果在摄影机、镜面反射和透射光线中的噪波。
在以下图像中,您可以看到眼眶的较暗区域中存在噪波。增加漫反射采样数会减少这种类型的噪波。
请注意,要使 SSS 值在多个对象中扩散,例如从一个面到眼球,您需要使用“SSS 集名称”。
6、Volume Indirect 体积间接采样率
“体积间接 Volume Indirect”样品和每个光的体积样本不适用于“体积散射 Volume Samples”。为了提高“体积散射 Volume Scattering”的质量,你必须增加“体积散射 Volume Scattering”样本。控制发射以用于计算体积间接照明的采样光线数。与其他采样率控件(摄影机、灯光采样、漫反射采样等)类似,实际采样数是此值的平方,因此,将此值设置为 3 会发射 3x3=9 条光线。将其设置为 0 会禁用体积的间接照明。请注意,间接体积照明绑定到“体积”(Volume)光线深度渲染选项,因此必须至少有 1 个体积反弹才能计算间接照明。
“体积间接”采样数和逐灯光“体积采样数”不适用于“大气体积”。要提高“大气体积”的质量,必须增加“大气体积”采样数。
Lock Sampling Pattern: 锁定采样模式 常用于渲染动画。 锁定 AA_seed,以使采样噪波不会随着帧编号而更改(避免胶片颗粒效果)。
Indirect Specular Blur 间接高光模糊 设置间接镜面反射模糊以减少焦散噪波。设置为 0 可获得最精确的渲染,但渲染中存在噪波;增大该值可模糊焦散,减少噪波。
SSS Use Autobump在 SSS 中使用自动凹凸(Use Autobump in SSS)
启用此选项将考虑置换自动凹凸对光线跟踪 BSSRDF 结果所产生的影响。这有助于在使用自动凹凸时,更准确地捕捉曲面的高频细节。请注意,启用此选项会将包含 SSS 的着色器求值操作增加两倍,从而导致渲染时间大幅增加。
2017/11/14 更新
在包含“钉形噪波”或“萤光”(一些隔离的、在帧之间来回跳动的超亮像素)的场景中,像素修剪很有用。
修剪 AA 采样率:
启用/禁用修剪。
影响多通道 AOV(Affect AOVs):
启用此控件时,AOV 的像素采样也会受到修剪。
AOV 修剪将影响每个 RGB 和 RGBA(A 分量除外)AOV。
目前还无法要求 Arnold 修剪哪些 AOV 以及保留哪些 AOV。
AA 修剪值:
启用后,此控件会将像素采样修剪到此处指定的最大值。这样可轻松对某些高动态范围效果(例如明亮的运动模糊镜面反射条纹)进行抗锯齿处理,代价是对比度会下降。此控件具体修剪的是每个像素采样的渲染器计算的最终输出值。例如,如果最大修剪值设置为 2,则任何像素的 RGB 值都不会大于 2.0、2.0、2.0
间接修剪值:
从间接灯光采样中修剪出萤光并减少噪波的阈值。这类似于 AA_sample_clamp,但将保留直接照明中的镜面反射高光。较低的值会更显著地减少噪波,但会对动态范围造成影响。
在灯光非常接近天花板/墙的漫反射场景中,这也很有用。
采样过滤:
过滤器类型:
用于将各个子像素采样平均化到最终像素颜色的过滤器类型。 其中大多数过滤器仅适用于传统用途。有关更多详细信息,请参见 Wikipedia。
下面是完整的过滤器列表:
Blackman-Harris
长方体
Catrom
最近
最远
高斯
热量贴图
Mitnet
Sinc
三角形
变化
官方建议使用高斯(宽度为 2.0)或 Blackman-Harris 过滤器。
选择像素过滤器全凭个人喜好。一些用户倾向于使用其中一种,但最终只是在模糊量方面稍有不同。越模糊就意味着锯齿越少,但代价是损失细节。
建议不要使用长方体过滤器(与禁用过滤一样)以及宽度过小的过滤器(实际上最终不执行过滤)。
请务必注意,所有渲染器都不会以相同的方式实现过滤器,即使它们具有相同的名称也是如此。
Solid Angle 中所说的高斯可能与 Photoshop 高斯或 3Delight/PRMan/MentalRay 并不相同。
实现方面可能存在细微的差异,支持无限的过滤器的中止可能存在差异等。
因此,不要假定过滤知道如何逐字从一个渲染器传递到另一个渲染器。
但是,Solid Angle 已尝试从 RenderMan 复制标准过滤器。
默认设置高斯 2.0 比其他过滤器略微模糊一些,但只要将其宽度从 2.0 减小到 1.8-1.9 就能增加清晰度。
Catrom 过滤器是几个具有负权重的过滤器之一,因此可能会在渲染到非钳制浮点格式时带来麻烦。
选择的像素过滤器应该不会对渲染时间产生影响。
能够对渲染时间造成细微影响的是过滤器宽度;如果宽度过大,则必须在过滤每个像素时考虑许多子像素采样。
例如,与 2 个像素的高斯过滤器相比,Catrom 过滤器的硬编码宽度为 4 个像素,这可能会使渲染时间略有增加。
如果渲染的清晰度至关重要,则应确保将 options.texture_max_sharpen 设置为 1.5
过滤器宽度:
子像素采样平均化过滤器的宽度(以像素为单位)。对于圆形对称的过滤器,其宽度是过滤器支持的直径。
评论(0)