Share

7.1.4.0

17 Nov 2022

Arnold 7.1.4.0 is a feature release.

Enhancements

  • Apple native CPU support: Arnold natively supports running under Apple M series CPUs, such as the M1 CPUs. This allows Arnold to natively run under DCCs that support Apple native CPUs and in our tests gives speedups of up to 1.45x compared to running with x86_64 Rosetta 2 translation. (ARNOLD-10481)

  • Automatic generation of TX files: Using mipmapped and tiled textures improves time to first pixel, overall render time, and uses less memory. The new options.texture_auto_generate_tx option enables automatic generation of TX textures from source textures. This requires options.texture_use_existing_tx to be enabled. TX files will be generated in the same folder as the source texture, unless options.texture_auto_tx_path is set, in which case all new TX files will be generated into that folder while preserving the existing folder tree. This is enabled by default in Arnold, in all plugins except Arnold for Katana. This feature is designed for when a single Arnold process is auto-creating the TX files. See the full documentation for details. (ARNOLD-12227)

  • Hair melanin and redness: The standard_hair shader's melanin and melanin_redness parameters as well as the AidEonBSDF() function's absorption parameter are now being referenced in a linear sRGB color space so that the direct lighting results match when switching to other rendering color spaces such as ACEScg. The melanin_redness parameter will also now produce a more correct-looking red tint in ACEScg. (ARNOLD-7585)

Arnold 7.1.3.2 Arnold 7.1.4.0

standard_hair.melanin_redness rendered correctly using ACEScg color space (right)

  • Sharp textures through reflections and refractions: Textures seen through specular reflections and refractions, particularly when there is low roughness, such as with clear windows and mirrors, should now look correctly sharper. This can result in higher resolution texture mipmap levels being loaded in memory, so scenes that were affected by this can see an increase in texture cache usage. (ARNOLD-5632)
Arnold 7.1.3.2 Arnold 7.1.4.0
  • Crash reporting: When Arnold detects a crash in Windows or MacOS, it will now open a dialog box asking if you want to report the crash to Autodesk. Submitting this will help us determine which crashes to prioritize fixing as well as aid us in deciphering why a crash occurred. If you provide your email address, when we determine that we have a fix for your crash, we will be able to notify you that a new version of Arnold is available with the fix. This is disabled in plugins in batch rendering and when kick -dw is used so that the dialog box doesn't hang a remote job on a render farm. Silent reporting can also be set, which causes Arnold to automatically report crashes to Autodesk without opening a crash window; this is done in kick by passing it the following argument: -er your_email@address.com. The environment variables ARNOLD_CER_ENABLED and ARNOLD_CER_AUTOSEND_EMAIL can also be used to control the error reporting. See the full documentation. (ARNOLD-10070)

  • MaterialX 1.38.5: Arnold now ships with an updated MaterialX version, see the full release notes. (ARNOLD-12448)

  • Autodesk Analytics Program: A newer version of the Autodesk Analytics Program (ADP) has been integrated into Arnold. This brings stability and performance improvements, including in situations where Arnold is used without internet access. If Arnold can identify the user with their Autodesk account, opt-in settings will automatically download from the internet, simplifying usage across multiple machines. Otherwise a one-time dialog window will appear if the computer does not have preexisting Analytics opt-in information. No dialog window will appear when running kick -dw, making it safe to use on headless render nodes. (ARNOLD-10787)

  • Warn when adaptive sampling is enabled and there is no RGBA AOV: Adaptive sampling will only run on the RGBA (beauty) AOV. If there is no AOV with the name RGBA, then adaptive sampling is disabled. This can be particularly confusing when IPR has a display window and so adaptive sampling is used, but the batch render is done without display (kick -dw for instance) and adaptive sampling stopped working. We now emit a warning when this occurs so this issue can be easily detected. (ARNOLD-12521)

