Houdini 中文帮助文档

渲染额外的颜色通道

Overview

你可以在包含额外的颜色面(也叫深度栅格),这些颜色通道包含着代表VEX全局变量的图像,或从曲面/雾材质上导出的变量/参数。

你甚至可以每灯光方式输出额外的颜色面(如果在一个照明循环中指定导出的变量)。

当渲染为一个pic(Houdini的图像格式)或exr(OpenEXR)格式图像,你可以在同样的多个颜色面中包含额外的颜色面。你也可以指定将额外的颜色面放入不同的文件中(或将多个颜色面放在分离文件中)。

Examples

例如,你可以导出用于每个像素的全局变量N(曲面法线)到一个图像上。

被渲染的颜色面:是从顶部开始被照亮的圆环。 %image_alt%
法线面,以颜色方式显示曲面的法线。 %image_alt%

你可以在MPlay中,使用工具栏下,左侧的弹出菜单查看额外的颜色通道。

另外一个例子:Houdini的基本曲面材质会导出一个名为diffuse_color_noshading的变量,其包含着在照明前材质漫反射颜色的贡献值。此在合成中可能是一个非常有用的信息。

颜色面:从各个角度照明的圆环,带有顶点颜色。 %image_alt%
diffuse_color_noshading 颜色通道显示了在照明和阴影前,曲面材质的原始颜色贡献值。 %image_alt%

 

How to

To… Do this
设置一个渲染节点来导出额外的颜色通道 选择Mantra的渲染输出节点。

在参数编辑器中,点击属性选项卡,然后点击输出子选项卡。

向下滑动到额外颜色通道参数,点击旁边的加号按钮,添加一个新的颜色通道。

你可以通过增加额外图像颜色面参数来添加很多你需要的颜色通道。查看下面的,获取如何设置颜色面参数。

输出一个全局或导出变量。 用上面方式创建一个额外的颜色面。

点击VEX变量参数右侧的弹出菜单按钮,选择一个变量。

输出一个材质变量 对于VOP网络,设置一个用于变量的Bind Export node节点,并设置输出参数为“总是”方式。对于VEX节点,将变量标记为要被导出的即可。

用上面方式创建一个额外的颜色面。

在Mantra渲染节点的额外颜色面参数上,设置VEX变量参数为你要导出的参数名。

输出一个每灯光的变量 在渲染节点上,设置灯光导出参数为“为每个灯光导出变量”,它会创建相应的每灯光输出数据。

如果你只想要一个灯光,你可以在mantra输出驱动节点的物体选项卡中设置“Solo Light”参数为想要的灯光。

Parameters

Extra Image Planes 可创建任意数量的颜色通道。如果初始的图像格式支持多图像通道,通道名会用于定义深度栅格颜色面的名称。如果初始的输出设备不支持多通道颜色,每个图像通道就会被输出到单个文件中,且通道名会定义文件名。支持多通道颜色面的格式有OpenEXR,Houdini的pic。
Image Plane 颜色面(通道,就像法线通道这样的概率)的名称。
VEX Variable 要输出到颜色平面的中的变量名。变量名必须是全局变量,或导出的参数(如法线,点速度)。

当输出法线N变量时,它的数值可能不会被规格化,这样会导致要么非常小,要么非常大的数值。

VEX Type 变量的校正类型必须也被指定。
Channel Name 用于将变量数据输出到输出文件中的通道名(如果文件格式支持多通道)。保留此区域空白,会使用VEX变量名作为通道名。
Different File 开启此参数旁边的勾选框,会将数据输出到一个文件中,而非渲染的图像中。
Quantize 用于输出的存储方式。
Sample Filter
Opacity Filtering 透明的曲面会使用Of合成。
Closest Surface 只有曲面附近的数值会被输出,不会考虑曲面的不透明度。
Pixel Filter 指定用合并子像素采样质量(用于给单个像素生成一个数值)的过滤。
Gamma 指定用于图像的Gamma校正。
Gain 在栅格化前,每个颜色值会被增益值所乘。
Dither 所运用的抖动数量。抖动可以作为量化步幅的分数值(如,0.5会使用量化步幅的一半)。对于浮点的输出胡忽略此项。
White Point 在量化过程中会使用图像的白点。
Export variable for each component 启用每元素导出通道方式(用于支持该特性的变量)。当启用时,会产生多个通道平面—–每个的vm_components 都会在ROP上被指定。每元素导出方式可以配合每灯光导出使用,来基于每元素或每灯光方式将照明元素拆分。
Light Exports 控制是否会进行灯光导出。
Export variable for each light 给每个匹配该标准(由Light Mask 和 Light Selection参数定义)的灯光创建一个分离的深度栅格面。
Merge all lights into single channel 创建单个深度栅格通道,存储着所有用于灯光(这些灯光必须匹配由Light Mask 和Light Selection参数定义的标准)的导出变量总和。
Light Mask 按名称/集的灯光对象的一个列表。
Light Selection 按种类标签的一个灯光对象列表(查看灯光上的种类参数)。

Exporting components as separate image planes

mantra节点的输出选项卡有一个“导出元素”参数。此是一个用空格分隔的元素名列表。材质中,元素是使用生成BSDF的VOPs上的标签参数来命名的。在Houdini中的这些材质会使用这些元素名,如漫反射,反射,coat(表面覆盖)。

当你添加了一个额外颜色面时,在VEX变量旁边的弹出菜单中,你可以给每元素类型选择灯光类型。此会给在“导出元素”参数中列出的每个元素导出分离的通道。

如果你设置“灯光导出”参数为“给每个灯光导出变量”,你会得到每灯光,每元素的分离的颜色通道(极大提高了合成的灵活性)。

Intrinsic exports

下面是一些深度栅格通道,你可以指定它们来获取额外的内在信息。它们处于用于深度栅格颜色面(以及PBR颜色面)的默认菜单中。

Name Type Description
Render_Time Float 以浮点方式值输出渲染块所花费的秒数。
Op_Id Float 以浮点值方式输出物体的Id值。此颜色面存储着物体的级别下设置的物体ID值。值为-1的像素不会被任何Primitive所覆盖。
Prim_Id Float 以浮点值方式输出Primitive的Id值。此颜色面存储着几何体的Primitive标号。
Shading_Samples Float  输出被着色的每像素采样中,透明度的采样数量。此数值可以用于调试体积对象和精灵对象渲染,来决定着色半透明采样所花费的时间。
Opacity_Samples Float  输出被着色的每像素采样中,不透明度的采样数量。也可以用于调试采样不透明度所花费的时间。
Pixel_Samples Float 输出已经计算的每像素的像素采样数量。此可以用于IPR来检测在图像不同区域的完成度。

Compositing

在合成中,你可以通过使用Layer COP节点(将全局操作设为Add方式),将直接,间接光照,SSS通道相加来重新生成Cf颜色面。

The shadow matte planes can be combined by multiplying the unshadowed plane by the complement (Invert COP) of the shadow matte.

阴影遮罩通道可以通过和雾阴影的颜色面(由Invert COP创建)相乘来合并。

Tip

当处理多通道的pic或exr图像时,使用Channel Copy COP节点来提取一个名为C的颜色通道,这样COP会只作用于C通道上。设置“目标”参数为C,“源”参数为你想要拷贝的颜色面。

点击分享到: