Released at the end of last year, Houdini 20 adds a host of powerful new tools and features to what is already one of the most capable 3D packages out there. Just be prepared for the learning curve…
Though not as well known as Cinema4D, Maya, and Blender, Houdini is a mainstay in the visual effects industry. VFX artists use it for all sorts of complex effects like destroying buildings and cities, crowd effects like armies of zombies and epic fighter battles, and huge simulations like oceans and flowing water. It's nearly as commonplace in high-end VFX as Nuke, but the learning curve is steep, particularly for artists used to… well, basically everything else in the 3D space.
It's nodes, all the way down
For those not familiar with it, Houdini is completely procedural, and everything in Houdini is a node; even simply selecting a face of a cube and extruding it creates a node. Even plugins for Houdini are nodes, and many Houdini nodes are built using nodes.
The advantage to this is that the entire workflow is visual and every step is always editable. The disadvantage is that it's a very different way of working than just about every other 3D application on the market.
The feature list for Houdini is enormous, including sophisticated modeling, volumetrics, particles, dynamics, character animation, rendering, and even compositing. For a deep dive into what Houdini can do hit up the website or download the free non-commercial version and start playing. In the meantime, here is an overview of some of the new features that SideFX introduced in Houdini 20.
KineFX and animation
The animation workflow got a major upgrade, making it easier to add characters and animations to scenes and to retarget animations from one character to another. Selection make organizing character controls easier. There are new features for creating poses and editing animation curves and blend keyframes.
So new it's in beta is a new feature called APEX for character rigging. APEX provides a toolkit for building procedural character rigs, allowing the rigger to decide where in the rig graph to evaluate it, so that it isn't getting evaluated with every little tweak. There is a new APEX Autorig Component SOP (SOP is a Geometry Operator in Houdini-Speak) with which riggers can use pre-built components like Forward Kinematics (FK) hierarchies and Inverse Kinematics (IK) joints, or build their own components using APEX graphs. There is also a node dedicated to scripting, which can also be packaged into a custom node.
Houdini would not be Houdini without adding its vaunted physics simulation to... well, everything. Character animation is no exception. The Ragdoll node set has been updated, simplified, and optimized, enabling animators to add realism to animations by using physics to create secondary motions.
There is a huge suite of new features for muscle animation also, including the new Ripple solver and an updated Vellum dynamics solver.
Houdini 20 has a suite of tools dedicated to modeling highly detailed feathers, painting them onto characters, and animating them like hair. The whole feature set is GPU accelerated and fully integrated into the Houdini animation, including physics. Since highly detailed feathers are also extremely heavy in terms of geometry and computer load, the toolset is designed to work with low-resolution proxies and translate them procedurally into high-resolution objects at render time with support for any Hydra delegate.
Physics and simulations
The biggest new feature here is the Vellum wind shadow. Vellum is Houdini's particle-based dynamics engine used for things like cloth and grains of sand, and now it's possible to realistically block airflow over cloth with other geometry. Fur on a character behaves much more realistically with the wind shadow enabled since the wind shadow more accurately models the effect of the character's body on the airflow over its hair.
There are also updates to make it easy to drape and fold cloth by pinning selections while brushing it into shape, as well as performance improvement.
For quite some time, Houdini shipped with the Mantra renderer. While a reliable and feature-rich renderer, Mantra is CPU-based and hence not particularly competitive in the speed department. A few years ago, SideFX introduced Karma along with Solaris, Houdini's built-in Hydra render delegate. Karma also added support for MaterialX shaders and an initial implementation that added GPU support.
Most renderers are based either on GPU or CPU rendering, but not really on both.
Mixing GPU and CPU rendering carries some challenges. One big one is that GPUs and CPUs handle floating point calculations differently, mainly in how they handle rounding when executing floating point math. That rounding introduces small differences in results that accumulate through the rendering pipeline which can lead to artifacts if one tile is rendered on the GPU and a neighboring tile is rendered on the CPU. Also managing memory, scheduling tiles for rendering, and then assembling the results is more complicated as a result of the heterogeneous processing. Karma XPU distributes tiles to GPUs and CPUs, and if a GPU fails it transfers the failed tile to a CPU to pick up its render.
Given all that, it's a very big deal that Karma XPU is now gold. SideFX is still working to improve performance as well as raise it to feature parity with Karma CPU, but the first official release is quite exciting. There is a lot of new functionality in the Karma MaterialX shaders, like new procedural shaders and a new Karma Physical Sky LOP (Lighting Operator).
While it's still not as fast as RedShift, KarmaXPU is a lot faster than Mantra and Karma CPU, and it can handle much bigger scenes than RedShift can without crashing due to the fact that my GPU only has 16GB.
While oceans have been a Houdini mainstay for some time, they got a big overhaul in H20. The new procedural ocean is a LOP that generates ocean geometry based on statistically modeled wave spectra and includes foam and bubbles. The procedural generates ocean geometry dynamically as one would expect for a procedural generator, and the detail level is essentially as much as the computer can handle; the first time I tried it I ended up with so much geometry that the render times exploded. It took a few tries to find the settings that my machine could handle. The procedural oceans support any Hydra render delegate for rendering, which includes the usual 3rd party rendering suspects like RenderMan, Vray, RedShift, and Arnold in addition to the new render on the block, Karma XPU.
The new Ripple Solver makes it very easy to create realistic looking ripples to simulate rain drops in water, shock waves rippling through muscles, and the like.
I've made clouds in Houdini before, but I was never successful in getting them to look as good as clouds in Terragen or Terragen Sky. The new cloud tools in Houdini 20 have changed that. There is a new suite of nodes for creating sky boxes and filling them with clouds, starting from scratch and using procedural noises to model them or using predefined volumes as a basis. There are also several tools for creating and (literally) sculpting individual hero clouds, and the results are quite impressive.
There is a lot more in Houdini 20, including a suite of machine learning tools, designed to allow an artist to train a network on, for example, terrain data, then use that trained model to generate a new terrain using that model. So, generate a mountain terrain using digital elevation maps from the Canadian Rockies, sketch a new terrain, and use that model to turn that sketch into a terrain styled after the Canadian Rockies.
So, yes, Houdini has a learning curve like no other. But then that means you can do things with it that no other program can quite manage too.
Tags: Post & VFX