USD Enhancements

  • USD 22.08 The Arnold USD procedural now use USD 22.08.

  • MaterialX support: MaterialX shaders are now supported, both in Hydra and in the USD procedural. usd#1181

  • Alembic support: Alembic references and payloads are now supported by the USD procedural. (ARNOLD-12593)

  • Imager support: Imagers can now be rendered in Hydra and the procedural through an imager node graph connected to the RenderSettings "imager" attribute. usd#1305

  • Skinning improvements: UsdSkel Skinning can now support instances and was made more efficient. Motion blur is now correct in both hydra and the procedural. usd#1291 usd#1078

  • Support shader connections to mesh lights: It is now possible to connect shading graphs to a mesh light color. This can be done by connecting an ArnoldNodeGraph primitive to the mesh attribute primvars:arnold:light:shaders. usd#1294

  • Skinning improvements: UsdSkel Skinning can now support instances and was made more efficient. Motion blur is now correct in both Hydra and the procedural. usd#1291 usd#1078

  • Camera improvements:

    • dataWindowNDC support has been improved for batch rendering. It now adds more pixels to the output image instead of simply adjusting the frustum, when using husk or kick. usd#1271
    • The horizontal and vertical aperture offset attributes in the cameras are now supported, both in Hydra and in the procedural. This enables features such as render regions. usd#1225
  • Cylinder lights: Cylinder lights are now supported in the USD procedural. usd#1231

  • Render settings improvements:

    • We can now set in the USD file which RenderSetting primitive will control the render by pointing the layer metadata attribute renderSettingsPrimPath to the RenderSetting primitive. usd#1235
    • The aov_shader attribute of a RenderSettings primitive can now point to multiple ArnoldNodeGraph. They have to be separated by a space. usd#1321
    • "Abort on error" is now declared as a Hydra render setting, and can be controlled in usd_view or mayaUSD. usd#1259
  • RenderVar improvements:

    • The attribute "arnold:filter" of the RenderVar primitive now defaults to box instead of closest_filter. usd#1313
    • RenderVar aov name can be called "color" for the beauty, it was supported in the render delegate and is now supported in the procedural. usd#1311
  • Improved default sampling values in Hydra: The default sample values were inconsistent between interactive Hydra versus batch rendering (e.g. with husk). This was improved, and now matches the other Arnold plugins. This is an incompatible change for scenes where sampling values were left to default. usd#1006

  • Shader outputs registered in Sdr: The output attributes for Arnold shaders are now registered, along with their type, in the Sdr registry. This allows for applications / plugins to expose shading trees with Arnold shaders with the correct types. usd#1211

  • Environment variable to debug Hydra: In order to help debugging Hydra renders, an environment variable HDARNOLD_DEBUG_SCENE can now be set to a .ass scene filename, allowing the Arnold scene data to be saved out as the render starts. usd#1266

API Additions

  • AiErrorReporting*: The following API has been added for controlling error reporting behavior. (ARNOLD-10070)

     AI_API void AiErrorReportingSetEnabled(bool value);
     AI_API bool AiErrorReportingGetEnabled();
     AI_API void AiErrorReportingSetAutosendEmail(AtString email);
     AI_API AtString AiErrorReportingGetAutosendEmail();
  • Export OSL shaders from MaterialX node definitions: The AiMaterialxGetOslShaderCode() API generates the OSL code corresponding to a MaterialX node definition. This OSL code can then be used to create an OSL shader node. (ARNOLD-12151)

  • Autodesk Analytics Program: DCC to Arnold plugins can use the following API (ARNOLD-10787):

    • AiADPDisplayDialogWindow() should be called without arguments in order to bring up the opt-in dialog window so users can change their opt-in settings. Usually this function is bound to a menu option that the user selects when they want to change opt-in settings. This requires that kick be included alongside the Arnold library.
    • AiADPDisableDialogWindow() should be called whenever Arnold is run headless, since opening up the initial opt-in dialog window could result in a hang when there is no one available to click on the window. Note that this does not disable the Analytics Program.
  • AutoTX flags for maketx: The AiTextureAutoTxFlags() API returns the flags passed to the "maketx" command during automatic TX generation. These can be useful to replicate the same behavior manually. (ARNOLD-12227)

  • Load, write, and resize images: Arnold now exposes utility functions to load images in memory, write images to disk, and resize images in memory. (ARNOLD-11509)

     AI_API         bool        AiLoadImage(const char* filename, const uint8_t format, AtImage& image);
     AI_API         bool        AiWriteImage(const char* filename, const AtImage& image);
     AI_API         bool        AiResizeImage(const AtImage& inImage, AtImage& outImage);

