概括
使用 STMap 是计算图像内像素变化的有效方法。此计算基于两个通道的组合,这两个通道根据输入图像定义结果图像中每个像素的来源。
STMap 可用于Nuke内部(和外部)的多种用途,并且了解如何在Nuke本身内创建这些目的非常重要。
本文介绍了使用表达式节点、一些简单表达式和重新格式化节点创建可自定义 STMap 的简单方法。
更多信息
STMap 是两个彩色渐变的组合,为每个像素提供 2D 空间中唯一的x和y坐标。一个斜坡定义输入图像的高度x内的像素数量,另一个斜坡定义输入图像的宽度y内的像素数量。
STMap 的用途与颜色本身无关,而是与给定的每个像素的x和y坐标有关。当两个图像组合成绿色和红色的颜色通道时,您会得到以下视觉结果:
STMap 在Nuke中有多种用途。它们可用于更改和重新对齐图像/纹理,甚至用作跟踪 2D 对象到 3D 几何体的基础。
在Nuke之外,它们可以直接烘焙为 3D 对象的纹理,也可用于关联其他应用程序和Nuke之间的镜头畸变。
工作流程
设置表达式节点
表达式节点可用于将 x 和 y 坐标绘制到图像的红色和绿色通道。
1)在节点图中创建表达式节点
2) 在分配给红色通道的第一个字段中,输入以下表达式:
x/(width-1)
3) 在分配给绿色通道的第二个字段中,输入以下表达式:
y/(height-1)
注意:除数中的-1确保图像的红色和绿色通道的范围从 (0,0) 到 (1,1),而不是 (0, 0) 到 (width-1/width, height-1/高度)。
在查看器中看到的结果将如下图所示:
注意: STMap 的分辨率由项目的分辨率驱动。这可以通过将重新格式化节点添加到表达式节点的输入来更改,如下所示:
渲染 STMap
最后一步是渲染 STMap。这将允许您将其带回Nuke ,或在第三方应用程序中使用它。
1)创建写节点
2) 在Write节点的 Properties Bin 中,选择 STMap 的文件目录,确保扩展名设置为 .exr
3) 在渲染之前,确保将数据类型值更改为 32 位浮点型
注意:我们使用 32 位深度的 EXR 文件,因为 STMap 的计算不是基于输出颜色,而是基于 EXR 文件可以容纳的像素方差量。视觉上可能没有不同,但信息上的差异非常显着,并将在结果中显示出来。
延伸阅读
有关 STMap 本身功能的更多信息,请参阅下面的在线文档:
除了上述之外,还可以通过Nuke中的CaraVR节点使用C_GenerateMap或C_STMap节点来生成 STMap。有关如何创建这些节点的更多信息可以位于此处提供的链接中:
示例文件
我们很遗憾听到
请告诉我们