Houdini Main Changelogs
| 21.0.623 | Fixed an issue with subframe interpolation of the bones that prevented the Otis Muscle andTissue Simulation recipe from working in Each Substep target mode in the Otis Solver. |
yesterday | |
| 21.0.623 | Fixed bugs when the Otis Solver's Target Method was set to Each Substep and importing Stiffness and Damping or using an external SOP as the Constraint Target. |
yesterday | |
| 21.0.623 | Fixed a bug where Mtlx Chiang Hair Roughness, Mtlx Deon Hair Absorption From Melanin, and Mtlx Chiang Hair Absorption From Color nodes always returned zero. Also fixes Mtlx Chiang Hair BSDF's tint parameters not functioning, and "Curve Direction" parameter not using the curve direction when nothing is wired in. |
yesterday | |
| 20.5.871 | Fixed a bug where turning off the Enable Blendshapes display option for crowd agents did not reduce the VRAM usage if the agents had already been displayed. |
yesterday | |
| 21.0.623 | Cleaned up the UI on the spline component. Fixed a bug on the Spline and Multiik component, where the parents didnt except pattern and could not unparent when using an "_". |
yesterday | |
| 21.0.623 | Fixed a scale bug in the multiik autorig component. Also updated the UI. |
yesterday | |
| 21.0.623 | The Attribute Blur SOP now warns if provided with an invalid point group. |
yesterday | |
| 20.5.871 | Added new HOUDINI_NEW_CONTEXT_OPTION_RULES envrionment variable that can change the behavior of context options. Turning on this mode makes the context options last used to cook a node higher priority than global context option values. This reduces excessive cooking when an option exists both globally and locally via an edit context options node. When a node has its display flag set, this behavior changes so that last cook context option values are never used, allowing the use of global options to explicitly override the options for a specific node. Also improved tracking of context option dependencies so changing a global option doesn't trigger recooks of nodes that used a local context option value the last time they cooked. Eliminated some unnecessary recooking when two cook requests differ only by the "depth" of the context option stack (even though all option values may be unchanging). |
yesterday | |
| 21.0.623 | Fixed an issue where Scene Import was generating the wrong times for animated geometry subset membership. |
yesterday | |
| 20.0.1342 | Fixed an issue with the evaluation of expressions for overriding string context options on a per-clone basis. Previously, strings that start with numbers would not be sent to the clone as specified. The old behavior can be replicated by enclosing the context option expression in back-ticks. |
Mon. February 9, 2026 | |
| 21.0.622 | Fix issue where houdini/hbatch was unable to start the HoudiniServer service if it was stopped. |
Mon. February 9, 2026 | |
| 20.5.870 | Prevent crash in Poly Reduce 2.0 SOP by checking validity of manifold edge conditions. |
Mon. February 9, 2026 | |
| 21.0.622 | Prevent crash in Poly Reduce 2.0 SOP by checking validity of manifold edge conditions. |
Mon. February 9, 2026 | |
| 21.0.619 | Fix framing in the APEX Animate viewport state for small controllers so that its center is correctly computed. Previously, it was slightly off center resulting in it not staying centered if you then tumbled around it. |
Fri. February 6, 2026 | |
| 20.0.1339 | Houdini now conveys the correct resolution to render delegates through the HdRenderPassState object, instead of passing it only through the render delegate's SetRenderSettings API. |
Fri. February 6, 2026 | |
| 21.0.619 | Fixed a bug where turning off the Enable Blendshapes display option for crowd agents did not reduce the VRAM usage if the agents had already been displayed. |
Fri. February 6, 2026 | |
| 21.0.619 | Fix controller framing in the APEX Animate viewport state to take into account its object owner transform. |
Fri. February 6, 2026 | |
| 20.5.867 | Houdini now conveys the correct resolution to render delegates through the HdRenderPassState object, instead of passing it only through the render delegate's SetRenderSettings API. |
Fri. February 6, 2026 | |
| 21.0.619 | Fixed a bug where using MtlX Chiang Hair Bsdf VOP would cause shader to fail to compile. |
Fri. February 6, 2026 | |
| 21.0.619 | Houdini now conveys the correct resolution to render delegates through the HdRenderPassState object, instead of passing it only through the render delegate's SetRenderSettings API. |
Fri. February 6, 2026 | |
| 20.5.867 | Fixed an issue with OpenEXR texture maps that might cause too many files to be open concurrently. With large numbers of textures, it was possible for the OpenImageIO texture cache to open too many texture files, leading to system instability. |
Fri. February 6, 2026 | |
| 21.0.619 | Don't print out missing hotkey warnings in the LOP viewer when there are custom kinds defined through the USD plugin system. |
Fri. February 6, 2026 | |
| 20.0.1339 | When using a SOP Import to merge into the existing active layer, the source SOP geometry would be completely re-parsed up to three times instead of one. Now this translation is only performed once. |
Fri. February 6, 2026 | |
| 20.5.867 | When using a SOP Import to merge into the existing active layer, the source SOP geometry would be completely re-parsed up to three times instead of one. Now this translation is only performed once. |
Fri. February 6, 2026 | |
| 21.0.619 | When using a SOP Import to merge into the existing active layer, the source SOP geometry would be completely re-parsed up to three times instead of one. Now this translation is only performed once. |
Fri. February 6, 2026 |