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

What’s new in Houdini 15 Lighting, shading, and rendering

On this page

Shading

See also what’s new in general VOPs.

Shading in VOPs

New

New and updated high-level shader VOPs supporting layering.

New

New gallery of useful materials wrapping the new VOPs, including Principled and Mantra Surface "uber-shaders".

  • Car paint material.

  • Metal materials based on physical properties of different metals.

  • Fake Caustics shader VOP.

  • New Pyro shader nodes with much simpler interfaces.

  • Lava material for new viscous fluids tools. Includes dual rest support.

New

Dirt Mask VOP uses an algorithm similar to ambient occlusion to mask crevices or geometry edges. This is useful for layer blending.

New

Conductor Fresnel VOP computes a reflection blending factor based on reflectivity and edge tint (or eta and kappa).

Changed

The Material SOP can now reference shader VOPs in addition to SHOPs.

Changed

Reorganized the VOP network ⇥ Tab menu.

Layered shaders

New

Layering of shaders at the VOP level. This work anticipates a future version of Houdini where you can shade entirely at the VOP level without creating SHOPs.

New

New VOPs for layering: Layer Pack, Layer Unpack, Layer Mix. Compute Lighting now has outputs for layer components.

Detail maps

New

Houdini has viewport, rendering, and shading support for generating and using normal maps to add detail to low-poly models at display/render time.

New

New Displace VOP supports bump, normal, displace along normal, and vector displacement (in object and UV tangent space).

Displacement texture VOP builds on Displace with built-in texture sampling. The ⇥ Tab menu has aliases for the various modes (Bump Texture, Normal Texture, Displacement Texture, and Vector Displacement Texture).

New

The Tanget Normals and Tangent Normal Remap VOPs let you import and export tangent space normal maps.

The Mantra materials now export an Nt tanget normal image plane. The tangent normals are affected by displacement, normal maps, and bump maps.

New

Bump to Normal Map VOP converts bump maps to normal maps.

Mantra Surface shader

Changed

Improvements to the Mantra Surface shader:

  • Now a Precompiled HDA, for much faster loading and render startup for scenes with many shader instances.

  • Supports tangent space vector displacement and tangent space normal maps.

  • Separate bump/normal controls for coat reflections.

  • Cleaner implementation makes it easier to modify.

  • Computes tangents using the uv attribute, or geometric tangents if the surface has no UVs. This gives usable tangents on NURBS and geometric primitives.

New

Decomposed the Mantra Surface functionality into smaller re-usable pieces: Compute Lighting (new version with layer input), Physically Based Diffuse, Physically Based Specular, SSS Component, Attenuate.

Changed

New Surface Model VOP version 3.0.

  • Adds layer output.

  • Uses Fresnel blending by default.

  • Intensities are now set to 1.0 by default. Diffuse color is 0.2 grey so it reads as 50% grey after 2.2 gamma correction. Tangent style is now "Compute from UV".

  • Replaces N input with baseN and coatN to support clear coat.

  • Metallic and edge tint controls.

  • Removes unused inputs.

  • Fades out reduction of diffuse intensity at grazing angles when specular intensity is reduced. This means overall energy should stay constant when you reduce specular intensity. This is not based on physical laws, but fixes dark edges that would otherwise appear around objects.

Principled shader

New

Principled Shader wraps the the Principled Shader VOP and adds texture inputs for all main parameters.

Liquid shader

New

Rewritten Basic Liquid shader.

  • Controls for boosting diffuse intensity in high-vorticity areas.

  • "Vorticity waves": extra bump-mapped wave detail added in high-vorticity areas, driven by FLIP Fluid’s dual-rest attributes.

Toon shader

New

New Toon Color Shader and Toon Outline Shader create stylized cartoon looks.

Volumes

Changed

The Volume Model VOP is now hidden. Use the Volume Shader VOP instead.

Shadow terminator

Fixed

Added getsmoothP VEX function and updated existing shaders to use it to eliminate shadow terminator artifacts.

You can disable this fix using the Fix shadow terminator render property.

Material stylesheets

New

Material stylesheets let you select and apply materials to any geometry (including packed geometry and instances) at render time. The foundation existed in Houdini 14, but Houdini 15 adds refinements and includes a tree editing pane making it easier to create and edit stylesheets.

New

Material stylesheets can now enable/disable subdivision rendering.

New

The Material geometry node has a parameter to add a stylesheet attribute to the geometry.

Pyro shading

Updated

Changed

Updated Pyro Material 3.0.

  • Streamlined interface, removed rarely used functionality.

  • Commonly used parameters are all on one tab.

  • Improved interactivity (parameter changes no longer cause recompilation).

