Arnold for Maya 5.5.3

Arnold for Maya (MtoA) 5.5.3 for Maya 2026.2 includes significant performance improvements, initial GPU support for Toon shading, a new HTML-based Render Stats Report, and many bug fixes. This page includes all the new features and changes added to MtoA since Maya 2026 was released with MtoA 5.5.0.

See the Arnold for Maya release notes for the full list of recently added features and bug fixes.

OpenVDB points support in the aiVolume node

You can now load VDB files that contain points data and render them as Arnold points primitives (MTOA-2234)

Render logs can now be saved with snapshots in Arnold Render View

When saving snapshots you can now save the current render log and view them in the Arnold Render Logs window (ARNOLD-12266)

Render stats report

An HTML-based, interactive viewer for the Arnold render statistics . You can quickly visualize and inspect detailed render stats such as frame render time, memory usage, render time by category or by node, and texture usage.

GPU Toon shading

Arnold GPU now includes initial support for the Toon shader and the contour filter. The Toon shader is currently limited to rendering direct lighting only (no reflections, refractions, or indirect lighting).
Toon Toon + Contour filter

Light transforms in point instancer

When an instancer contains lights, it now takes their local matrix into account if instance_inherit_xform is enabled.

Improved Global Light Sampling

Rendering photometric (IES) lights and mesh lights using Global Light Sampling is now higher quality, using the same render settings and taking the same render times. (ARNOLD-13692, ARNOLD-15859)
Before-and-after comparison: improved renders of various IES profiles (with equal render times and render settings)
Before-and-after comparison: improved renders of a motion-blurred mesh light (with equal render times and render settings)

Render To Texture now supports USD stage selection

Rendering photometric (IES) lights and mesh lights using Global Light Sampling is now higher quality, using the same render settings and taking the same render times.

Users can now use Render To Texture on nodes inside the Maya USD stage. The UI has been improved to make it easier to use (MTOA-2180)

Performance enhancements

USD Enhancements

  • Hydra-based USD translation: When you render USD, Arnold now uses Hydra by default to handle the translation of USD to Arnold, which makes the render consistent with the Hydra render delegate usd#2248. You can roll back to the previous behavior with options.usd_legacy_translation on, or by setting the environment variable PROCEDURAL_USE_HYDRA=0. (ARNOLD-15977).
  • Reduced USD memory usage: USD geometry buffers are shared with Arnold, which removes one copy of the scene in interactive mode usd#2148. As an example, rendering a high resolution USD mesh with 30 million polygons now consumes 5.5 Gb instead of 7.5 Gb to render.
  • During batch renders, the Hydra-based USD procedural now releases the USD stage memory once the translation is done usd#2228.
  • Optimize invisible primitives: Don't translate invisible primitives to Arnold when using the render delegate, which can significantly reduce the scene memory used. usd#2264
  • Optimize unused child nodes: Destroy child nodes in the Hydra procedural instead of disabling them. This reduces the memory footprint on some scenes. usd#2277
  • Update default interactive FPS: Improve the default interactive Frames Per Second settings in the render delegate, allowing faster maximum FPS and slower minimum FPS. usd#2276
  • Optimize display driver creation: The render delegate now uses a single display driver for all AOVs, instead of using one driver per AOV. This reduces initialisation and render time. usd#2284
  • Angular velocity: The point instancer angular velocity now works in the render delegate. usd#2285

API changes

Incompatible changes

Component changes

