Share
 
 

What's New in MAXtoA 5.7.1

3ds Max 2025.1 ships with updated denoising, improved MaterialX and OCIO support, plus API support for viewport display of procedural curves in MAXtoA 5.7.1.1.

3ds Max 2025.1 ships with MAXtoA 5.7.1.1, which includes Arnold 7.3.1.1.

This release includes updated denoising, improved MaterialX and OCIO support, API support for viewport display of procedural curves, as well as multiple bug fixes.

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

Denoising by default with Intel® Open Image Denoise (OIDN)

The Intel® Open Image Denoiser imager is now added by default to new scenes (MTOA-1787)

without denoising with _imager_denoiser_oidn

Arnold RenderView updated

Arnold RenderView (ARV) has new snapshot functionality and other polish. (MAXTOA-1727)

Arnold RenderView is now dockable

The Arnold RenderView window (ARV) is now dockable by default, and follows the behavior of other dockable windows. If this is not desired, it can be turned off in the MAXtoA render settings. (MAXTOA-1722)

More enhancements

  • Update Intel® Open Image Denoise (OIDN) to version 2.2.2: The updated denoiser has 10% better performance on CPU, includes some critical bug fixes, and handles high-frequency details better. (ARNOLD-14772)
  • OptiX denoiser runs on progressive negative AA passes: The OptiX denoiser imager now denoises the low-resolution progressive passes (renders with AA < 0). This should result in higher quality feedback in IPR. (ARNOLD-11487)

    Left side shows the previous behaviour where denoising was only applied to the AA > 0 passes. Right side is new behaviour where all progressive passes are denoised.

  • OCIO environment variable behavior follows 3ds Max color management settings: The color management setup in 3ds Max 2025 has explicit modes to use different OCIO configurations: a default mode, a custom mode, and a mode to follow the OCIO environment variable. MAXtoA passes this mode setting on to the Arnold renderer so that Arnold uses the OCIO environment variable override only when 3ds Max is explicitly set in the OCIO - Environment Variable mode. (MAXTOA-1737)
  • Ability to use custom imagers: MAXtoA now fully supports the new Imager API, and user-supplied imager plug-ins (in the Arnold plugin path) are usable from inside MAXtoA. Since Imagers are now considered their own node type in Arnold, they have their own selectable category on export. (MAXTOA-1736)
  • MaterialX node definitions: The MaterialX node definitions for Arnold shaders now use the standard surfaceshader and volumeshader types, which make them easier to use in DCCs and mix with standard library shaders. The UI for Arnold MaterialX shaders is also improved with the addition of parameter groups and node categories. (ARNOLD-14717, ARNOLD-14736, ARNOLD-14716)
  • Curves in procedural viewport API: Procedurals now return curves nodes in `AI_PROC_POLYGONS` viewport mode. This is an API change only. MAXtoA does not yet use this API for displaying curves in the viewport. (ARNOLD-14756)
  • Support metadata from core: MAXtoA can now use metadata from Arnold core for things like the help text and tooltips for shaders, imagers, and other nodes. However, MAXtoA still ships with its own overrides for some metadata. (MAXTOA-1715)

USD Enhancements

  • Light linking on custom procedurals: You can now use light linking on custom procedurals such as Yeti in the render delegate. (usd#1730)
  • Improved tooltips: The tooltips in DCCs for Arnold nodes in USD are much improved. (usd#1835)
  • Imager node support: USD support for the new Arnold `AI_NODE_IMAGER` node type. (usd#1870)
  • Export ArnoldOptions as UsdRenderSettings: The Arnold USD exporter converts the Arnold options node to UsdRenderSettings, UsdRenderProduct, and UsdRenderVar nodes. (usd#1852, (usd#1865)
  • Velocities motion blur for points: Points with a velocities attribute now render with motion blur. (usd#1868)
  • Better default for transmission ray depth: Set the default transmission depth to 8, so that the default settings work better with glass, and to match default in other Arnold plugins like HtoA and MtoA. (usd#1889)

API changes

A public API is now available for imagers. This adds support for custom and third-party imagers in Arnold. (ARNOLD-10322)

See Imagers Nodes in the Arnold Developer Guide for examples of imager plugins.

The API is built upon a new `AI_NODE_IMAGER` node type and is implemented via two main API.

imager_evaluate

`imager_evaluate` allows you to modify output pixels of a render.

```c++
#define imager_evaluate
static void ImagerEvaluate(AtRenderSession* render_session, AtNode* node, struct AtOutputIterator* iterator, int bucket_xo, int bucket_yo, int bucket_size_x, int bucket_size_y, uint16_t tid)
```

imager_prepare

`imager_prepare` is an optional API allows you to query the outputs an imager will receive and prepare any evaluation specific data.

```c++
#define imager_prepare
static void ImagerPrepare(AtRenderSession* render_session, AtNode* node, const AtNode* driver, struct AtOutputIterator* iterator, AtImagerSchedule& schedule);
```

Additionally, there are a couple of helper APIs for the `imager_prepare` method. These API let you request additional inputs to be rendered for imager evaluation, and to add additional output layers that the user may want to write to the driver.

```c++
AI_API bool AiImagerAddInput(AtRenderSession* render_session, const AtNode* imager, const AtNode* driver, int aov_type, AtString aov_name, AtNode* filter);
AI_API bool AiImagerAddOutput(AtRenderSession* render_session, const AtNode* imager, const AtNode* driver, int output_type, AtString output_name);
```

Was this information helpful?