Houdini 20.0 Nodes VOP nodes

Parameter VOP node

Represents a user-controllable parameter.

On this page

The Parameter node represents the value of one of the parameters the user can set in the shader’s parameter editor interface. For example, in a Balloon shader, you could define a parameter for the Balloon Color, allowing the user to control the shader’s color.

Parameters

Name

The name of the new parameter, both in the VEX function declaration, the definition of any OP type that uses the VOPNET, and the VOP tile’s output. If a parameter by this name already exists, this operator will reference it and will disable most of of its own fields, such as the Parameter Type and Parameter Label.

The name must not be a reserved keyword.

Prefix

The optional prefix to prepend to the parameter name. The prefix changes the final name of the new parameter, both in the VEX function declaration, the definition of any OP type that uses the VOPNET, and the VOP tile’s output.

Postfix

The optional postfix to append to the parameter name. The postfix changes the final name of the new parameter, both in the VEX function declaration, the definition of any OP type that uses the VOPNET, and the VOP tile’s output.

Label

A human-readable label for this parameter. Appears in the owner node’s parameters and the tooltip when the user hovers over the output on the VOP tile.

Show Label

Toggles the display of the parameter label in the owner node’s parameters.

Type

Specifies the VEX data type of the new parameter. It can also specify how the parameter should be represented in an OP dialog. For example, a VEX vector can be viewed as 3 float values or as a color value.

Default Values

Depending on the parameter type selected, it represents the default value of the parameter in the VEX function and in the OP type that uses this VOP network.

Comment

Brief description of the parameter. The comment is included after the parameter declaration in the generated code.

Use This Node to Set Parameter Attributes

When several Parameter VOPs have the same Parameter Name, only one of the nodes is used to control the attributes of the parameter. Houdini decides which node to use for this by searching all the nodes according to the user defined order, then traversing inside subnets. If none of them have this parameter turned on, the first one found is used to set the parameter attributes. If one or more do have this option turned on, the first one with this option is used, even if another node (with this option turned off) is found first.

Use Own Export Context

When several Parameter or Bind VOPs have the same Parameter Name, some other node will determine export context. However, it may be desirable to have each Parameter VOP exporting in a different context. In such cases, setting this parameter will enable this node to specify own export context, independent of the primary definer node.

Use Input Value If Parameter Not Bound

If true, the VEX function parameter is checked to see if it is bound to an attribute in the current VEX context (e.g. point color). If not bound, the input value is is assigned to the VEX parameter. In a Surface VOP context, a VEX parameter is bound if the geometry being shaded has an attribute with the VEX parameter name.

Has Corresponding Connector

If true, the shader node parameter defined by this Parameter VOP will also have a corresponding input connector, providing such shader nodes can have input and output connectors.

Export

Specifies whether the new parameter can be exported to other contexts (written to as well as read from). If set to Always or When Input is Connected, this operator gets an input. The value wired into this input is then assigned to the exported parameter. In a Surface network, exported parameters can be used to create deep rasters. In SOP and POP networks, the exported parameters create new geometry attributes.

Never

The parameter will not be exported.

Always

The parameter will be exported.

When Input is Connected

The parameter will only be exported if the node’s input is ultimately connected to another VOP.

Export in Context

The context or contexts that the parameter is exported to. Use whitespace characters as separators when specifying multiple contexts.

Provide Menu

If the parameter type is String or Integer, then you can provide a menu of choices instead of a string entry field or an integer slider.

No Menu

No menu is provided and the entry field or slider is displayed instead.

Invisible

Do not show the parameter in the shader’s parameter interface. The parameter still exists and will be used to generate shader strings.

Parameter tags

“Tags” let you attach arbitrary key/value data to the parameter template. You can access this data using hou.ParmTemplate.tags. Some tags are recognized and used by different parameter types. You can also use them to store your own per-parameter hidden data.

Tags are used by the 3D viewer to signal when a parameter should be treated as an OpenGL value. For example, attaching the “OpenGL → Diffuse” tag to a parameter on a material node makes the 3D viewer treat that parameter’s value as the diffuse color when displaying the surface.

  • The tags are listed in a table in the “Parameter description” sub-pane on the right, when you select a parameter from “Existing Parameters” list in the middle.

  • Click Built in tags below the tag table to choose from a tree of different tags recognized by Houdini, including the OpenGL tags.

  • Some parameters may have internal tags attached to them which store options for the parameter’s look and behavior. These internal tags are not editable in the tag list.

  • Tag names must be unique within each parameter.

  • You can use the Key-Value Dictionary parameter type to add a tag-like editing interface to your own digital assets.

Common tags

sidefx::slider

Set this to none on an integer or float parameter to suppress display of the slider next to the value box. This can be useful for parameters that are only meant to hold an expression, not a raw value.

Help tab

The contents of the text field appear in the help browser when the user clicks the help button for a node of this operator type in the parameter editor.

This help can be HTML, or you can use a simple but powerful wiki format to create documentation that looks like the native Houdini help. See how to write wiki-format help.

Inputs

Unbound or Export Value

The value assigned to the new parameter if the Export Parameter toggle is checked or if the parameter is not bound when Use Input Value If Parameter Not Bound is checked.

Outputs

Parameter

The value of this VEX function parameter.

Is Parameter Bound

True if the new parameter is bound to an attribute.

Examples

RampParameter Example for Parameter VOP node

This example shows how to control the particle colours using the temperature attributes from a pyro simulation using a Ramp Parameter VOP node.

See also

VOP nodes