Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Enhancements

  • New USD procedural: Arnold now ships with a new usd procedural node, based on USD 19.05. It resides in an external dynamic library that is by default located in the "plugins" directory of the Arnold core package. Note that you can find the source code of this procedural and other USD components for Arnold at  https://github.com/Autodesk/arnold-usd. See  https://github.com/Autodesk/arnold-usd/releases for specific release notes. (#7806#9240)
  • kick USD files: You can now use kick to render USD files directly from the command line. Thanks to the Arnold extensions to USD, there is a 1:1 mapping between .ass and .usd representations. (#9214)
  • kick specific frame: Kick supports a new -f argument to directly set the options.frame parameter, and load the correct frame in USD files. (#9264)
  • String replace operator: The new string_replace operator matches and replaces parts of string parameters, optionally depending on the OS Arnold is running on. (#9021)
  • Cubic inverse camera radial distortion: A new cubic_inverse lens radial distortion compatible with the 3ds Max physical camera has been added, selectable through persp_camera.radial_distortion_type. The classic cubic distortion is still the default. (#9247)
  • Lens tilt controlspersp_camera.lens_tilt_angle has been added to control lens tilt angles with respect to the projection plane. The vertical and horizontal angles are specified in degrees. This is useful in architectural renderings to compensate perspective transformation for vertical lines. (#9061)
  • Lens shift controlspersp_camera.lens_shift has been added to shift the lens position. This is useful to recenter the subject after using tilt. The shift is given in normalized screen coordinates: +1 will move the frame center to the right or bottom edge. Note that lens shift will affect the render in a different way than screen_window, notably with distortions or vignetting, since one is a lens effect and the other just selects the part of the rendered image that will be output. (#9061)
  • OSL builtin structs : We now support OSL builtin structs such as vector2color2vector4color4matrix33 as input and output parameters for OSL shaders. Those structs are exposed as corresponding Arnold types on nodes. (#8862)
  • Faster interactive progressive rendering on Linux: Fixed a Linux-specific slowdown that was preventing scaling with many threads when processing buckets. We now observe up to 6x faster interactive progressive rendering on simple scenes. (#9296)
  • Faster procedural initialization: The initialization of scenes with a high number of procedurals is now better multithreaded. We measured up to a 2.1x improvement in initialization times using 8 cores. (#8931)
  • Reduced noise on smooth transmissive thin-walled surfaces: In the standard_surface shader, using thin-walled refraction with 0 roughness should now be noise free with a single sample, and still energy preserving. (#9135)
  • Profiling in the Alembic procedural: You can now get statistics from the Alembic initialization phase in the Arnold profiling output so you will be able to tell if any objects in Alembic archives take a particularly long time to generate. (#9105)
  • Autodesk analytics program available for Windows: We have extended support for the Autodesk analytics program to Windows, so that all three platforms are now supported. It is disabled by default unless another Autodesk product has opted in. (#8784)
  • Controllable auto-instancing on ASS procedurals: You can now disable the default automatic instantiation of procedurals pointing at the same ASS file with the auto_instancing parameter on each procedural or by the procedural_auto_instancing option. This workaround is sometimes useful when overriding procedural parameters with operators. (#9261)
  • Arnold runtime license: You can now legally redistribute the Arnold runtime as part of your application, check for terms of use in the SDK's EULA. (#9370)
  • Updated MaterialX library: The MaterialX node definition for subsurface_radius on standard_surface has been modified to match Arnold. (#9237)
  • Updated OpenSSL: Updated OpenSSL to version 7.68.0/1.1.1d. (#9356)
  • Updated OpenEXR: Updated OpenEXR to version 2.4. (#7396)

GPU enhancements

API additions

Bug fixes