Houdini 中文帮助文档

渲染质量和速度

除了下面的控制,Mantra也给你一些用于体积渲染质量的控制。查看渲染体积,获取用于体积的特定信息。

 

General quality controls

在Mantra节点的 Properties > Sampling 子选项卡上的参数,是用于增加质量的最重要的参数(或降低质量,加速渲染)。

Properties > Sampling > Pixel samples (像素采样)参数是一个控制mantra渲染的全局的底线质量。此是所发射的用于着色每像素的最小光线数量。增加此值,例如从 3×3 到 5×5,会增加渲染的整体质量。

注:该属性值应当成对设置,如3×3,4×4,6×6,12×12。

像素采样的上限是12×12,可用于有置换的曲面,非常精细的细节,运动模糊,以及景深。否则,通常5×5或6×6 就足够了。

设置像素采样值足够高可用解决图像中一些小的细节,还可以开启图像的抗锯齿。

要使Mantra循环处理,可发射额外的光线来获取着色采样点(如果需要的话)知道变化情况小于或等于所允许的噪波级别,或直到达到了最大光线采样数量。可给有问题的区域开启最大光线采样数量。

你可以将直接或间接光线采样导出成一个额外的图像通道。此可以让你识别图像的迟钝区域。

你可以添加sampling properties(采样对象,是一个属性值)到一个物体上,来获取分离的每物体像素设置。此可以让你该单个黑色,或有问题的区域制定非常高的光线采样值,而非全局的增加像素采样。记住,像素采样不可以基于每物体方式被改变,只有光线采样才可以。

你甚至可以在材质中使用Properties VOP来基于每Primitive方式指定采样对象,并使用一个Material surface 节点将材质指定给一个Primitive对象。例如,如果你有一个汽车物体(其该快速运动的车轮使用一个SOP级别的动画),你可以只给车轮多边形指定更高级别的像素采样值。

Properties对象 > Shading 着色> Shading quality multiplier (着色质量倍增器)控制着精细的数量。在PRB和光线跟踪中,此可以增加每个精细几何体细节的保真度。在micropolygon渲染中,此可以增加着色精度。

你可以增加mantra节点的 Properties > Shading (着色)子选项卡上的限制来增加材质可能发射的最大光线数量。通常,此会增加着色质量。

要获取自发光效果(让灯光反弹到黑暗区域),可添加一个间接光,并开启 Diffuse limit(漫反射限制)参数。此允许有更多的漫反射反弹,增加了真实度。但是,设置漫反射限制值大于4时,通常会产生削弱的效果。

对于PBR渲染,你可以增加Properties > PBR > Min reflect ratio (最小反射率)来在暗部区域发射更多光线。如果你使用PBR,你应当在增加漫反射限制参数前,试着增加该值,因为它更高效。你应该让该数值小于0.5.

 

Decreasing PBR noise

在mantra渲染中,推荐使用基于物体的PBR渲染。查看基于物理的渲染,获取更多信息。

尽管PBR会可给你阴影,反射,自发光以及其它一些效果,它的缺点是会产生一些随机性的噪点。即使是统一化的着色曲面也会在不同的像素之间产生微妙的变化。

避免基于低精度的测试渲染来判断PBR的噪点。在640×400尺寸上看起来非常差的同样数量的噪点,在2K尺寸上可能不容易被注意到。记住默认的Noise level (噪波级别)是0.05,而模拟电影颗粒的通常会是0.08范围的噪波级别。

在Manta渲染中,有两个减少噪点的主要控制。像素采样和噪波级别参数(在 Properties对象 》Sampling采样选项卡上)

正如上面解释的,像素采样是一个全局的控制。增加它,会增加渲染中所有种类的采样值的数量。增加它会减少噪点,但是你应当使用它来设置精确度(重新计算几何体),然后使用 Noise level (噪波级别)参数专门控制噪波。

减少噪波级别会降低噪波级别。它会强制Mantra一直采样(即一直发射光线)直到图像中的变化小于此值,或达到最大光线采样的次数。

此会在问题区域增加渲染时间(和全局相比)。它对黑色区域,如接触面处的有很多噪波的阴影,有一定的帮助。但是,减少噪波级别会使渲染变慢。

