Houdini 18.5 Properties

VOP Node Properties

On this page

Overview

These properties can be applied to VOP nodes.

Properties

Shader Properties

Is Shader

Specifies whether the node is a shader; otherwise it’s a building block.

Render Mask

Specifies the mask for the renderers the shader node belongs to. Used for finding a USD shader translator for the shader node.

Render Context Name

Specifies the name of the render context (renderer) the shader node applies to. Used for USD material primitive output name namespace identifying the terminal shader primitive.

Shader Name

Specifies the shader name. Used for an asset or an ID attribute of the USD shader primitive.

Shader Name Kind

Specifies the interpretation and meaning of the shader name string returned by a VOP node. Values are 'id', 'asset', or 'code'.

Asset

Renderer can find the shader in an asset.

ID

Renderer can find the shader based on the given ID.

Code

Renderer can find the shader code inlined in the USD primitive.

Shader Source Type

Identifies the type of shader source. Eg 'glsl', 'osl', 'vex' (effectively, the name of the shader’s language).

Primitive Path

Specifies the USD path of a shader, material, or graph primitive to author. Useful for creating graph primitives outside of the implied material to drive its inputs.

Primitive Type

Specifies the USD pritive type (i.e. schema name) for the USD primitive to author. The names should match schema names, eg 'Material', 'NodeGraph', or 'Shader'. Useful for forcing the translation of a node into a particular USD primitive type, e.g., NodeGraph instead of a Material).

Default

Translate the node to prim that suits a given node by default.

Material

Translate the node to a USD Material primitive.

Node Graph

Translate the node to a USD NodeGraph primitive.

Shader

Translate the node to a USD Shader primitive.

Shader Primitive Name

Specifies the USD shader primitive name for this shader.

Material Primitive Name

Specifies the USD material parent primitive name for this shader.

Material Primitive Type

Specifies the USD pritive type (i.e. schema name) for the USD material primitive to author. The names should match schema names, eg 'Material' or 'NodeGraph'. Useful for forcing the translation of a node into a particular USD primitive type, e.g., NodeGraph instead of a Material).

Default

Translate node to prim that suits a given node by default.

Material

Translate node to a USD Material primitive.

Node Graph

Translate node to a USD NodeGraph primitive.

Shader

Translate node to a USD Shader primitive.

Force Terminal Output

#hprop shader_forceterminaloutput

Make sure the material primitive has a terminal shader output."

Skip Shader Parameters with Default Values

#hprop shader_skipdefvalparms

Determines whether to output (or author) only parameters that have non-default values.

Treat All Node Parameters as Shader Parameters by Default

#hprop shader_useallparms

Designates all node parameters as shader parms (or not), unless they have an explicit 'shader_isparm' tag that inidcates otherwise.

Is Material Sibling

When true, the shader node is translated into USD Material sibling primitive, rather than as a child (or descendent).

Force Translation of Children

When VOP subnet HDAs reference an existing USD material (thru 'shader_baseprimpath'), their children don’t need to be translated, because the base primitive already has children. However, when this property is set to true, shader translators will translate them anyway.

Reference Type

#hprop shader_referencetype

Specifies whether the translated USD material should reference an existing primitive, and if so, then how.

None

Translate to prim without referencing any other USD prim.

Reference

Translate to prim that references an existing USD prim.

Inherit

Translate to prim that inherits from an existing USD prim.

Specialize

Translate to prim that specializes an existing USD prim.

Represent

Don’t translate to new prim; instead, use existing USD primitive.

Base Asset Path

#hprop shader_baseassetpath

Specifies the file path to the asset that contains a material to reference, when translating the node into a new USD material primitive.

Base Primitive Path

#hprop shader_baseprimpath

Specifies the USD path of a material to be referenced, inherited from, or specialized, when translating the node into a new USD material primitive.

Import Base Parameters

#hprop shader_importbaseparms

Creates spare parameters that correspond to input attributes of the material specified in the 'Base Primitive Path'.

Shader Code

Shader Function Name

#hprop vop_shader_name

Specifies an explicit shader name for the VOP node.

Force Code in Context

#hprop vop_force_code_context

Marks the VOP as one of the terminal nodes in the shader of the specified context. This node and its input chains will contribute to the generated shader code.

Layer Export Inputs

#hprop vop_shaderlayerexports_inputs

Lists the inputs whose shader layer exports tag should be copied to the output tag.

Layer Export Add

#hprop vop_shaderlayerexports_add

Lists the shader parameter names that should be added to the shader layer exports output tag. Eg, 'f@vex_export_parm_foo v@bar'.

Properties