Bug Fixes

  • MTOA-2150 - AOV UI not resizing correctly with Render Settings window
  • MTOA-2279 - Unload Reference crashes Maya
  • MTOA-2247 - USD for Maya export sets incorrect framesPerSecond
  • MTOA-2294 - When a LookdevX node is duplicated, created, or disconnected, render is not updated
  • MTOA-2301 - Enabling Color temperature in lights is not updated in IPR when a texture is connected
  • MTOA-2311 - USD for Maya exports author the persp camera at the origin
  • MTOA-2228 - Render Settings > AOV browser is blank on macos
  • MTOA-2348 - Render settings: render unit parameter not working
  • ARNOLD-14467 - [GPU] GPU crash during JIT compilation
  • ARNOLD-15686 - Utility AOV shader crashes Arnold if skydome has a texture
  • ARNOLD-15719 - Crash when triplanar.smooth_before_displacement is passed to displacement
  • ARNOLD-15834 - Sampling noise is now consistent across renders
  • ARNOLD-15842 - OSL shader not rebuilt when a parameter is modified
  • ARNOLD-15858 - Per-light sampling performance regression fix
  • ARNOLD-15892 - Procedural bounds are not updated when its child objects undergo motion transforms
  • ARNOLD-15905 - Lens effect doesn't update correctly when the render resolution changes
  • ARNOLD-15914 - [GPU] Arnold should throw an error when the shader stack size cannot be determined
  • ARNOLD-15939 - Nodes created in procedural_update ignore procedural matrix
  • ARNOLD-15942 - Crash when modifying a parameter that triggers procedural reloading during scene update
  • ARNOLD-15943 - Procedural bounding box is not recalculated after creating or removing nodes in procedural_update, leading to clipped objects in renders or poor performance.
  • ARNOLD-15948 - Crash when destroying an object node from procedural_update
  • ARNOLD-15983 - OpenEXR DWAA float textures read incorrectly
  • ARNOLD-15985 - [MaterialX] Parameter with "defaultgeomprop" attribute set overrides connection
  • ARNOLD-15986 - [MaterialX] Crash when node with the same name exists inside a nodegraph
  • ARNOLD-15993 - Raw drivers receiving incorrect number of samples
  • ARNOLD-16000 - Dependencies should not be added when enable_dependency_graph is disabled
  • ARNOLD-16005 - Hang in AiProceduralViewport with ginstance nodes
  • ARNOLD-16006 - Adding Cryptomatte causes Opacity AOV to be black
  • ARNOLD-16041 - [MaterialX] connections to named nodegraph outputs do not work
  • ARNOLD-16044 - [GPU] IPR crash when modifying a shape's parameter
  • ARNOLD-16050 - [MaterialX] ND_mix_surfaceshader renders black when assigned from materialx operator
  • ARNOLD-16053 - Triplanar produces artifacts on GPU with some NVIDIA drivers
  • ARNOLD-16060 - Lights under procedurals cannot be transformed during interactive renders
  • ARNOLD-16065 - Multipart render fails because parts do not have unique names
  • ARNOLD-16073 - Prevent instancer from setting invalid custom names to child nodes
  • ARNOLD-16081 - Subdivided meshes included in cached procedurals were not always correctly identified, which might cause differences in the subdivision results
  • ARNOLD-16116 - Render report fixes and cleanups
  • ARNOLD-16155 - Emission cone is too narrow for IES lights in Global Light Sampling
  • ARNOLD-16157 - Lights in moved procedurals instances are not properly moved
  • ARNOLD-16181 - Performance regression in initialization of instanced procedurals
  • ARNOLD-16184 - Crash when options.outputs is set to a null array pointer
  • ARNOLD-16187 - Change default for procedural_instancing_optimization from exhaustive to conservative
  • ARNOLD-16203 - Failures and crashes when rendering to exr in append mode
  • ARNOLD-16214 - Procedural bounding box not correctly recalculated after adding nodes in procedural_update
  • ARNOLD-16234 - Crash when rebuilding an instanced object
  • ARNOLD-16247 - Crash when using AiProceduralExpand without a render session
  • ARNOLD-16253 - Publishing compounds with custom arnold nodes does not render
  • ARNOLD-16289 - Updated the metadata for the density, roundness, width_edge, height_edge, and ramp parameters of the light blocker shader
  • ARNOLD-16299 - Ensure that a procedural's bounding box is computed after all child nodes are updated
  • ARNOLD-16301 - Improve clarity of GPU error messages when CUDA fails to load
  • ARNOLD-16344 - Incorrect scene unit conversions when processing procedurals in procedural cache
  • ARNOLD-16347 - Crash when using an invalid filename on an instanced procedural
  • usd#1402 - Incorrect transform when exporting parented objects to USD
  • usd#2208 - Fix unnecessary allocations in the instancer and mesh
  • usd#2218 - Fix Hydra warning with orthographic cameras
  • usd#2219 - Fix race condition in Hydra with node names
  • usd#2224 - Fix warning "HdArnoldDriverMain is already installed"
  • usd#2225 - Fix crash in point instancers with missing prototypes
  • usd#2227 - Hydra procedural breaks the Arnold log
  • usd#2232 - Fix incorrect husk render of left-handed indexed meshes with normals
  • usd#2234 - Fix warning "Selected Hydra renderer doesn't support prim type 'RenderSettings'"
  • usd#2239 - OpenVDB asset with explicit fieldName does not render in Hydra
  • usd#2268 - Re-enable instancer motion blur on the first rendered frame by recomputing the transform matrices when the shutter is updated
  • usd#2269 - Fix lost shader connections when the Hydra procedural was updated (mtoa)
  • usd#2296 - Proper support of stats mode in the render delegate
  • usd#2303 - Improve detection of hidden primitives that should be skipped
  • usd#2309 - Fix recent conflict between primitives visibility and purpose
  • usd#2313 - Arnold primvars aren't taken into account for ArnoldProceduralCustom primitives in usd
  • usd#2231 - Fix velocity motion blur coherence when there is varying number of instances
  • usd#2240 - Default volume shader should be assigned in the USD procedural
  • usd#2260 - Deepexr settings were not set properly with husk renders
  • usd#2287 - Fix mismatch in default value for GI_transmission_depth between USD and Hydra
  • usd#2298 - Fix a potential crash when multiple Hydra renders initialize concurrently.
  • usd#2300 - Animated sequences render an incorrect filename in Hydra mode

System Requirements