PrmanRender

PrmanRender(NukeXNuke Studio仅)是一个渲染节点,可与Pixar的PhotoRealisticRenderMan®Pro Server一起使用20岁或更早,以提供更好的质量渲染结果。PrmanRender是替代Nuke扫描线渲染具有渲染3D场景的附加功能。使用PrmanRender,您可以控制渲染结果中的阴影和反射等方面。

为了使用PrmanRender节点,您需要安装Pixar的RenderMan Pro Server 20岁或更早,已在您的计算机上安装并获得许可。

也可以看看扫描线渲染反射折射

输入和控制

连接类型

连接名称

功能

输入值

凸轮

可选的摄像机输入。场景是从此摄像机的角度渲染的。如果未连接摄像机输入,则PrmanRender使用默认摄像机,该摄像机位于原点并面向负Z方向。

obj / scn

要么:

连接到要渲染的对象和光源的“场景”节点,或者

3D对象或MergeGeo节点。

bg

可选的背景输入。这可用于将背景图像合成到场景中并确定输出分辨率。如果不使用,则默认为root.format要么root.proxy_format在定义Project Settings

Control (UI)

Knob (Scripting)

Default Value

功能

PrmanRender Tab

shadows

shadows

disabled

启用后,将阴影添加到渲染中。您可以使用调整阴影的参数节点的Shadows标签。

reflections

reflections

disabled

启用后,将反射添加到渲染中。您可以使用调整反射参数反射节点的Properties面板。

refractions

refractions

disabled

启用后,将折射添加到渲染中。您可以使用调整折射参数折射节点的Properties面板。

dof

dof

disabled

启用后,将景深添加到渲染中。

projection mode projection_mode render camera

在渲染期间设置投影模式:

perspective -相机前面的物体具有由相机的焦距和光圈定义的深度错觉。

orthographic -使用平行投影查看对象。

render camera -从摄像机输入中选择投影模式。

overscan

overscan

0

如果后续操作要求,则设置要渲染的超出帧左/右和顶部/底部的像素数。

ambient

ambient

0

设置全局环境光水平。

Sampling Tab

raytrace max depth

raytrace_max_depth

5

设置PrmanRender用于跟踪场景并进行渲染计算的镜面反射和折射反弹的最大数量。

pixel samples

pixel_samples

10

设置每个像素要渲染的样本数。拥有更多的样本可以提高渲染质量,但同时也会增加渲染时间。

注意:  将此值设置为1将关闭抗锯齿功能。

shading rate

shading_rate

0.5

设置基本体的明暗度计算数量。例如,阴影率为1.0指定每个像素一个阴影样本。

这个值,以及pixel samples,直接影响您的渲染时间和结果的最终质量。较低的阴影率值意味着渲染将花费更多时间,但质量会很高。另一方面,较高的值表示渲染速度更快,但最终质量将不那么理想。

filter filter Cubic

选择将像素从其原始位置重新映射到新位置时要使用的过滤算法。这样可以避免图像质量出现问题,特别是在帧的高对比度区域(如果未过滤像素并保留其原始值,则边缘可能会出现高度锯齿或锯齿状)。

Impulse -重新映射的像素保留其原始值。

Cubic -重新映射的像素会有些平滑。

Keys -重新映射的像素会得到一些平滑,再加上一点锐化(如曲线的负-y部分所示)。

Simon -重新映射的像素会得到一些平滑,再加上中等的锐化(如曲线的负-y部分所示)。

Rifman -重新映射的像素会得到一些平滑,再加上明显的锐化(如曲线的负-y部分所示)。

Mitchell -重新映射的像素会进行一些平滑处理,再加上模糊处理以隐藏像素化。

Parzen -重新映射的像素在所有滤镜中获得最大的平滑度。

Notch -重新映射的像素会得到平滑平滑(这往往会掩盖波纹)。

Lanczos4Lanczos6Sinc4 -重新映射的像素会锐化,这对于缩小图像很有用。Lanczos4提供最少的锐化和Sinc4最多。

antialiasing filter

antialiasing_filter

Box

设置用于将像素样本过滤为最终颜色的抗锯齿方法。

antialiasing filter size

antialiasing_filter_size

1

设置要使用的抗锯齿像素滤镜的大小。

motion blur samples

samples

1

设置每个像素渲染以产生运动模糊的样本数。最大值为5。

