On this page |
User interface
See also Network editor and Parameter editor.
New
The View tool now has options for how to center tumbling, dollying, and zooming.
New
Rewritten hotkey editor makes it easier to customize hotkeys.
New
You can now assign a radial menu to any key.
Improved
Pressing and holding S (Select tool) now switches to Select while you hold the key down, and goes back to the previous tool when you release the key. Tapping S will still switch you to the Select tool.
Improved
Added a preference for the "close enough" distance (in pixels) when pointing at handles. Choose Edit ▸ Preferences ▸ Handles.
Improved
Ladder controls on handles are now semi-transparent to make it easier to see the effect of changes.
Improved
Dedicated game development tools shelf (ongoing).
Changed
The view tool defaults are now to automatically set the tumble pivot on geometry under the mouse pointer when you start tumbling, and to dolly toward/away from the mouse pointer. You can change the behavior using controls in the View tool’s operation toolbar or in the main preferences.
3D viewport
New
Fast, distance-adaptive instancing of packed primitives and Alembics in the 3D view. For example, the viewport can stream in geometry for close objects and replace far objects with bounding boxes. Distance culling controls are on the Optimize tab of the Display Options window.
Improved
Metallic map support at normal quality level.
Improved
"Cutout" transparency quality setting hides anything with Alpha equal to 0, and shows everything else fully opaque. This is much faster because it doesn’t require blending or extra display passes.
Improved
Basic support for displaying OpenSubdiv 3.x surfaces.
Improved
New option in display options sets an upper limit on the number of polygons produced by viewport subdivision (default is 10 million). If the viewport goes over the limit, it will iteratively restart at a lower subdivision level until it is under budget (this may result in no viewport subdivision at all).
New
Lights and Cameras ▸ Gamepad camera shelf tool creates a Gamepad CHOP setup to drive a camera. This is useful for flying through a scene, and as an example of using the Gamepad CHOP.
Improved
The 3D view now supports instancing on points with an instancefile
attribute (when the object has instancing turned on). Previously this only worked at render time.
Fixed
Better near/far clipping settings when you switch from looking through a camera to the "unlocked" view.
Fixed
You can now click buttons in the toolbars around the viewport while holding Space to enter the view tool.
Changed
The hotkeys to turn subdivision on an object on or off (- and =) now require Shift (⇧ Shift + - and ⇧ Shift + =) to prevent accidental activation.
Changed
Houdini no longer draws a green tip on selected edges to indicate direction.
Fluids
See also what’s new in dynamics.
New
New Adaptive narrow-band FLIP simulations only simulates a thin top layer of a fluid.
-
Approximately ⅓ memory usage, 3× faster.
-
Ideal for FLIP tanks.
-
OpenCL accelerated.
New
Added low-cost, physically correct simulation of bubbles and trapped air.
-
On the FLIP solver node's Volume motion ▸ Air tab, turn on Enforce air incompressibility.
-
Works well with viscous fluids.
-
OpenCL accelerated.
Hair and fur
New
You can now partition a model into different areas with local grooms and then blend between them with the Groom Merge object. The Guide Groom tool now supports selecting an entire object or groups of polygons. For more information, see Fur Workflow.
New
Adaptive Prune SOP lets you prune hairs based on screen space.
New
Groom Switch SOP lets you switch between two grooms.
New
You can now groom animated and/or simulated guide hairs.
Improved
Productivity and performance improvements. You can now input skin objects to Guide Groom and Guide Deform to set up source relationships. The Animate and Simulate now support selecting multiple objects.
Art courtesy of Andryi Belichenko
New
Grow guides/hairs from curves (for example, eyelashes from an eyelid curve).
New
New Groom Fetch SOP for fetching data from a groom.
New
Support for variable segment count. Shorter hairs can have fewer line segments than longer hairs, keeping the hair geometry lighter.
New
You can now generate hair without any guides.
New
The Curve Advect tool lets you draw a few quick curves to set up large-scale groom directions.
New
Built-in guard-hair and white hair support for animal fur.
Improved
Hair system is more efficient and time-independent.
Improved
You can now groom animated and/or simulated guide hairs.
Improved
Additional methods for interpolating between guide hairs.
Improved
More flexible masking, for example by curve length or skin curvature.
Improved
You can now paint on attributes to override simulation settings.
Improved
The Guide Process SOP has many more options for controlling bending.
Improved
The Hair Generate object now has an option to generate hair once in the rest position and deforming afterwards, using the updated Guide Deform.
Geometry and modeling
New
Completely rewritten Poly Reduce node does much better reduction much faster while retaining features and preserving quads.
98% polygon reduction while retaining textures and features
New
The abcpointcount
intrinsic attribute on packed Alembic primitives contains the number of points in the unpacked geometry.
New
Edge Transport is a highly technical SOP for generating attributes by "walking" along the edge graph formed by the input geometry.
Improved
Enhanced Topo Build interactive mode allows sliding edges, skinning polygonal "sleeves" around roughly cylindrical features such as a tail, and more accurate snapping. Topobuild can also now collapse edges and faces.
Improved
Soft selection can now work by surface distance.
Improved
More geometry nodes are now compile-able.
The Invoke SOP lets you "apply" a compiled SOP block to an arbitrary input. This can be used to reduce duplication in a network, or to allow an asset to accept a reference to a block as a parameter and use the block to modify how the asset works.
You can now set the HOUDINI_SOP_DISABLE_COMPILENODE
environment variable to make compiled blocks run in non-compiled mode. This may be useful for testing.
Improved
Fast alignment of handles and construction plane.
Improved
Move Center to Pivot shelf tool that translates an object’s geometry to its local object origin. For consistency, the "Center Pivot" tool is now called Move Pivot to Center.
Improved
Improvements to Alembic IO. Ogawa files now load in parallel. Animated Alembics can play back much faster. Caching allows multiple SOPs to reference the same Alembic with less cost.
Improved
A display option in the 3D viewer lets you color 3D boundaries (unshared edges) or UV boundaries differently to make them easier to see (pop-up menu on the Markers tab under "Draw"). A new option "UV boundaries in UV only" lets you color UV boundaries only in a UV viewport (not in 3D).
Improved
Objects and geometry nodes now have a separate Pivot Rotate parameter to rotate the geometry’s local axes. Previously, it was only possible to translate the local axes. Rotating the local frame of reference can make it easier to animate along non-axis-aligned directions.
The interactive pivot handle now allows rotation as well as translation. (Press Ins or ' to switch to the pivot handle.)
Improved
Many improvements to Alembic loading and saving.
Improved
New parameter on Repack SOP lets you convert packed fragments to regular packed primitives.
Improved
The grouping syntax now accepts .r
/.g
/.b
and .u
/.v
in addition to .x
/.y
/.z
for attribute component comparison. For example @Cd.r>0.1
.
Improved
The Assemble SOP now has controls to transfer groups as well as attributes.
Improved
The Sequence Blend has been redesigned, is compile-able, and supports smooth attribute interpolation.
Improved
The Tube SOP now has an option to generate the minimal axis-aligned cylinder that contains all the points in the input geometry.
Improved
In the Add SOP, adding polygons "by attribute" is now faster.
Changed
The Subdivide SOP now uses OpenSubdiv 3.x, which is 2× faster. Changed some parameter names to better reflect how they work with the OpenSubdiv implementation.
Changed
In geometry node group fields, *
now means "match everything", and !*
means "match nothing". Previously, *
meant "match anything in a named group", which is now ?*
.
Changed
The File Cache node’s Pack using expanded/absolute file paths parameter is now on by default to match the File SOP.
Changed
Removed the For Each subnet.
Volumes, height fields, and terrain
New
Heightfield Patch smoothly "pastes" a feature from one height field into another.
Improved
Heightfield Blur can now blend the edges when the blur is masked. This fixes any big discontinuities along the mask edges that might be created if the mask is not feathered.
New
Volume Patch SOP smoothly "pastes" a feature from one volume into another.
Improved
Edge detection added to Volume Analysis SOP. This currently supports both Sobel and Prewitt edge detection.
Textures and UVs
New
New features in the viewport and in texture SOPs to support arbitrary UV attributes.
-
In the UV viewport the "camera" menu on the right is now replaced with a UV menu containing texture-related functions.
-
You can now specify an attribute as being meant for UVs. This makes the attribute show up in various lists of UV attributes in the UI.
-
You can now view different UV attributes in the UV viewport.
-
Most UV-related SOPs have been updated with a parameter to let you choose which UV attribute to operate on.
-
When you work interactively in the viewport, UV operations automatically use the UV attribute of the previous node.
New
You can now choose the UV viewport background image from a list of associated textures/materials in the UV menu.
The background image now works with UDIM and UVtile maps.
Improved
Better UV generation on Poly Extrude and Poly Bridge nodes. You can now automatically generate linear texture maps for bridges and extruded side polygons for every existing texture attribute, with control over island scale and shape.
Improved
You can now select points when displaying vertex UVs in the UV viewport.
Improved
The UV viewport only shows the current/selected object when you are at the object level.
Improved
UV Layout node now has very fast optimal packing with support for packing inside holes and rotational fitting.
Improved
The file browser’s Show sequences as one entry option now works with UDIM and UVTile filenames.
Improved
The color visualizer can now visualize "texture distortion" directly. This visualizer is now available in the UV viewport’s UV menu.
Previously the visualizer relied on the UV Flatten SOP generating a distort
attribute. That attribute is no longer generated.
Changed
With the new built-in support for multiple texture attributes, the Layer SOP is now deprecated. If you were using it to swap other attributes, use Attribute Swap instead.
Shading and rendering
New
New Rounded edge parameter on Principled shader and Classic shader, based on new Rounded Edge VOP creates the appearance of rounding along a hard polygonal edge, with optional dirt masks.
Art courtesy of Magnus Larsson
New
New options in the render view’s bottom toolbar let you easily save the image to a file, and/or auto-save the image at intervals as it renders.
New
Cryptomatte support in rendering and compositing.
Improved
More refinement of new material workflow introduced in Houdini 16.
Improved
Dramatically reduced indirect specular noise.
Improved
Much faster rendering of nested procedurals and packed primitives.
Improved
Improved sampling of PBR lights.
Improved
Improved flipbooking.
-
Flipbook all viewports in the view as a single image.
-
Filter what object types appears in the flipbook.
-
Flipbook to MPlay and disk at the same time.
-
The frame range setting now has a menu with common presets.
-
Option to leave the playhead at the last frame when done flipbooking (to make it easier to concatenate different sequences into one flipbook).
New
New Volume quality parameter on the Mantra node to control indirect volume bounces.
New
PBR Single Scatter VOP is a much faster but less accurate single-lobe sub-surface scattering (SSS). This is useful whenever speed is more important than the highest quality. Single scatter is now available as an option on the Principled shader and Classic shader.
New
imgsave command to allow saving to disk in MPlay and Houdini.
Improved
The Classic shader now has an option to use packed primitive alpha (Alpha
attribute). Previously it always used point alpha, and this is still the default.
Improved
Faster texture baking.
Improved
Simplified the LUT/gamma/ICIO interface in the color correction toolbar.
Improved
New -t
option to render a specific tile in mantra
makes it easy to distribute rendering of a single frame.
Improved
PBR subsurface scattering is now evaluated during direct lighting. It no longer relies on indirect bounces.
Improved
Updated to OpenSubdiv 3.1.
Improved
The Cusp Angle for Vertex Normals detail property can now control the cusp angle for automatic vertex normals in geometry in Mantra. Previously this only worked in the 3D view.
Changed
The Principled Shader now multiplies any alpha in the opacity texture with the color values, just like the Classic Shader.
Changed
Houdini now ignores camera scaling by default when rendering. If you are actually using camera scaling, you can add the Remove Camera Scale property and turn it off.
Fixed
Mantra’s default surface shader (the shader used when a surface has no explicit shader) now uses an Alpha
attribute on the geometry if it exists. This matches how the 3D view works.
Crowds
New
New Partial Ragdoll settings on the Crowd State node lets you specify a named group of joints to ragdoll (for example, only ragdoll from the waist up).
New
Agent Relationship SOP creates hierarchical relationships between agents (for example, rider parented to horse).
New
New "Motors" settings on the Crowd State node let a ragdoll character still put a certain amount of effort into moving its joints according to an animation clip.
Improved
You can now set agents to partially rag-doll on the Crowd State node. You can set a named set of joints to rag-doll, and/or you can specify that joints try to follow their animation clip but also react to RBD collisions.
Improved
New stiffness settings on Crowd State node prevent loosely swinging limbs on ragdolls.
Improved
Agent FBX Import now creates extra channels in the animation clip for user-defined properties.
New
Agent Arcing Clip Layer DOP blends between a set of clips based on the agent’s turn rate and direction, for smarter quadruped terrain adaptation and banking.
Improved
The Agent Clip Transition Graph SOP has new options to automatically compute transition points between clips, making it much less work to set up smooth transitions between clips.
Improved
You can now use Agent Edit SOP interactively in the 3D view. Agent Edit can now adjust transforms in the agent’s local space instead of world space. You can now adjust a joint’s scale transform. Agent Edit can now use VEXpressions to vary the transform parameters for each agent.
Improved
There is now an option on the Agent Layer SOP to filter which shape bindings to copy.
Improved
The Agent CHOP can now create a clip from an agent’s transforms.
Improved
Agent Terrain Adaptation SOP now has an option to disable adaptations that use an underling DOP simulation (such as foot locking and leaning). When this option is off, the node switches to a stateless implementation that allows fast preview and scrubbing.
Fixed
If an agent "transitions" to the same clip (without a transition graph), the clip will now continue instead of resetting to the first frame.
Character
New
New Motion Path handle in the pose tool lets you view and edit an object’s path through space over time.
New
Quadruped and Basic Head autorigs.
New
Added a shelf tool and object node for importing Acclaim motion capture data.
Improved
Objects now have a separate Pivot Rotate parameter to rotate the geometry’s local axes, for better animation control. Press Ins or ' to switch to the pivot handle.
Improved
Enhanced X-ray display and better selection of X-ray objects.
Improved
Big improvements to the beta muscle and flesh system.
-
Comprehensive non-simulated and simulated workflows.
-
Advanced Muscle asset.
-
Muscles can be imported as deforming geometry or simulated with flesh system.
-
Density-based FEM constraint regions.
-
Anisotropic FEM fibre contraction.
Improved
Improvements to Pose Library interface, including baking.
Improved
Refinements to the CHOP-based animation constraint system introduced in Houdini 16.
Improved
Pose tool promoted to toolbox on left side of viewer pane.
Improved
Improved Align Capture Pose tool.
Improved
You can now choose whether FBX export creates an extra root for the Export node’s subnetwork.
Network editor
New
You can now save you node type color and shape assignments as a theme, and switch between themes.
New
New node badges: "bone object has kinematics", "node has take data", and "node needs to cook".
New
New badge options. The comment and descriptive parameter are now treated as text badges. Text badges have more options such as to show full text for the selected nodes, but abbreviated text for unselected nodes.
Improved
Smarter multi-wiring. During a wiring operation, you can Shift-click other inputs/outputs to add them to the operation. If you are wiring multiple inputs and Alt-click in space Houdini will create a dot. If you are wiring multiple outputs and Alt-click in space, Houdini will create a Merge node and continue wiring the merged output.
Improved
Hold ⌃ Ctrl when minimizing/restoring a network box to move other nodes around the netbox to account for its new size.
Improved
When a node inside a minimized netbox is selected, the netbox is highlighted and the name of the node is drawn next to it.
Improved
Many improvements to the Find dialog. Improved performance. Pin the dialog to have multiple Find dialogs open. Optional recursive search of child nodes. You can now search by the raw textual contents of parameters (for example, you can search for uses of specific variables or expression functions).
Improved
Nodes with required inputs now have a red triangle drawn above the input as a visual hint.
Improved
You can now hold S to enter a "select-only" mode. While you hold the key down, clicking and dragging will only select. This makes it easy to select nodes without worrying about moving the node or accidentally clicking wires, flags, or other UI.
Improved
You can now ⌃ Ctrl + ⇧ Shift + click nodes to toggle selected/unselected, as you can with items in the 3D view.
Improved
The network editor toolbar now has a button to show or hide the node palette.
Improved
Faster display of representative parameter text badges.
Improved
You can now set a custom descriptive parameter on a node using HOM.
Improved
The labels in the top left and right corners of the network editor are now generated by a replaceable script (PATH/python2.7libs/nodegraphtitle.py
)
Improved
The network editor will now look for PATH/python2.7libs/nodegraphhooks.py
and import it. This provides a standard place for expert users to hook into network editor events. See extending the network editor for more information.
Changed
Quick marks are now saved with the scene file.
Developer
Added HDK examples for providing custom icon or text badges in the $HT/sampels/OPUI
directory.
Parameter editor
New
Click the search icon in the parameter editor to show the filter and search toolbar.
New
You can now right-click a parameter and use items in the Reference submenu to create references in the parameter to other parameters, local variables, or geometry transforms using a chooser interface.
Improved
Tabs that contain off-default parameters are now bolded.
Improved
Tabs and multi-parms now have Disable when and Hide when options in the type properties editor, allowing an asset author to hide or disable them based on other parameter values.
Improved
The parameter editor’s gear menu is now in the customizable XML format ($HFS/ParmGearMenu.xml
).
Changed
⌃ Ctrl + ⌫ Backspace in a text field now deletes the word before the cursor. ⌃ Ctrl + Delete deletes the word after the cursor.
Dynamics and effects
See also what’s new in fluids.
New
New Constrain Region tool on the Solid shelf welds two solid (FEM) objects together where they overlap. This lets you union two shapes, or pull one solid by manipulating another solid constrained to it.
New
New Visualize Finite Element tool on the Solid shelf colors tets to visualize properties such as energy level or tetrahedron quality. It can also hide part of a solid object to allow you to see the tets inside.
New
Volume Optical Flow SOP generates an advection field from the motion in a video source.
New
New, faster Bullet constraint solver.
The Use parallel constraint solver is replaced with a menu to choose the new replacement solver or the old default solver. The old solver works well in specific situations (for example ragdolls that aren’t piled on each other) but ends up being essentially single-threaded in most scenarios like a building collapse.
Improved
You can now attach constraint network geometry as subdata instead of as a relationship.
Improved
Added a Solver Tolerance parameter to the Bullet solver to let the solver stop early if it is "close enough". The Bullet solver now always outputs force
, torque
, distance
, and angle
attributes.
New
New Constraint Network Visualization DOP draws guide geometry representing relationship or geometry subdata.
Improved
The FEM solver now generates attributes containing information about forces and collisions.
Improved
The Solid and Hybrid objects now display statistics about the computed material properties and distributed soft constraint coefficients. This can be useful when using multiplier attributes.
Improved
Added new options for the Cone Twist constraint’s guide geometry.
Improved
The Constraint Network DOP now has an option to use geometry from the parent DOP network’s inputs.
Changed
Removed the ODE Solver and ODE Configure Object DOPs. ODE is now replaced by the Bullet solver.
The Bake ODE SOP is now deprecated. To set up compound shapes, use the Create Convex Hull Per Set Of Connected Primitives parameter on the RBD object node instead.
Removed the deprecated Glue Network Constraint, Glue Network Relationship, Spring Network Constraint, and Spring Network Relationship nodes. Use Constraint Network instead.
Removed the deprecated Glue Pieces SOP. Use Connect Adjacent Pieces instead.
Changed
For constraint networks, the Bullet solver now skips constraints where the name point attribute is non-empty and does not specify a valid object.
To constrain an object to a world space position, use an empty string (@name=""
).
CHOPs
New
Gamepad CHOP translates game controller inputs into channel data.
New
Mouse3D CHOP translates inputs from a 3D mouse (such as a SpaceMouse) device into channel data.
New
Device Transform CHOP converts device channel data (such as from the Chamepad CHOP) into a transform.
VEX and VOPs
New
VEX now caches compiled function specializations to disk, improving compile times.
You can use the new vexcache
command line utility to manage this cache. Use vexcache -h
to see its options.
New
VEX now does some just-in-time compilation of imported functions.
You can disable this feature using the $HOUDINI_VEX_JIT_OPTIMIZE
environment variable.
New
New OpenSubdiv VOPs: OpenSubdiv Face Count, OpenSubdiv First Patch, OpenSubdiv Limit Surface, OpenSubdiv Lookup Face, OpenSubdiv Lookup Patch, OpenSubdiv Patch Count.
New channel VOPs: Get CHOP Attribute, Get Channel Value by Name, Set CHOP Attribute, Set Channel Value.
Other new VOPs: Normal Clamp, Promote Layer Exports.
New
New functions: agenttransformgroupweight, agentfindtransformgroup, chu, ch2, chexpr, chexprf, chexprt, maketransform, cracktransform, ocio_activedisplays, ocio_activeviews, ocio_roles, ocio_transform, slerp.
Improved
Fast compilation of Unified Noise.
New
New Periodic Worley Noise VOP. See also cwnoise, mwnoise, wnoise.
New
New Manhattan and Chebyshev noise distance metrics generate different looks.
Improved
Houdini now loads VEX plugins from directories in the new $HOUDINI_VEX_DSO_PATH
environment variable, if it exists. You no longer need to list VEX plugins in a separate index file.
Changed
Limit surface evaluation in VEX will give slightly different values. OpenSubdiv 3.0 did not support limit surface evaluation of Houdini vertex attributes.
Houdini will linearly interpolate vertex attributes across the ptex patch until we correct interpolation with the new OpenSubdiv 3.1 version. This may be addressed in a future nightly or production build.
Changed
Removed create_cdf
and create_pdf
functions.
Fixed
Invert VOP now works on vector2
.
Miscellaneous
New
New "Directory" parameter type takes a path to a filesystem directory.
New
You can now add callback scripts for events related to asset libraries and the HIP file. For assets see hou.hda and hou.hdaEventType. For the HIP file see hou.hipFile and hou.hipFileEventType.
New
New hou.Parm.rawValue() method lets you get the actual textual content of a parameter, without evaluation or variable substitution.
Improved
XML menus are now more capable. You can generate an item’s label and control whether it’s disabled with Python snippets.
Improved
You can now use sesictrl
to redeem entitlements on the command line without any interactive prompts. Specify your login information using the -A
flag and the entitlements as extra arguments to -L
. For example:
sesictrl -A "user@company.com" "secret" -L "Houdini FX" "5" "Houdini Core" "5"
Improved
If a parameter menu contains only integers, you can now turn on an option to use the integer values as the menu item tokens instead of the indices.
Improved
You can now create string array attributes with a tuple size greater than 1. String attributes no longer distinguish between null and empty string. There is only empty string, which has string index -1.
Developer
Better HDK documentation and examples.
Developer
Complete insulation of HDK from Boost.