多重渲染过程的示例工作流
 
 
 

该示例工作流说明如何执行下列操作:

注意

有关可用过程列表,以及当前由多重渲染过程工作流支持的着色器列表,请参见多重渲染过程

注意

mental ray 渲染器支持多重渲染过程功能。渲染 API 允许使用其他第三方渲染器和自定义渲染器,以便支持其继续前进至下一个过程。

使用渲染过程贡献贴图进行渲染

创建渲染过程贡献贴图

在该场景 (KitchenSinkModel.ma) 中,有一个名为 KitchenSink 的渲染层,其中包含两个对象(一个水槽和一个碗)以及一盏灯。会将一个“Phong”着色器应用于水槽,并会将一个“Lambert”着色器应用于碗。

  1. 在场景视图中选择碗和灯。在“渲染层编辑器”(Render Layer Editor)中,在层上单击鼠标右键,然后选择“过程贡献贴图 > 创建过程贡献贴图并添加选定对象”(Pass Contribution Maps > Create Pass Contribution Map and Add Selected)

    会创建 passContributionMap1。双击它,然后将其名称更改为 Bowl。

  2. 在场景视图中选择水槽和灯。在“渲染层编辑器”(Render Layer Editor)中,在层上单击鼠标右键,然后选择“过程贡献贴图 > 创建过程贡献贴图并添加选定对象”(Pass Contribution Maps > Create Pass Contribution Map and Add Selected)。将其名称更改为 Sink。

为每个渲染过程贡献贴图创建渲染过程

  1. 打开“渲染设置”(Render Settings)窗口,然后选择 mental ray 作为渲染器。
  2. 首先,为水槽渲染过程贡献贴图创建渲染过程。选择“过程”(Passes)选项卡,然后单击“创建新的渲染过程”按钮,以创建新的渲染过程。将显示“创建渲染过程”(Create Render Passes)窗口。
  3. 从下列渲染过程中选择多个渲染过程:“无阴影漫反射”(Diffuse Without Shadows)“反射”(Reflection)“镜面反射”(Specular)“阴影”(Shadow)。在“过程前缀”(Pass Prefix)字段中,输入 Sink。单击“创建并关闭”(Create and Close)按钮。会创建下列过程:SinkDiffuseNoShadow、SinkReflection、SinkShadow、SinkSpecular。这些过程显示在“场景过程”(Scene Passes)区域中。
  4. 为碗渲染过程贡献贴图创建渲染过程。选择“过程”(Passes)选项卡,然后单击“创建新的渲染过程” 按钮,以创建新的渲染过程。将显示“创建渲染过程”(Create Render Passes)窗口。选择“漫反射”(Diffuse)渲染过程,在“过程前缀”(Pass Prefix)字段中输入 Bowl,然后单击“创建并关闭”(Create and Close)。BowlDiffuse 过程将显示在“场景过程”区域中。
  5. 必须首先使这些渲染过程可用于当前层,然后才能向每个过程贡献贴图应用这些过程。使用箭头按钮将这些过程移动到“关联的过程”(Associated Passes)区域。
  6. 使用“关联的过程贡献贴图”(Associated Pass Contribution Map)下拉列表,选择要为其选择渲染过程的过程贡献贴图,例如 Sink。
  7. 使用箭头按钮将 SinkDiffuseNoShadow、SinkReflection、SinkShadow 和 SinkSpecular 过程移动到“贡献贴图所使用的过程”(Passes Used by Contribution Map)区域中。
  8. 重复该过程以将 BowlDiffuse 过程添加到 Bowl 过程贡献贴图的“贡献贴图所使用的过程”(Passes Used by Contribution Map)区域中。
  9. 渲染场景。会将渲染图像保存到项目文件的图像目录中,如下所述。

为渲染图像创建子文件夹和文件名

默认情况下,会将渲染图像保存到项目文件的 images\tmp 目录下的子目录 <RenderLayer>\<camera>\<RenderPass> 中。图像文件名 <scene>.iff 用于每个渲染图像。

注意

会将渲染过程的所有图像输出保存到项目文件的 images\tmp 目录中,除非运行批渲染。运行批渲染会将渲染过程输出保存到 images 目录中。

注意

如果渲染使用“渲染视图”(Render View)窗口,那么还可以通过选择“文件 > 加载渲染过程”(File > Load Render Pass)来预览渲染过程输出。

可能会需要为渲染图像自定义子目录和文件名。例如,可能不需要为每个层和摄影机创建文件夹。使用“文件名前缀”(File name prefix)属性中提供的标记,该属性位于“渲染设置: 公用”选项卡中的“文件输出”(File Output)区域下。然后使用分隔符(如“_”或“-”)结合它们。

例如,可能需要使用 <Scene>_<RenderLayer>_<RenderPass> 标记为图像创建文件名。在该示例工作流中,会产生下列图像:

注意

如果使用默认的“文件输出”(File Output)目录,Maya 会创建一个 MasterBeauty 文件夹,并将该层的默认美景过程保存到该文件夹。如果自定义“文件输出”(File Output)目录,则会为美景过程创建一个 MasterBeauty.iff 图像。

在场景中使用渲染过程集

如果场景中包含许多渲染过程,则可能需要将它们分组到渲染过程集中。可以在创建渲染过程的同时,使用“创建渲染过程”(Create Render Passes)窗口创建渲染过程集。

  1. “创建渲染过程”(Create Render Passes)窗口中,选择要包括在过程集中的过程。
  2. 启用“创建过程集”(Create Pass Set)选项。输入“过程集名称”(Pass Set Name),例如 Illumination。单击“创建过程”(Create Passes)
  3. 现在会在“场景过程”(Scene Passes)区域中显示“照明”(Illumination)过程。
  4. 若要为当前层渲染该过程集,请使用箭头按钮将该渲染过程集移动到“关联的过程”(Associated Passes)区域中。
  5. 选择 Illumination 过程集,然后单击“过程集关系编辑器”(Pass Set Relationship Editor)按钮。将显示“关系编辑器”(Relationship Editor)窗口,且可以看到 Illumination 过程自动与同时创建的所有过程相关联。
  6. 渲染场景。默认情况下,会将渲染图像保存到项目文件的 images\tmp 目录下的 <RenderLayer>\<camera>\<RenderPass> 中。

相关主题