Changed

New Pyro Shader Core VOP replaces Pyro Shade VOP.

  • Layer output.

  • Uses common input/output names.

  • No scripted parameter promotion magic.

  • Removes draw input. If you need masking, you need to do it externally.

  • Parameter changes don’t trigger recompilation.

  • Only supports the new density and brightness models. Removes model choice and fireexist.

  • Smoke brightness now matches other volume shaders.

  • No longer computes Cf internally, since this is not compatible with layering. Instead the Compute Lighting VOP takes care of this. This means the node doesn’t support turning off shadow computation.

Changed

A new version of the Unified Noise VOP.

  • Simplified implementation, removed parameter promotion magic.

  • Parameters have corresponding inputs.

  • Parameter changes don’t trigger code-generation (except signature parameter). This means that it can now be used in Precompiled HDAs.

  • Instead of multiple dual rest inputs, a single input that accepts a DualRest or DualRest4 struct input, as produced by the updated Dual Rest Solver VOP.

Changed

New versions of many Pyro-related VOPs remove scripted parameter-promotion magic.

Changed

A new version of the Ramp Filter VOP now accepts a Ramp struct instead of individual arrays.

Changed

A new version of the Dual Rest Solver VOP has a DualRest struct output, which you can wire directly into the updated Unified Noise VOP.

Other changes

Changed

Default Pyro smoke is now half as bright to match other volume shaders.

Lighting

Physically correct

Changed

The default lights now use "physically correct" attenuation, meaning the light drops off exponentially with distance.

A new Light exposure parameter on lights lets you exponentially scale brightness (value = intensity × 2exposure).

When you create a physically correct light by ⌃ Ctrl-clicking a light tool on the shelf (which positions the light based on the current view), the tool automatically adjusts the intensity of the light so that the brightness of the light at the viewport pivot will be 1.

New

Houdini now includes IES light scattering profiles from derekjenson.com. You can find them in $HFS/houdini/ies. You can apply them to a spotlight using the Environment/IES Map parameter on the Spotlight options tab.

Changed

The Mantra Surface shader and Surface Model VOP use more physically plausible defaults.

Tube light

New

You can now create a "tube" Area light. The Size parameters control the length of the tube and the radius.

Interface

Changed

Looking through a distant light displays an orthographic view.

Rendering

IPR

New

The render view now shows elapsed and final render times, peak memory usage, and estimated time remaining.

This information is saved in image files that support arbitrary metadata (Pic, Rat, and OpenEXR). MPlay will display the metadata when you load files that contain it. The itilestitch utility properly handles the metadata when combining files.

Quality controls

New

The Mantra render node now has controls to scale the Max samples setting separately for the diffuse, reflection, and refraction components. Increasing the scale decreases the acceptable noise level when rendering that component. This lets you have Mantra devote more effort to components that have high variance.

New

Adaptive BSDF sampling super-samples the BSDF in areas where radiance is changing quickly. This generates images faster with better distributed noise in PBR mode.

For now this is not available in the default render node parameters. To add it, use the ▸ Edit Rendering Parameters interface to add the vm_adaptivesamplingenable and vm_adaptivesamplingthreshold properties.

Efficiency

New

By default Mantra now writes out "checkpoint" files containing the current render state at certain intervals. If the render fails because of a fixable problem such as out-of-memory, you can resume the render from the last checkpoint by turning on Resume from checkpoint files on the render node.

Checkpointing is available for Mantra’s native image formats (.pic and .rat) as well as .exr.

If the checkpoint files are taking up too much disk space, you can turn them off on the render node.

HQueue has a new Mantra options ▸ Enable checkpoints setting. When this is on (the default), HQueue will resume rescheduled jobs using checkpoints.

New

New File compression parameter on the Driver tab of the Mantra render node to control compression of IFD output.

New

New "Automatic velocity blur" setting for Allow motion blur only enables blur if a velocity attribute exists in the scene.

Z-back

New

Houdini now supports both "Z front" and "Z back" in deep images.

By default, Houdini will only add zfront and zback for deep camera images, unless the planes are listed in the Depth planes parameter.

When rendering .rat texture images, Mantra will store zfront/zback as Pz and dPdz (delta Z) planes. When rendering .exr images, Mantra will store them as Z and Zback. The dcmconvert command line utility knows to map between the different names.

RenderMan 20.0

New

Houdini supports RenderMan 20.0 and RIS shading. RIS shaders are available in the RIS Shader Network SHOP.

New