!!可以先测试渲染,然后再增加像素采样(调节精度),在试着调节噪波级别(减少噪波),不要把所有原因都归结于像素采样上,模型布线也很重要。

如果你在PBR渲染中有很亮的闪烁,试着减少 Properties > PBR 子选项卡中的Color limit(色彩限制)参数。此会减少在系统中允许的最大光线数量。

记住,你可以添加属性到物体上(甚至是Primitive上),用于给这些对象一个自定义的数值。例如,你可以给一些重要的物体设置一个较低的噪波级别。

我们建议你在线性色彩空间中工作(gamma==2.2)。此会使噪点更不可见。

 

Managing memory

使用程序材质,如 Mantra Delayed Load 和 Alembic Geometry,在渲染时使用代理几何体替换复杂的几何体。以 mantra archive 格式或 Alembic格式渲染完整分辨率的几何体,可以允许Mantra按要求一次加载部分几何体文件。

当在有不同内存的计算机上渲染时(如,一个新旧混合的计算机),你可以设置 Properties > Render > Cache limit (缓存限制)为物理内存的百分比,而非固定的大小。

Micropolygon渲染方式:Properties > Render > Tile size (块大小)参数默认是非常低的,可以避免渲染器使用大数量的内存。Houdini会一次渲染一个块区域,并扔掉块之间每块的结构来清空内存。因此,如果你有很多内存,你可以增加块大小来使用更多的内存,加快渲染。(如果机器有很多内存,你可以让该值等于线程数值)此在光线跟踪或PBR渲染中,不会有多少影响。

 

Optimization tips

默认,Houdini使用所有处理器来加速渲染时间。如果你不想使用所有处理器,你可以关闭渲染节点的Properties》Render子选项卡上的“使用最大处理器数量”选项。一旦关闭该项,你可以设置线程数量,指定要使用多少处理器。

降低体积质量(在Mantra渲染节点的Properties > Sampling 子选项卡上)加速渲染,但是会降低Mantra重计算体积中精细细节的能力。

如果你正使用景深,或运动模糊,你可以改变Motion Factor (运动因子)数值,其坐落于Mantra Output节点的 Properties 》Sampling子选项卡上。此参数会动态的控制着色质量。取决于景深和运动模糊的级别,你可以减少着色质量,这样就会使用更少的内存,以及可以加快渲染时间。

使用micropolygon渲染方式,每个材质的调用会在所有照明当前体积中的多边形的光线间循环,限制要查找的光线的数量会相应的减少渲染时间。

另外有较少的生成或使用深度阴影贴图的灯光,也会加速渲染时间。深度阴影可以给你深度信息,因此你可能只想要一个或两个开启该选项的灯光,而其余灯光不使用阴影。

给你的体积对象使用工具架上的Environment Light (环境光)会减慢你的体积渲染,因为每个被着色的多边形会导致产生可怕的光线(光线跟踪闭塞的环境时会产生)。手动控制灯光可以给你更多的控制,更少的花费。

对于只影响渲染场景部分区域的灯光,可以通过企业灯光物体上的Active Radius (激活半径)参数,且设置灯光的最大影响半径来加速渲染。当材质超出有效半径时,它们会忽略光源,增强了渲染的性能。此选项可以特定的用于含有很多小的光源,如带有很多户外街灯的场景。

当你渲染一个带有一定透明数量的几何体时,你可以使用opacity limit (不透明度限制)参数来终止当前光线(的传递)(如果达到了不透明于阈值的话)。Opacity Limit (不透明限制参数坐落于)mantra output node节点的 Properties 》Render子选项卡中。

如果渲染的动画中有闪烁,这是因为体积中不透明阈值不断发生了变化,特别是体积对象像烟雾那样缭绕和透明。

通过改变 Opacity Limit参数,你只可以减少 1-5%的渲染时间。默认值已经非常苛刻了,因此要非常小心的避免添加不想要的效果。

Mantra会专门给完全不透明的材质优化渲染的性能(光线跟踪和micropolygo渲染方式)。要增强渲染性能,确保不透明的材质要么给opacity(Of)Vex变量指定了一个恒定的{1,1,1} 值,要么材质参数的透明参数被禁用了。

使用速度运动模糊,而非变形运动模糊可以减少IFD的生成时间和文件大小。

点击分享到: