mental ray 渲染过程工具着色器

 
 
 

使用自定义渲染过程时,可以将“writeToColorBuffer”“writeToDepthBuffer”“writeToVectorBuffer”“writeToLabelBuffer”着色器添加到着色网络中,以将数据写入自定义渲染过程节点(即帧缓冲区)。

可以通过“Hypershade”添加这些着色器。选择“创建栏”(Create bar)中的“mental Ray”并展开“杂项”(Miscellaneous)部分。选择适当的着色器,具体取决于您的输入和帧缓冲区类型。例如,“writeToColorBuffer”接收颜色为输入,并写入自定义颜色类型的帧缓冲区。

四个着色器共享属性如下所示:

帧缓冲区选项(Frame Buffer Options)

自定义颜色过程(Custom Color Pass)

从下拉列表选择要写入的渲染过程。对于“writeToColorBuffer”节点,会列出所有“自定义颜色”(Custom Color)过程;对于“writeToDepthBuffer”节点,会列出所有“自定义深度”(Custom Depth)过程,依此类推。

写入操作(Write Operation)

选择下列选项之一:“无运算”(No Operation)“相加”(Add)“相乘”(Multiply)“替换”(Replace)

计算“writeToColorBuffer”“writeToDepthBuffer”“writeToVectorBuffer”“writeToLabelBuffer”之一的明暗器时,Maya 会使用颜色输入属性并将其保存到渲染过程。多个着色器可能写入相同的渲染过程。在这种情况下,您可以选择“添加”(Add)以蒋新结果添加至渲染过程的现有内容中(其他结果可能已从其他着色器写入)。或者,如果选择“替换”(Replace),当前在渲染过程中的结果和内容将被删除,并由新结果代替。

比例因子(Scale Factor)

应用到输入的倍增因子,例如颜色或 Alpha 值。有助于合成。

求值触发器(Evaluation Trigger)

求值模式

仅通过(Pass Through Only)

将着色器用作机器转移归向。通过的信息将写入帧缓冲区。

“仅通过”(Pass Through Only)应与“求值通过”(Evaluation Pass Through)(输入和输出)一起使用,其中着色器仅在着色器调用“writeToColorBuffer”“writeToDepthBuffer”“writeToVectorBuffer”“writeToLabelBuffer”着色器之一时才将其结果写入渲染过程。这允许您在着色网络中插入着色器,并确保以正确方式求值。

已禁用(Disabled)

不会执行着色器。会阻止着色网络的求值。

始终(Always)

选择此选项以调用着色器,即使其输出为悬挂,例如,如果 outEvaluationPassThrough 输出不会导致着色引擎,或在着色网络求值期间不访问过程,则通常不计算着色器。选择“始终”(Always)显示”来确保调用着色器。且输出会写入帧缓冲区。

使用此模式时,不能保证以特定顺序求值。使用此模式的着色器应该写入不同的渲染过程。避免将多个着色器写入相同的渲染过程。

求值通过(Evaluation Pass Through)

用于触发求值的颜色输入。结果会复制到 outEvaluationPassThrough 彩色输出。

<input>

将写入帧缓冲区的值。更改取决于您选定的着色器。例如,对于“writeToColorBuffer”,会显示“颜色”(Color)“Alpha”属性。对于“writeToVectorBuffer”,会出现“向量”(Vector)属性。