HtoA 6.3.4.0 - Arnold for Houdini
29 August 2024
HtoA 6.3.4.0 is a major feature release that uses Arnold 7.3.4.0.
Installation
Download Arnold for Houdini from your Autodesk Account. See Download Arnold for more information about downloading HtoA from your Autodesk Account.
Follow these installation instructions
Enhancements
- COP Texture support in classic HtoA: The image node's filename parameter now supports the op: syntax to reference COP textures, modifiers are also supported. During IPR the textures update live as the Copernicus/COP2 network is updated, and when you export an .ass archive, the textures are baked to disk (HTOA-531).
Copernicus Classic COPs - Arnold Render Settings Improvements: The Arnold Render Settings LOP has a second input which can be used to feed in additional render vars (HTOA-2206):
The AOVs tab has been updated with convenient switches for standard render vars and an improved parameter interface for creating custom AOVs from various sources (including LPEs or light groups):
Tabs with lots of parameters (like the Sampling and Device tabs) now have subgroups to improve readability
Sampling Tab Device Tab An Arnold tool has been added as a convenient way to create a linked Arnold Render Settings and a USD Render LOP:
- Houdini Log Viewer Integration: Plugin translation logs are now passed to the log viewer panel as 'HtoA' and 'HtoA-py' (HTOA-2530).
- OpenPBR improvements
- View-dependent coat absorption: The coat lobe now more accurately models the absorption tinting at grazing angles, producing a slightly more realistic look. (ARNOLD-15377)
SSS color matching: The SSS model has been tuned to ensure that the color of dense SSS more closely matches the supplied
subsurface_color
, as required by the OpenPBR specification. (ARNOLD-15328) The following images compare diffuse base color with the subsurface colors of Standard Surface and OpenPBR Surface:- top row: diffuse with a given
base_color
- middle row: Standard Surface (dense) SSS, with same color assigned to
subsurface_color
- bottom row: OpenPBR (dense) SSS, with same color assigned to
subsurface_color
- top row: diffuse with a given
- Scaling of emission luminance from nits to Arnold units:
nits_per_unit
was added to theoptions
node, and OpenPBR Surface'semission_luminance
(in nits) is internally scaled down by thisnits_per_unit
value (defaulting to 1000) to bring it into Arnold units. This ensures that the default soft-maximum ofemission_luminance
of 1000 nits corresponds to the former behavior of Standard Surface atemission
1. (ARNOLD-15364)
Faster startup times on GPU: We have made several optimizations to improve startup and scene update time on GPU. These improvements will be most noticeable on scenes with many objects. Startup times on Windows are also now on par with startup times on Linux. On a scene with 1 million instances, we see the following improvements when compared to the previous release. (ARNOLD-15271, ARNOLD-15279, ARNOLD-15310)
7.3.3.1 7.3.4.0 Improvement GPU update time (Windows) 204s 17s 12X GPU update time (Linux) 37s 18s 2X Faster texture opacity lookups in OSL shaders: OSL shaders used in opacity inputs (for example OpenPBR Surface's
geometry opacity
) now read opacity mask textures faster and with smaller memory footprint. (ARNOLD-15340)Improved node and parameter introspection with kick
kick -info <node>
now groups node parameters by their UI Group metadata, or by whether the parameters are Input or Output. (ARNOLD-14198)For example, here's the first few UI groups of openpbr_surface:
$ kick -info openpbr_surface node: openpbr_surface type: shader implicit output: CLOSURE parameters: 65 multioutputs: 0 filename: <built-in> version: 7.3.4.0 Type Name Unlinkable Default Bounds ------------ ------------------------------------ ------------- --------- Base FLOAT base_weight 1 [0, 1] RGB base_color 0.8, 0.8, 0.8 FLOAT base_diffuse_roughness 0 [0, 1] FLOAT base_metalness 0 [0, 1] Specular FLOAT specular_weight 1 [0, +inf] RGB specular_color 1, 1, 1 FLOAT specular_roughness 0.3 [0, 1] FLOAT specular_ior 1.5 FLOAT specular_roughness_anisotropy 0 [0, 1] Transmission FLOAT transmission_weight 0 [0, 1] RGB transmission_color 1, 1, 1 FLOAT transmission_depth 0 [0, +inf] RGB transmission_scatter 0, 0, 0 FLOAT transmission_scatter_anisotropy 0 [-1, 1] FLOAT transmission_dispersion_abbe_number 20 [0, +inf] FLOAT transmission_dispersion_scale 0 [0, 1] BOOL transmission_transmit_aovs * false INT dielectric_priority * 0
kick -info <node>.parameter
now includes all available metadata for the parameter, including linkability, bounds, help, as well as the type, name, and default value. (ARNOLD-15306)$ kick -info openpbr_surface.fuzz_weight node: openpbr_surface param: fuzz_weight type: FLOAT default: 0 metadata: help: The presence weight of a fuzz layer that can be used to approximate microfibers, for fabrics such as velvet and satin as well as dust grains. max: 1 min: 0
Handle update for OSL shader changes: Information about shaders linked to an OSL shader is stored when using interactive render mode, so that any change in those shaders will cause the OSL shader to be automatically updated. (ARNOLD-14983)
Duplicate node name warnings: Warnings are emitted when adding a node with a name that already exists or renaming an existing node to an empty string. (ARNOLD-12596)
Bug Fixes
- HTOA-2698 - Fixed Solaris shader translation for the new ramp nodes
- HTOA-2608 - The Arnold Edit Material LOP now imports shaders with a different input layouts than the VOP node as expected
- HTOA-2608 - Fixed the Arnold Edit Material LOP to handle ramp nodes correctly
- HTOA-2112 - Added image format menu to filename parm on the Arnold Render Settings LOP
- HTOA-2554 - Removed unneeded time dependency on the Arnold Render Settings LOP
- HTOA-2259 - First AOV is now correctly hooked up in Arnold Render Settings LOP
- HTOA-2694 - Fixed MSVC version for ZMQ, now it is using v143 for Houdini 20/20.5
- ARNOLD-14735 - OIDN denoiser bucket artifacts during negative-AA progressive passes
- ARNOLD-15380 - [GPU] small memory leak when using AOV shaders
- ARNOLD-15384 - [GPU] memory leak each time an OSL shader is modified
- ARNOLD-15385 - Crash on standard_volume when modifying material interactively
- ARNOLD-15392 - [GPU] small memory leak when using OSL shaders
- usd#2075 - Do not set options attributes during a Hydra render
System Requirements
- Houdini, Houdini FX, Houdini Indie and Houdini Education
- 19.5.805
- 20.0.751
- 20.5.332
- Linux with at least glibc 2.28 and libstdc++ 9.3.1 (gcc 9.3.1) for Houdini 19.5, 20 and 20.5. This is equivalent to RHEL/CentOS 7.
- Linux with at least glibc 2.17 and libstdc++ 11.2.1 (gcc 11.2.1) for Houdini 20/20.5. This is equivalent to Rocky 8.
- macOS 10.13 or later, macOS 11 or later for Houdini 19.5
- Apple Mac models with M series chips:
- Natively supported by Arnold for Houdini 19.5
- Supported under Rosetta 2 mode for older versions of Houdini
- x86-64 CPUs need to support the SSE4.1 instruction set. Apple Mac models with M series chip are supported natively mode.
- GPU rendering works on Windows and Linux only and requires an NVIDIA GPU with the Maxwell architecture or later.
- On Linux, we recommend 535.104 or higher drivers.
- On Windows, we recommend 537.13 or higher drivers.
- Optix™ denoiser requires an NVidia GPU with CUDA™ Compute Capability 5.0 and above.
- Intel OIDN GPU support is limited to:
- MacOS
- Apple native CPUs (M1 and newer)
- Windows
- Intel Xe dedicated and integrated GPUs
- NVIDIA GPUs using Turing or newer architectures
- AMD GPUs with RDNA2 (Navi 21 only) and RDNA3 (Navi 3x) architectures
- MacOS