Houdini 13.0 Nodes

interface version 1

Jitter points in random directions, along three main axes.

Jitter points in random directions. Useful for breaking 'perfect' (artificial) symmetry. See the original Point Jitter help page for parameter details.

Enhancements to the original SOP include enhanced weighting support, setting of jitter value ranges for each axis, and specifying the three axes using vector attributes.

Parameters

Jitter

Jittering settings. See the original Point Jitter help page for parameter details.

Axes

Details about the three axes along which the jittering takes place.

Axis Range Min/Max

Specifies the value range of the jittering along each axis.

Use Axis Vectors

If enabled, the three main axes for the jittering can be individually specified.

X, Y, Z Axis

Setting for each individual main axis.

Constant X+, Y+, Z+

Use the appropriate main world axis. This is the default behaviour.

Attribute

Specify a per-point vector attribute. (This allows for defining a local coordinate space for each point – an example is to jitter along per-point velocity vectors.)

Cross Product X*Y (Z only)

The third axis will be the cross product of the X and Y main axis (i.e. it will be perpendicular to the plane defined by those axes).

This is a convenience setting to remove the need of generating an extra vector attribute just for this purpose. It can be a relief when dealing with heavy geometry.

Particle/Retime Helper Attributes

If enabled, various helper attributes will also be generated on the geometry alongside the main jitter operation.

The intended usage is when jittering points along their per-point velocity vectors.

Velocity Axis

When generating helper attributes, this should be set to the jitter axis that uses the velocity vector direction (as set up in the Axis Vectors parameters, above).

Birth Time

Helper attribute. Represents the exact (subframe-accurate) birth time of a particle.

Rel. Birth Time

Helper attribute. Represents subframe-accurate birth time of a particle, but related to the time of the nearest whole frame.

Note

When generating birth time attributes, the generated values will be jittered as well.

Time, FPS

These values are used to compute the various helper attributes (above).

Note that these are not set by default, as it would make all PointJitter nodes time-dependent.

Set Up Time Parameters

Use this menu to connect or disconnect the node from the current time.

A PointJitter should only be connected if the time-related helper attributes are to be generated. (Otherwise it only results in an unnecessary time-dependency.)

Tip

Breaking up particle emission patterns

An example when jittering along arbitrary vectors can be useful is emitting particles from deforming geometry. A regular POP artifact is particles emitted in 'chunks' on each frame.

A quick way of getting rid of that problem is to generate per-point velocity vectors using a Trail node, then jittering the geometry along the resulting velocities. If you emit from such a geometry, the 'chunk-emission' effect will be minimized.

Parameters setup

  • Jitter —

    • set Axis Scales to 1/$FPS 0 0

    • set Seed to floor($FF)

  • Axis Settings —

    • enable Use Axis Vectors

    • for X Axis, use Attribute and specify v (it’s already the default)

Release Notes

interface version 1

2014-02-24
  • Added pscale (weight) attribute menu

2013-08-12
  • Workaround for losing N attribute (per-point normals) when jittering.

2013-07-11
  • Workaround for time-dependency (now non-dependent by default); other small improvements (mostly UI).

2013-05-16
  • Added Particle/Retime Helper Attributes (very experimental!).

2013-05-01
  • Help card improvements.

older versions

Version 0.0.3

Support for specifying arbitrary main axes.

Version 0.0.2

Support for 'id' attribute.

Version 0.0.1

First version (intended to be a multiprocessor-aware PointJitter alternative).