Houdini 12 Nodes Object nodes

Serves as a place-holder in the scene, usually for parenting. this object does not render.

The Null Object serves as a place-holder in a scene, and does not render. It can be used to designate a place in the space of your scene, or as a “look at” object to help coordinate a camera’s movement and field of view.

The Null Object is also used as an End Affector for constructing chains of bones. Its parameters are similar to those of the Geometry Object’s Transform and Miscellaneous tabs.

To change the null’s display geometry, go inside the node (Alt-click the icon in the network editor or select it and press I) and edit the SOPs defining its shape.

You can use the Null Object’s transform to define coordinate systems in either RIB or IFD renderings using the controls on the Render tab.

Placing a Null in the viewer

To...Do this
Place the null anywhere in the scene
  1. Click the Null tool on the Create tab.

  2. Move the cursor into the scene view.

    Note

    You can hold Alt to detach the null from the construction plane.

  3. Click LMB to place the null anywhere in the scene view.

    If you press Enter without clicking, Houdini places the null at the origin.

Place the null at the origin

Press Ctrl + LMB on the Null tool on the shelf.

You can change the display, control type, and shading of the null on the Misc tab of the parameter editor.

Parameters

Transform

Keep Position When Parenting

When the object is re-parented, maintain its current world position by changing the object’s transform parameters.

Pre-transform menu

This menu contains options for manipulating the pre-transform values. The pre-transform is an internal transform that is applied prior to the regular transform parameters. This allows you to change the frame of reference for the translate, rotate, scale parameter values below without changing the overall transform.

Clean Transform

This reverts the translate, rotate, scale parameters to their default values while maintaining the same overall transform.

Clean Translates

This sets the translate parameter to (0, 0, 0) while maintaining the same overall transform.

Clean Rotates

This sets the rotate parameter to (0, 0, 0) while maintaining the same overall transform.

Clean Scales

This sets the scale parameter to (1, 1, 1) while maintaining the same overall transform.

Extract Pre-transform

This removes the pre-transform by setting the translate, rotate, and scale parameters in order to maintain the same overall transform. Note that if there were shears in the pre-transform, it can not be completely removed.

Reset Pre-transform

This completely removes the pre-transform without changing any parameters. This will change the overall transform of the object if there are any non-default values in the translate, rotate, and scale parameters.

Transform Order

The left menu chooses the order in which transforms are applied (for example, scale, then rotate, then translate). This can change the position and orientation of the object, in the same way that going a block and turning east takes you to a different place than turning east and then going a block.

The right menu chooses the order in which to rotate around the X, Y, and Z axes. Certain orders can make character joint transforms easier to use, depending on the character.

Translate

Translation along XYZ axes.

Rotation

Degrees rotation about XYZ axes.

Scale

Non-uniform scaling about XYZ axes.

Pivot

Local origin of the object. See also setting the pivot point .

Uniform Scale

Scale the object uniformly along all three axes.

Look At

Object to point to. Constrains an object so its -Z axis always points at another object’s origin.

Look At Up Vector

When specifying a look at, it is possible to specify an up vector for the look at. This controls the roll of this object when looking at the look at object.

Don’t Use Up Vector

Use this option if the look at object does not pass through the Y axis of this object.

Use Up Vector

This precisely defines the direction of the Y axis of this object while looking. The up vector specified should not be parallel to the look at direction. The value used is specified by the Orient Up Vector parameter below.

Use Quaternions

Quaternions are a mathematical representation of a 3D rotation. This method finds the most efficient means of moving from one point to another on a sphere.

Path Object

A reference to the curve node or object you want this object to follow.

Roll

The orientation of the object around the path.

Position

The position of the object along the path. 0.0 means at the beginning of the path, and 1.0 means the end. The integer portion of the position is used as the primitive number inside the geometry while the fractional part indicates the u value on the primitive.

If the primitive number does not exist, then it is wrapped back to the beginning. So for numbers greater than 1.0 in a path object that only have a single primitive, it wraps around to the beginning again. You can easily animate something moving around a circular track simply by continuously increasing the position value.

Keyframe this value to animate the object moving along the path.

Note

The Follow Path tool on the shelf automatically sets keyframes on this parameter that you may want to edit or replace.

The Parameterization option controls how position values between 0 and 1 correspond to knots on the path curve.

Parameterization

Controls how the Position parameter is translated into a point on the path curve. Use Arc-length (the default) to interpolate the position values evenly along the physical length of the curve.