这确定了使用的3D场景的样本数,因此,对于设置速度和内存使用,尽可能低的值是最好的。如果快门周期内场景中的运动是相对线性的,则可以使用较低的值。如果运动很复杂,则可能需要向该范围的高端输入值。

如果渲染的结果显示看起来像是运动模糊样本太少的条纹或步进,请首先尝试增加“像素样本”设置。

shutter

shutter

0.5

设置运动模糊时快门保持打开状态的帧数。例如,值为0.5对应于半帧。

shutter offset shutteroffset start

此值控制快门相对于当前帧值的行为。它有四个选项:

centred -将快门对准当前帧。例如,如果将快门值设置为1且当前帧为30,则快门从第29,5帧到30,5帧保持打开状态。

start -打开当前帧的快门。例如,如果将快门值设置为1且当前帧为30,则快门从帧30到31保持打开状态。

end -在当前帧关闭快门。例如,如果将快门值设置为1且当前帧为30,则快门从第29帧到30保持打开状态。

custom -在指定的时间打开快门。在下拉菜单旁边的字段中,输入要添加到当前帧的值(以帧为单位)。要在当前帧之前打开快门,请输入一个负值。例如,值-0.5将在当前帧之前半帧打开快门。

shuttercustom
offset

shuttercustomoffset

0

如果shutter offset参数设置为custom,此参数用于通过将快门添加到当前帧来设置快门打开的时间。值以帧为单位,因此-0.5将在当前帧之前半帧打开快门。

randomize time

temporal_jitter

0

随时间增加样本分布的随机性,因此它们不会产生规则间隔的图像。值越大,样本之间的时间差越大。

shutter opening

shutter_opening

None

设置快门打开模式:

None -瞬时打开和关闭。

Linear -快门以线性间隔打开和关闭。

Bezier -根据贝塞尔曲线,快门会逐渐打开和关闭。

Shader Tab

motion vectors

output_motion_vectors_type

distance

设置要渲染的向量的类型:

off -不呈现运动矢量信息。

velocity -将每个单个像素的速度存储在运动矢量通道中。

distance -对于每个像素,存储运动矢量通道中样本之间的距离(以像素为单位)。

motion vector channels

MB_channels

forward

什么时候motion vectors设置为除off,所选向量类型将被写入该通道。

output vectors

output_shader_vectors

disabled

启用后,将输出着色器矢量以及运动矢量。

surface points

P_channel

none

什么时候output vectors启用此选项后,会将着色器矢量曲面点写入此一个或多个通道。

surface normal

N_channel

none

什么时候output vectors启用此选项后,会将着色器矢量表面法线写入该一个或多个通道。

RIB Tab

filter

ribFilter

disabled

启用后,过滤由Nuke对于RenderMan。Nuke然后调用一个名为nukescripts.renderman.filterRIB

注意:  由于为每个渲染创建了一个临时的RIB文件,因此过滤会使渲染的启动稍微慢一些。

arguments

filterArgs

none

什么时候filter启用后,请指定您的过滤器参数。该字符串通过Nuke的Python过滤器功能作为RenderMan的附加参数。如果要使用自己的过滤器,也可以更换Nuke的Python函数,并将您的参数直接传递给您自己的Python函数。

例如,将过滤器参数设置为-rif myfilter.so加载您自己的RI滤波器。

ouput

file

file

none

设置RIB转储文件的路径和名称。

小费:  对于多帧,请使用####模式。

Execute

Execute

N/A

单击以将给定序列的RIB文件转储到指定路径中file控制。

注意:  您可以使用以下命令从命令行执行-X nodeName开关。

Python Tab (These controls are for Python callbacks and can be used to have Python functions automatically called when various events happen in Nuke.)

before render

beforeRender

none

这些函数在开始执行execute()之前运行。如果它们引发异常,则渲染异常终止。

before each frame

beforeFrameRender

none

这些功能在开始渲染每个单独的帧之前运行。如果它们引发异常,则渲染异常终止。

after each frame

afterFrameRender

none

这些功能在每个帧完成渲染后运行。如果渲染异常终止,则不会调用它们。如果它们引发异常,则渲染异常终止。

after render

afterRender

none

这些功能在所有帧的渲染完成后运行。如果它们抛出错误,则渲染中止。

render progress renderProgress none 这些功能在渲染过程中运行以确定进度或失败。

分步指南

使用PrmanRender节点