Incompatible changes

  • Hair melanin and redness in ACEScg: The changes to standard_hair shader's melanin and melanin_redness in ACEScg are potentially look-breaking. The absorption parameter for the AidEonBSDF() is now expected to be in a linear sRGB color space. Those changes can be reverted through the enable_deprecated_hair_absorption render option. (ARNOLD-7585)

  • Autodesk Analytics Program: The following API should no longer be used as Arnold will now create the opt-in dialog window. In many cases they have been marked deprecated and will be removed in a major Arnold release. All these functions can be replaced by AiADPDisplayDialogWindow() and AiADPDisableDialogWindow() (ARNOLD-10787):

     AI_API AI_DEPRECATED bool AiADPIntroWasShown();
     AI_API AI_DEPRECATED void AiADPSetIntroShown();
     AI_API AI_DEPRECATED void AiADPDialogStrings(AtParamValueMap&, const char*);
     AI_API void AiADPSetOptedIn(bool wants_optin);
     AI_API bool AiADPIsOptedIn();
  • Autodesk network licensing: Autodesk Network License Manager (NLM) servers have to be updated to version 11.18, otherwise checking out a network license throws a Generic license checkout error (22).

Bug Fixes

  • ARNOLD-12660 - Volume rendering performance regression in Arnold 7.1.3
  • ARNOLD-11448 - Crash stacktrace is not always printed
  • ARNOLD-12613 - Kick not rendering beauty output with HALF token
  • ARNOLD-12590 - [GPU] Single channel 8-bit textures are too bright
  • ARNOLD-12675 - [Maketx] maketx tool doesn't recognize the --ignore-unassoc parameter
  • ARNOLD-12619 - [MaterialX] Channel connections not exported when exporting MaterialX shading networks
  • ARNOLD-12667 - [OCIO] Slow call to the OCIO color manager when reading raw textures in OSL
  • usd#1278 Support visibility overrides on instances in the render delegate
  • usd#1336 Fix empty ProductName rendering as .exr
  • usd#1331 Fix motion blur sampling on skinned instances
  • usd#1329 Fix inverted motion blur in the render delegate when using velocities
  • usd#1315 Fix interpretation of primvars arrays with constant interpolation
  • usd#1309 Fix RenderVar's filter width not translated properly in the procedural
  • usd#1306 Allow to render deepexr RenderProduct with kick
  • usd#1282 Don't set UsdUvTexture uvset when st coordinates are used
  • usd#1281 Fix crash when a volume prim density field is invalid
  • usd#1232 Set output to half precision for RenderVars with half types
  • usd#1214 Make Sdr node discovery results consistent across renderers

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.
  • x86-64 CPUs need to support the SSE4.1 instruction set. Apple Mac models with M series chip are natively supported.
  • GPU rendering works on Windows and Linux only and requires an NVIDIA GPU of the Ampere, Turing, Volta, Pascal, or Maxwell architecture. We recommend using the 495.46 or higher drivers on Linux and 511.09 (Quadro), 511.09 (GeForce), or higher on Windows. See Arnold GPU for more information.
  • OptiX™ denoiser requires an NVIDIA GPU with CUDA™ Compute Capability 5.0 and above.

The driver type must be set to DCH.

In the driver page, select "Windows Driver Type:" DCH

The cache also needs 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 .

Was this information helpful?