Use Uniform to distribute the position values between the knots of the curve. This lets you slow down the object at certain points by bunching up knots in the path curve. However, it is much more convenient to simply edit the animation curve to control the speed of the object along the path.

Orient Along Path

Orient the object according to the path’s curvature.

Orient Up Vector

The direction vector of the object’s Y axis to orient with.

Auto-Bank factor

Controls automatic banking of the object as it turns corners. Set this to 0 to turn automatic banking off.

Render

Display

Whether or not this object is displayed. Turn on the checkbox to have Houdini use this parameter, then set the value to 0 to hide the object, or 1 to show the object. If the checkbox is off, Houdini ignores the value.

Output transform as render space (RIB/IFD)

If this parameter is turned on, then the transform of the null will be output to render scripts as a named transform space. As well, the pre-include and post-include will be enabled for inclusion into the render stream. Note that the display of the object must be turned on and the null must match the visible objects of the output driver.

Misc

Set Wireframe Color

Use the specified wireframe color

Wireframe Color

The display color of the object

Viewport Selecting Enabled

Object is capable of being picked in viewport.

Select Script

Script to run when the object is picked in the viewport. See select scripts .

Cache Object Transform

Caches object transforms once Houdini calculates them. This is especially useful for objects whose world space position is expensive to calculate (such as Sticky objects), and objects at the end of long parenting chains (such as Bones). This option is turned on by default for Sticky and Bone objects.

See the OBJ Caching section of the Houdini Preferences window for how to control the size of the object transform cache.

Geometry Scale

Uniform scaling about the xyz axes.

Display

Whether to display only the icon, only the axis, or both.

Icon

Displays only the icon geometry.

Axis

Displays only the axis.

Icon and Axis

Displays both the icon and axis.

Control Type

Switches between the type of geometry to display.

Null

Displays null geometry (i.e. cross).

Circles

Displays circle primitives.

Box

Displays box primitive.

Planes

Displays plane primitives.

Null and Circles

Displays null and circle primitives.

Null and Box

Displays null and box primitives.

Null and Planes

Displays null and plane primitives.

Custom

If an input source is specified, this option will display the geometry of the input.

Orientation

Used in conjunction with circle or plane primitives. Determines which circles or planes to display.

All planes

Displays circle or plane primitives on the YZ, ZX and XY planes.

YZ plane

Displays a circle or plane primitive on the YZ plane.

ZX plane

Displays a circle or plane primitive on the ZX plane.

XY plane

Displays a circle or plane primitive on the XY plane.

YZ, ZX planes

Displays circle or plane primitives on the YZ and ZX planes.

YZ, XY planes

Displays circle or plane primitives on the YZ and XY planes.

ZX, XY planes

Displays circle or plane primitives on the ZX and XY planes.

Shaded Mode

Determines whether to display the primitives as shaded objects or as wireframe objects.

off

Displays primitives in wireframe mode.

on

Displays primitives in shaded mode.

Examples that use this node

Example forExample name
FetchLoad | Launch

.../examples/nodes/chop/fetch/Fetch.otl

IKSolverLoad | Launch

.../examples/nodes/chop/iksolver/SimpleIKSolver.otl

InverseKinLoad | Launch

.../examples/nodes/chop/inversekin/SimpleInverseKin.otl

TransformChainLoad | Launch

.../examples/nodes/chop/transformchain/SimpleTransformChain.otl

Blend SolverLoad | Launch

.../examples/nodes/dop/blendsolver/SimpleBlend.otl

LightLoad | Launch

.../examples/nodes/obj/hlight/TransparentShadows.otl

MuscleLoad | Launch

.../examples/nodes/obj/muscle/HandleExample.otl

MuscleLoad | Launch

.../examples/nodes/obj/muscle/JiggleMuscle.otl

Load | Launch

.../examples/nodes/out/ramp/RampReference.otl

FollowLoad | Launch

.../examples/nodes/pop/follow/FlockOnPath.cmd

FollowLoad | Launch

.../examples/nodes/pop/follow/NewGroupiesRavage.cmd

LookatLoad | Launch

.../examples/nodes/pop/lookat/Lookat.otl

OrbitLoad | Launch

.../examples/nodes/pop/orbit/OrbitAlternate.cmd

AddLoad | Launch

.../examples/nodes/sop/add/Add.otl

FurLoad | Launch

.../examples/nodes/sop/fur/FurBallWorkflow.otl

L-systemLoad | Launch

.../examples/nodes/sop/lsystem/LSystemMaster.otl