Overview
你可以在包含额外的颜色面(也叫深度栅格),这些颜色通道包含着代表VEX全局变量的图像,或从曲面/雾材质上导出的变量/参数。
你甚至可以每灯光方式输出额外的颜色面(如果在一个照明循环中指定导出的变量)。
当渲染为一个pic(Houdini的图像格式)或exr(OpenEXR)格式图像,你可以在同样的多个颜色面中包含额外的颜色面。你也可以指定将额外的颜色面放入不同的文件中(或将多个颜色面放在分离文件中)。
Examples
例如,你可以导出用于每个像素的全局变量N(曲面法线)到一个图像上。
被渲染的颜色面:是从顶部开始被照亮的圆环。 | |
法线面,以颜色方式显示曲面的法线。 |
你可以在MPlay中,使用工具栏下,左侧的弹出菜单查看额外的颜色通道。
另外一个例子:Houdini的基本曲面材质会导出一个名为diffuse_color_noshading的变量,其包含着在照明前材质漫反射颜色的贡献值。此在合成中可能是一个非常有用的信息。
颜色面:从各个角度照明的圆环,带有顶点颜色。 | |
diffuse_color_noshading 颜色通道显示了在照明和阴影前,曲面材质的原始颜色贡献值。 |
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 |
|
||||
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,“源”参数为你想要拷贝的颜色面。