7 November 2024
HtoA 6.3.5.0 uses Arnold 7.3.5.0.
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
Render error code in Husk : When a batch render errors out or is aborted, husk now exits with error code, (for Houdini 20.5 and up) (usd#1174)
Optimized Cryptomatte and GPU support: Arnold now has an internal implementation of Cryptomatte that adds support for GPUs and improves performance on CPU. Cryptomatte now consumes less memory for samples, making it easier to use higher AA settings, progressive rendering, and adaptive rendering (when properly used with FIS). In a simple scene rendered at 640x480 resolution with three cryptomattes the below table shows improvements in peak memory. (ARNOLD-11042)
CPU | 7.3.4.1 | 7.3.5.0 |
---|---|---|
fixed-AA | 1346MB | 442MB |
progressive | 3433MB | 532MB |
adaptive | 8584MB | 441MB |
GPU | 7.3.4.1 | 7.3.5.0 |
---|---|---|
fixed-AA | - | 799MB |
adaptive | - | 810MB |
specular_weight
parameter was increased above 1. This has been corrected so that the Fresnel conserves energy in this case, saturating to a mirror reflection in the limit of high specular_weight
.Improved instancing in the alembic procedural: Instanced geometries are now better handled in Alembic. This fixes the known issues with make_instance
, which is now enabled by default. (ARNOLD-15209, ARNOLD-8364, ARNOLD-8924, ARNOLD-7818)
Faster OpenVDB volume intersection: Intersecting OpenVDB volumes are optimized for many-cores. Scenes where volume::intersection is a sizable component of render time can see large speedups. One scene where it accounted for 73% of render time on a 128-core machine saw the volume::intersection time drop to 16% of total time, for an overall 3x speedup in render time. (ARNOLD-15448)
Faster uv_camera baking: The uv_camera.grid_size
default is now 0 instead of 16, where 0 specifies that the grid_size is automatically chosen. Using the new default, baking a sphere with 800k triangles is now 6.5x faster than the previous default. (ARNOLD-15441)
Add more options settings to image metadata: Images with metadata, such as EXR files, now include arnold/AA_samples_max
, arnold/AA_adaptive_threshold
, arnold/fis_filter
, and arnold/fis_filter_width
metadata. (ARNOLD-15521)
Support element linking of array parameters in ramp shaders: Arnold GPU now supports the linking of individual ramp parameter components for the position
, value
, color
, and interpolation
parameters. (ARNOLD-7120)
OSL version 1.13.3.0: OSL has been upgraded to version 1.13.3.0. See OSL release notes for details. (ARNOLD-15319)
MaterialX OSL closure support: the OSL closures defined by MaterialX (v1.38) for definition of layered physical materials have been ported to Arnold. For example, all the closures needed to implement the OpenPBR are now available in OSL. See OSL Shaders for more information
Hydra mode in the usd procedural: A new parameter hydra
can be used to render the USD data through a Hydra framework. This supports interactive updates, and can be used to reproduce the same behaviour as a Hydra render delegate (usd#2109 usd#2107 usd#2019 usd#2017 usd#2003)
transform_keys primvar: When the primvar arnold:transform_keys
is set, it controls the number of time samples used for the matrices of Arnold nodes (usd#2111)
Arnold Cameras in Hydra: Arnold cameras (vr, cylindrical, spherical, uv, fisheye) are now supported in Hydra. You create the Arnold cameras as USD built-in cameras, with a string primvar arnold:camera
that specifies the Arnold camera type. (usd#1738 usd#2082)
Improved USD export that better supports Hydra: USD exports now support Hydra, so that scenes from Maya or 3ds Max now render as expected in Houdini Solaris.
Fixed mismatches between USD and Hydra renders: Several changes were done, either on the procedural or the render delegate, in order to have a consistent behaviour in both code paths.
UsdPlane support: UsdPlane primitives were previously ignored, and are now rendered in Arnold. (usd#2058)
Improved support for ArnoldProceduralCustom primitives: ArnoldProceduralCustom primitives are now supported like other geometric primitives, including instancing and visibility settings. (usd#2064)
Profiling / Stats: Render settings can now specify filenames to output arnold profiling or stats files (usd#1118)
Node API: Added new API functions to declare an update dependency between a consumer node and a specific parameter on a producer node (a consumer can depend on a producer through multiple parameters). Added another API to clear the dependency between two nodes (for all parameters). Finally, the previous API is deprecated. The same behaviour can be replicated by using the new AiNodeAddDependency
API and passing an empty or null string for the parameter, to create a dependency that covers all parameters (this should be used only when absolutely necessary). (ARNOLD-15483)
AI_API void AiNodeAddDependency(AtNode* consumer, const AtNode* producer, const AtString param);
AI_API void AiNodeClearDependency(AtNode* consumer, const AtNode* producer);
AI_API AI_DEPRECATED void AiNodeAddDependency(AtNode* consumer, const AtNode* producer);
Limit node update recursion: Previously, node updates were propagated up the parent chain for all node types. We now do this for shape nodes only. This can improve node update time. (ARNOLD-15492)
Avoid unnecessary node updates: Resetting a node parameter to the current value will no longer cause a node update. (ARNOLD-15402)
Per-parameter update dependencies: Previously, a node update dependency caused a node to be updated whenever the dependency node was modified. We now define these dependencies based on parameters, so the node update is triggered only when one of the specified parameters on the dependency node was modified. (ARNOLD-15483)
options.camera
so that the shader is updated when a new camera is set. (ARNOLD-15483)@P
on packed alembic primitives no longer breaks shader assignment