Houdini 16.5 What’s new What was new in Houdini 15

What’s new in Houdini 15 VEX and VOPs

On this page

See also what’s new in shading.

VOPs

Control structures

New

"For…", "For…Until", "For Each…", and "For Each…Until" nodes allow looping the nodes between them. See the documentation on looping.

Easy visualization

New

Visualize VOP helps visualize the value of a VOP output in the viewport. It adds a vis_* attribute based on the output value and sets some visualization options to make it show up in the viewport. You can hover over a VOP output and press X to rewire a visualize node onto that output.

The intention is to later replace this somewhat inefficient method with something integrated with the visualization editor.

Snippets

New

The Snippet VOP, forced code generation is now optional. If you know the snippet has no side effects, you can turn off forced generation, so Houdini will only generate the code if it’s needed.

Misc

New

Neighbors VOP generates an array of the nearest points, suitable for looping for with a For Each block.

New

Make Transform Space VOP generates a matrix to transform from one space to another (for example, an object’s local space to world space).

New

"Matrix to Vector" and "Vector to Matrix" VOPs to extract rows from a matrix, and construct a matrix from rows.

New

Code caching gives faster compilation of VEX code generated from VOPs.

Changed

The Density to Opacity VOP is now only available in the Surface and Fog contexts because it uses the Is Shadow VOP.

Changed

The File VOPs have been consolidated with the node input versions.

Changed

New Get Attribute VOP version supports arrays and default values.

Changed

The Tangent Normal and Tangent Normal Remap nodes now support arbitrary tangents.

Fixed

Hidden Ramp Parameter nodes now show as a peg, like hidden Parameter nodes.

VEX

Literals

New

You can now use binary constants, for example 0b00110011.

Changed

You can now use _ as a number separator in VEX, for example random(1_000_000), to make long numbers more readable.

Changed

The number 019 is now a syntax error (as invalid octal) instead of being silently treated as decimal.

What was new in Houdini 15