Added RIS shader nodes.

  • Complete set of RenderMan BxDF, Pattern, and Integrator RIS shaders.

  • PxrStdAreaLight, PxrStdEnvDayLight, and PxrStdEnvMapLight RIS light shaders.

  • Camera, Light Probe, and Rolling Shutter RIS projection shaders. You can add projection shaders to a camera using the Lens Shader property.

New

New RIS render node. This allows the RIB and RIS render nodes to have cleaner interfaces specific to each mode.

Changed

Removed support for RenderMan versions before 17.

Compositing

PSD import

New

Houdini can now import Photoshop (PSD and PSB) files into a compositing network, preserving layers. Use File ▸ Import ▸ Image to choose a file to import.

Drop shadow

New

Added Drop Shadow compositing node to simplify creating shadowed text layers.

Other changes and improvements

HQueue

New

You can configure Houdini’s HQueue Render and HQueue Simulation nodes to display the job ID when you submit a new job to HQueue.

New

You can now download diagnostic information from HQueue’s details page to send to Side Effects software support.

New

You can now add and remove clients to/from a job in the browser, and through the HQueue Python API using getPermittedClientList and savePermittedClientList.

Changed

The "Download output" button is now "Download Output Log" to make it clearer.

Changed

Changed how client disabling works. You now specify in hqserver.ini the maximum number of failures allowed on a client under a single root job. Clients with more than this number of failures will not be assigned new jobs.

Bake UVs

New

Rendering UV texture maps is now handled by a separate Bake Texture render node. UV texture rendering functionality has been removed from the Mantra render node. UV rendering with micropolygons is deprecated in favor of raytraced UV rendering.

Particle radius

Changed

Mantra now renders particles using the object’s Point Scale and Treat point scale as diameter instead of radius parameters (on the Render ▸ Geometry sub-tab). This may change the scale of particles when rendering old scenes. The quick fix it to turn on Treat point scale as diameter instead of radius.

Mantra verbosity

New

New verbose flags: -t/T – turn on/off time stamps on log messages (on by default), -a/A – Turn on/off Alfred-style progress updates.

For example, mantra -VaT3 will render at verbosity level 3, with Alfred-style progress reports, but no time stamps on log messages.

Changed

Mantra’s console output is now timestamped and errors/warnings are color-coded. You can turn off coloring in the parameters of the Mantra render node.

Utilities

New

Added an option to hrender to specify the take to render.

New

The vexexec utility now has a -V verbose option.

Fixed

MPlay will now load images from an http: URL on the command line.

Fixed

hrender is more responsive.

Misc

New

Added limited support for motion segments on arbitrary attributes. They are not shaded, but you can query the segment values. The geometry:segmentattrs property specifies which attributes should create motion segments (automatically includes P).

New

You can now disable specific image planes in filter scripts using a disable property.

New

You can add the /news/15/vm_open now automatically sets the "data window" on OpenEXR images after rendering, equivalent to running the iautocrop utility. You can turn this off if necessary.

Changed

Removed the Metal SHOP since its functionality is now available in the general shaders.

Changed

The Composite render node now uses the metadata controls from Mantra, instead of a hard-coded list of image formats.

Changed

The name of a shader defined by a VOP network is now the VOP network’s path instead of its name. This avoids naming conflicts with exported parameter names and symbols from included .h files.

Changed

Encapsulated shaders can now use a custom SHOP’s Shader name in the import keyword instead of the node name. This allows you to import namespaced/versioned nodes, which can’t be imported by their node names because the names contain : characters.

Changed

Improvements to the OpenGL render node:

  • Transparent surface now rendered correctly.

  • Animated materials now correctly update.

  • Stereo cameras are now correct, no longer anaglyph tinted, in separate files mode.

  • Added background image and viewport comment parameters.

  • Increased the default quality settings.

  • Added a 32-bit floating point HD option.

Changed

The Texture VOP has a new parameter to control the orientation of the texture relative to the UV coordinates.

Changed

Renamed the Alfred render node to Tractor.

Fixed

In the Mantra Surface shader/material, turned off "use point color" on VOPs not in the diffuse branch. This was affecting bump maps and reflections.

Fixed

Significant speed improvement rendering a single object that contains multiple packed primitives referencing different disk files/geometry.

Fixed

Dragging materials from the gallery onto objects now works correctly with assets.

Fixed

You can now specify bundles in the object mask parameters of the OpenGL render node.

Fixed

Frustum culling is now disabled when generating shadow maps, so objects outside the view can cast shadows.

Fixed

You can now crop OpenEXR deep pixel images.

Fixed

Poly Soup primitives now work with RIB rendering.

Fixed

Alembic primitives now work with RIB rendering using the AlembicPrimProc procedural shader.

What was new in Houdini 15