Houdini 17.5 Nodes VOP nodes

Print VOP node

Generate a formatted text string.

On this page

This operator is used to generate a formatted text string. It can also output this text to the console, usually for debugging purposes.

Any number of inputs can be connected to this operator. These inputs can be integer, float, vector, vector4, matrix3, matrix, or string data. By default, each input value will be printed with the name of the output connected to the input, followed by the actual value. the values are separated by tabs. So connecting a vector input P and a float input alpha would result in string that looked like this:

P: { 0.0, 0.0, 0.0 }     alpha: 1.0


In a multi-context material network, the Print node needs to somehow be connected to a context output to work. The minimal way to do this is to connect a Null VOP into the context output node, and then connect the Print node’s output to the Null node’s second input.


To generate a more easily readable string than the default, you might set the Format String to:

The noise value is % with displacement %. The color is %.

Or to generate the name of a texture map file based on an integer input, you could set the Format String to:



Format String

This string specifies how the input values will be formatted and displayed. Any text can be entered here. To specify that the value from a particular input should be displayed, use "%". The inputs will be displayed in the order in which they are connected. To display a % character, use \\%. To display a "\", use \\\\. To specify the start of a new line, use \\n. A new line character is automatically put at the end of the string when it is output to the console. To place a TAB in the text, use \\t. Any input value that does not explicitly appear in the Format String is appended to the end of the string using the format described above for the default behavior.

Output Text to Console

Toggle this parameter on to have the formatted output string displayed in the console window.


Input Number 1…N

The input values to be put in the output string.

Next Input

Where the next input value should be connected. Up to 64 inputs can be specified.


Formatted Output Text

The string created by formatting the input values according to the details in the Format String.


The following examples include this node.

CrowdHeightField Example for Crowd Solver dynamics node

This example demonstrates using heightfields for terrain adaptation in the crowd solver, and for collisions against ragdolls in the Bullet solver.

Stadium Crowd Example Example for Crowd Solver dynamics node

Crowd example showing a stadium setup

The setup creates a stadium crowd. The rotating cheer_bbox object is used as a bounding box for the agents. When they are inside it it will trigger a transition from a sitting to a cheering state. After a few seconds the cheering crowd sits back down by transitioning into a sitting state.


The animation clips need to be baked out before playing the scene. This should happen automatically if example is created from Crowds shelf. Otherwise save scene file to a location of your choice and click Render on '/obj/bake_cycles' ropnet to write out the files. The default path for the files is ${HIP}/agents.


To only see a section of the crowd for quicker preview there’s a switch node in /obj/crowdsource/switch_all_subsection. When 0 it will show all agents, when set to 1 will only show a small section.

GroupPainted Example for Add Point to Group VOP node

This example demonstrates how to take a painted attribute and build a point group from that attribute using the Add Point to Group VOP and the Create Point Group VOP.

See also

VOP nodes