Share

7.1.2.0 - Arnold User Guide

25 May 2022

Arnold 7.1.2.0 is a feature release bringing multiple USD enhancements as well as many bug fixes.

System Requirements

  • Windows 10 or later, with the Visual Studio 2019 redistributable.

  • Linux with at least glibc 2.17 and libstdc++ 4.8.5 (gcc 4.8.5). This is equivalent to RHEL/CentOS 7.

  • macOS 10.13 or later .

  • CPUs need to support the SSE4.1 instruction set. Apple Mac models with M series chips are supported under Rosetta 2 mode.

  • GPU rendering works on Windows and Linux only and requires an NVIDIA GPU of the Ampere, Turing, Volta, Pascal, or Maxwell architecture.

  • Optix™ denoiser requires an NVidia GPU with CUDA™ Compute Capability 5.0 and above.

  • We recommend using the 511.09 (Quadro), 511.09 (GeForce) , or higher on Windows and 495.46 or higher drivers on Linux . See Getting Started with Arnold GPU for more information.

  • The driver type must be set to DCH.

I n the driver page select "Windows Driver Type:" DCH

The cache will also need to be re-populated after installing a new Arnold version, updating to a new NVIDIA driver , or changing the hardware configuration of GPUs on the system. More information can be found here .

This version breaks binary compatibility with Arnold versions 7.0 and older. Shaders, procedurals, and other plugins compiled against Arnold 7.0 and older are not compatible with this version of Arnold and will need to be updated and recompiled.

Autodesk Network Licensing version : Arnold 7.1 switches to ARNOL_2023 licensing.

  • Single-user subscriptions will work with Arnold 7.1. The plugin installers automatically register the new version. If you do not use a plugin, then after you download Arnold, open the Arnold License Manager and click Register .
  • Existing network licenses will not work with Arnold 7.1. Log on to your Autodesk account to generate your new ARNOL_2023 licenses.

USD Enhancements

  • Mesh Lights : Geometry lights are now supported in the render delegate ( usd#1080 )
  • Color Management : When a usd file is loaded, the color manager node is set based on render settings parameters ( usd#946 usd#1042 )
  • Motion Blur from Render Settings : A usd scene with Render Settings primitive can be rendered with motion blur ( usd#1089 )
  • Varying topologies and motion blur : Support velocity motion blur on geometries with varying topologies (mesh, curves, points) on both the procedural and the render delegate ( usd#1090 )
  • Support arnold primvars in instances : When an instancer has a primvar for an arnold builtin attribute (e.g. matte), we now propagate it to its instances ( usd#1100 )
  • Support UsdPreviewSurface displacement output : scenes where UsdPreviewSurface is used as a displacement shader, through its attribute displacement are now supported. This is needed to render the Alab scenes ( usd#1130 )
  • Support light linking on instances : We can now support setting a point instancer, or an instanceable prim, in light linking ( usd#1128 )
  • Optimize nested instances in the render delegate : The memory consumption for nested instances (point instancer having another point instancer as a prototype) has reduced dramatically in Hydra ( usd#1124 )
  • Render NurbsCurves as UsdGeomCurves: Usd Nurbs Curves were previously ignored by Arnold. They are now rendered as basic UsdGeomCurves ( usd#1120 )
  • Support instanceable prims with variant overrides: It is now possible to render an instanceable prim referencing another primitive, and override its variants ( usd#1127 )
  • Support per-instance velocity blur : The Arnold render delegate now supports point instancers with varying amount of instances, where it's the velocity blur that drives motion blur  ( usd#1092 )
  • Usd Writer reuses eventual existing material primitives : This is needed for MayaUsd exports, so that the original mayaUsd material is kept, and Arnold shaders are assigned in the "arnold" context ( usd#1139 )
  • Support shader connections to lights in Hydra : Using an ArnoldNodeGraph primitive, the Arnold render delegate now supports connecting arbitrary shading trees to light's colors ( usd#1141 )
  • Support lights filters in Hydra : Similarly to shader connections, arnold light filters (gobo, etc...) can now be assigned to lights, through an ArnoldNodeGraph primitive ( usd#1141 )
  • Improve shader dependency graph in the render delegate : The tracking of shader connections (for materials, lights, light filters, etc...) is now more robust, and fixes crashes when disconnecting or reconnecting shaders  ( usd#1158 )

API Additions

  • Universe comparison: The new AiUniverseCompare() API allows the comparison of 2 universes, returning a boolean result. It can receive an optional type mask so that only nodes of types matching that mask are taken into account for the comparison. Finally, it can optionally return a list of all the differences found. (ARNOLD-10171).

Incompatible Changes

  • Connection priority in MaterialX document: Setting both a value and a connection as input of a node is undefined behavior in MaterialX. Arnold will now prioritize the connection over the value when both are defined. (ARNOLD-11198).

Bug Fixes

  • ARNOLD-12299 - Crash when writing .ass file expanding procs without a render session
  • ARNOLD-12232 - Memory leak when rendering deep EXR layers
  • ARNOLD-11809 - Random crash when rendering multiple scenes in parallel
  • ARNOLD-12211 - [GPU] Optix denoiser memory leak when creating and destroying render sessions successively
  • ARNOLD-12177 - [GPU] Crash with ramp shader after aborting due to an error
  • ARNOLD-12166 - [GPU] Texture memory leak when creating and destroying render sessions successively
  • ARNOLD-12165 - [GPU] Incorrect volume bounds
  • ARNOLD-357     - [Licensing] Licensing error "[clm.v1] product key not found
  • ARNOLD-12144 - [maketx] Unwanted log messages
  • ARNOLD-12171 - [MaterialX] Crash when exporting a volume shader to MaterialX
  • ARNOLD-11198 - [MaterialX] Connection is ignored when a node input also has a defined value
  • usd#1073 Resolve node attributes from referenced files
  • usd#1093 Fix instanceable references in the same USD file
  • usd#1104 Compute visibility until the eventual root prim
  • usd#1129 Support UsdUvTexture relative paths with udims
  • usd#1133 Set outputs layer names only if required
  • usd#1136 Fix uninitialized UV coords with leftHanded meshes

Was this information helpful?