Share

7.1.1.0 - Arnold User Guide

30 Mar 2022

Arnold 7.1.1.0 is a feature release containing multiple USD improvements as well as interactivity optimizations, overrides for the point instancer and 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.
Important: We recommend using the 511.09 (Quadro), 511.09 (GeForce) , or higher on Windows and 495.46 or higher drivers on Linux . See Arnold GPU for more information.

The driver type must be set to DCH.

In 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 .

Important: This version breaks binary compatibility. 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.

Enhancements

  • Adjust how often imagers are run during IPR: A new options setting has been added called options.imager_overhead_target_percent which can be used to control how often imagers should run during a render. An imager_overhead_target_percent setting of 0 will cause the imagers to only run at the end of the render. The default value of 1 will periodically run the imager during the render so that the overhead from running the imager is no more than approximately 1%. ARNOLD-11750
  • Noice imager runs only at end of render: The noice imager, which is generally too slow for interactive IPR, will no longer run during a render and instead is only run at the end of the render pass. ARNOLD-11761
  • Overrides for specific instances in the instancer: Instead of specifying a value for all instances, overrides for specific instances can be defined by declaring a user data array of instanceidxs_ prefix on the instancer node. ARNOLD-12142
  • Reference time for OpenVDB volumes: The global options.reference_time attribute is now also used as the time the grid data exists, so velocity motion blur is relative to this reference time. Usually this is zero, which for frame-relative time values means "on the frame", which is typical of OpenVDB simulation data. ARNOLD-12143

** USD Enhancements

  • Author defaultPrim in the USD writer: When an Arnold scene is saved as USD, a defaultPrim is now authored, which is needed for nested instances usd#1064
  • Don't force export of ArnoldOptions: When exporting USD files, we now store the list of authored frames as custom metadatas in the usd file, and no longer need to force the export of the ArnoldOptions primitive usd#963
  • Write shading trees under their material's scope: When authoring shading trees, the shaders are now written under their material's hierarchy. usd#1067
  • Support velocity/acceleration in Hydra: Meshes and curves with varying topologies and velocity or acceleration primvars are now supported in the render delegate usd#1039
  • Reduce default subdivision level in Hydra: The different subdivision quality settings in Solaris are now interpreted as (0, 1, 2, 3) subdiv_iterations in Arnold, instead of (0, 2, 4, 8) which was too high for Arnold subdivision usd#1056
  • Control amount of arnold-usd threads when rendering a usd file : A new environment variable ARNOLD_USD_READER_THREADS allows to control how many arnold-usd threads will be used to translate the usd data to arnold when running kick on a usd file. Default value is 0 and means that all threads will be used usd#1055
  • Support light temperature in Hydra: Usd native lights have a light temperature attribute that is now supported in the render delegate usd#1051
  • Default to smooth meshes in Hydra: In the render delegate, meshes are now smoothed by default, as in the usd procedural usd#24
  • Specify which RenderSettings to use when calling AiSceneLoad: A custom parameter render_settings allows to control which RenderSettings primitive to export to Arnold options node usd#1017

API Additions

  • AiRenderSessionGetOptions(): AiRenderSessionGetOptions() will return the render options node used by a given render session. This read-only render options node holds a separate set of options, initialized from the universe options but partially modified for render specific requirements. The differences with the universe copy of the options are mostly related to invalid values that are sanitized for rendering and temporary changes to sample values made during interactive render. ARNOLD-12012

Incompatible Changes

  • Arnold 5 porting guide removed. The Arnold_5_Porting_Guide.pdf has been removed. Arnold-11696

Bug Fixes

  • ARNOLD-12158 Bucket corners in kick should not be drawn for negative AA passes

  • ARNOLD-12154 Poor sample quality when using multiple render sessions

  • ARNOLD-12143 Volume velocity motion blur does not support non-normalized shutter intervals

  • ARNOLD-12139 The legacy bifrost procedural for Max does not work with an explicit universe

  • ARNOLD-12123 Changing the output driver from an operator doesn't work

  • ARNOLD-12122 Arnold-7.1.0 slowdown when reading hdr images

  • ARNOLD-12119 Crash rendering ramp with one point

  • ARNOLD-12097 Crashes related to null strings

  • ARNOLD-12026 Overlapping spotlight and camera artefact

  • ARNOLD-11954 Overlapping dielectrics with equal IOR can generate a spurious specular reflection

  • ARNOLD-12201 [GPU] Random slowdowns

  • ARNOLD-12017 [GPU] rendered output can contain random invalid pixels

  • usd#1049 Fix instanceable primitives without prototype

  • usd#1045 Fix crashes with invalid indexed primvars

  • usd#1031 Fix element connection in arnold node graphs

  • usd#1025 Fix random results with instancer and multiple referenced files

  • usd#1024 Ensure the lights normalize attribute is authored in usd

  • usd#1005 Get proper instancer matrices when some instances are hidden

  • usd#1010 Fix shadow/light linking when some lights don't have any collection

  • usd#1019 Fix light linking with nested procedurals

  • usd#1012 Light linking referencing shape parents

  • usd#1088 Fix attribute calls in camera reader that were causing random crashes

  • usd#1071 Write enum attributes as tokens instead of strings

  • usd#1084 Fix issues when writing USD geometry lights

  • usd#1081 Add point_light to the list of schemas to be generated

Was this information helpful?