Q100457:如何使用单个 Write 节点渲染多个 Switch 输入

关注

概括

本文介绍如何将 Switch 节点与单个 Write 节点结合使用以在Nuke脚本中输出不同的结果。

开关节点的作用是在各种输入之间进行交替。当用作 Write 节点的输入时,它可以允许脚本通过使用帧调用各个输入来呈现多个结果。


更多信息

可以在 Switch 节点的“which”旋钮中使用表达式,对每个可用输入的帧进行排序,如下例所示。

该脚本对于从要一次渲染的脚本输出多个结果可能很有用。例如,假设序列中有 3 个图像出现得太快。您可以使用此切换节点过程来增加图像的帧数,从而通过添加更多帧来减慢序列的速度。

例子: 

在单个 Switch 上渲染 3 个输入,每个输入 10 帧

  1. 在节点图中,创建一个 Switch 节点。
  2. 添加 3 个常量节点。
  3. 将每个节点的颜色值更改为红色、绿色和蓝色,如下所示。

  1. 将 Constant 节点连接到 Switch 节点的输入。现在,这些连接应分别显示为(红色 - 0、绿色 - 1、蓝色 - 2)。

  1. 双击 Switch 节点以打开属性箱。
  2. 右键单击“which”旋钮并选择 添加表情...
  3. 将以下代码添加到“表达式”字段,然后按“确定”确认: root.frame()%30/10



  4. 添加一个 Write 节点并将其连接到 Switch节点。
  5. 打开Write节点的Properties Bin,设置文件路径,渲染指定目录下的文件。
  6. 单击“渲染”并查看渲染提示。
  7. 将帧范围设置为0-29,然后单击“确定”开始渲染。
  8. 查看输出文件夹并观察创建的图像。

通过上述渲染,单个 Write 节点应该输出 3 种颜色,每种颜色 10 帧,如以下屏幕截图所示:




补充笔记:

  • 您可以使用此过程一次渲染多个输入,并按 Switch 的“which”字段中的表达式对帧进行排序。从上面的示例中,可以扩展root.frame()%30/10的表达式,以便可以访问许多输入。您也可以使用表达式frame%30/10来获得相同的结果。

  • 如果您只想每次渲染 1 帧,则可以使用如下表达式:每 3 个输入root.frame()%3 。此外,如果您希望每次渲染 3 帧,则可以使用表达式root.frame()%9/3

注意:表达式%3将随每个输入而变化,以相对于可用输入的最大数量。 (即%4使用 4 个输入, %5使用 5 个输入,等等)请查看下面的进一步阅读部分,了解有关使用百分比符号用作模数数学表达式的更多信息。


延伸阅读

要查看有关 Switch 节点的更多信息,请访问Switch 参数文档。

请查看有关表达式的文档,了解表达式在Nuke中的工作原理。

有关模数数学 (%) 表达式的更多信息,请访问:https: //en.wikipedia.org/wiki/ Modulo_operation

    我们很遗憾听到

    请告诉我们