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

 
 
 

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

注意

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

注意

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)新的渲染过程按钮,以创建新的渲染过程。将显示“创建渲染过程”(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 new render pass set)按钮。在 renderPassSet“属性编辑器”(Attribute Editor)中,输入渲染过程集的名称,如“照明”。
  3. 现在会在“场景过程”(Scene Passes)区域中显示“照明”(Illumination)过程。
  4. 若要为当前层渲染该过程集,请使用按钮将该渲染过程集移动到“关联的过程”(Associated Passes)区域。
  5. 选择照明过程集并单击按钮。将显示“关系编辑器”(Relationship Editor)窗口,且可以看到照明过程自动与同时创建的所有过程相关联。
  6. 渲染场景。默认情况下,会将渲染图像保存到项目文件的 images\tmp 目录下的 <RenderLayer>\<camera>\<RenderPass> 中。

相关主题