Houdini 13.0 Nodes

interface version 2 (experimental)

Create or modify geometry attributes using a noise function.

  • Clockwise from top: - 3D noise added to point positions (P); - 1D noise, used for displacement along normals; - 3D noise, used as point color (Cd).

Tips

  • Internally, a 4D Unified Noise is used, so all the fourth noise parameters can be used to modulate it through time. (For example, animating the 4th Offset parameter.)

  • The noise outputs are specified through the Target Attribute and VEXpressions. These are independent of each other and both can be enabled at the same time. This can be useful in various ways –

    • Visualizing the noise pattern: just choose the appropriate VEXpression preset (the Target Attribute should still be kept enabled).

    • Displacement: choose the “displacement” VEXpression preset, and disable the Target Attribute parameter.

Parameters

For parameters not explicitly documented, see the Unified Noise documentation.

Group

Geometry components to work on.

Envelope, Weight, etc.

Regular deformer weighting parameters.

Enable

Enable noise computation. (If disabled, the Driver Attribute values will be passed instead.)

Amount

An overall multiplier for the generated noise value.

Attributes
Class

The attribute class type (per-point, per-primitive, etc).

Driver Attribute

Name and type of the attribute that drives the noise generation.

Target Attribute

The attribute receiving the resulting noise pattern (also see VEXpressions below).

Composite

How to merge the noise with the original values of the target attribute (replace, add, multiply, etc).

Note

Make sure these attributes don’t collide with any weight attributes (see above). This is not a problem if deformer weighting is disabled.

Use VEXpressions

Use additional VEX code to specify output attributes and operations. This is independent of the regular Target Attribute specification.

In this VEX snippet context, use

  • nv to access noise vector values

  • nf to access noise values as floats

(do not use the @ prefix).

For example, to implement displacement, use the following VEXpression:

@P += @N * nf;

Warning

Target Attribute and output VEXpressions are independent of each other – this means that if both are enabled, both will be applied to the geometry.

Force Recompile

Press this button to force recompilation of internal VEX code.

Construction, Output

See Unified Noise.

Technical Notes

This operator has to rely on building VEX code on-the-fly (the implementation ended up pretty “tricky”). The following parameters are linked directly into VEX code (and hence trigger recompilation): use_weight, weight_name, driverattrib, targetattrib, targetattribcomp, outputrule (VEXpression).

Do not use these parameters in (copy-)stamping workflows. In fact, this entire OP might perform poorly in stamping situations.

To Do

  • Do a lot of testing to find out any weaknesses (esp. copy stamping)

  • The “displace along normals” VEXpression currently requires an existing N attribute (point normals)

  • Deformer envelope/weighting implementation should be discussed (might change in the future)

  • “Unspecified” attribute types are not recommended

  • “Alpha Blend” compositing mode is not implemented (where the alpha should come from?)

Release Notes

interface version 2

2014-10-29

Added gamma correction (2.2) for the RGB VEXpressions.

2014-10-13

Added/emphasized warnings about the behaviour of Target Attribute / VEXpressions both enabled.

2014-06-01

Interface version 2 (experimental).

2014-05-30

Started working on interface version 2.

interface version 1

2013-12-16

Re-saved asset in H13 to get rid of UI-related warnings (missing param folders).

2013-03-07 (gadfly16)

Got rid of meaningless error message after driver signature menu change.

Added support of integer type driver attribute.

2012-12-21

Creation of local variable added. Exponent output modifier removed. End of the world.

2012-08-06

Fixed copy stamp performance degradation. Enhanced the example scene.

2012-07-21

Initial release.