Share

Volumes - Arnold for 3ds Max

Further Reading
See Volumes in the Arnold User Guide

Volume file formats, such as OpenVDB, will allow storage of much larger datasets while being optimized for random access to volume data, which is more efficient for rendering. OpenVDB is an open-source C++ library comprising a novel hierarchical data structure and a suite of tools for the efficient storage and manipulation of sparse volumetric data discretized on three-dimensional grids.

  • Custom AOVs are not currently supported with volumes.
  • To reduce the amount of noise in a volume, you must ensure that the lights in your scene have enough volume_samples.
  • Volumes can only receive indirect lighting from other emissive volumes when the volume_ray_depth is above 0.
  • Tutorials about working with volumes can be found here.
  • The Volume object is available in the Create tab, Geometry category, and Arnold grouping (along with the procedural and Alembic objects):

  • In the volume object, you can choose between a single VDB file or an animated sequence of VDB files. When selected, you can choose the Parameter and Velocity grids in the VDB file, and make them available to the shaders:

  • Once you press Ok, the volume object will change the size to the selected VDB, and the optional standard_volume shader will be applied. Drag it to the Slate editor to modify its parameters.

Arnold volume (VDB)

Parameters

VDB File Path

The location of the volume VDB file.

Volume Shader

Volume shader that is assigned to the volume. Typically this is a standard_volume shader.

Grids

A space-separated list of OpenVDB grids to read and make available as channels in the volume shading context. Examples of Grid names are density, fuel, heat, temperature or velocity.

Velocity Grids

Either one vector grid (e.g., v or vel) or three float grids (e.g., vel.x, vel.y, vel.z) representing the velocity field, to be used for motion blur. No motion blur will occur if an invalid combination of grids or if no grids are specified. Note that all velocity grids declared here are also available as channels in the shading context.

Ray Marching Step Size

Sets the size for sampling inside the volume. It should be small enough to capture the smallest feature in the volume (aka the Nyquist limit). If the size is too large, aliasing, bias, or banding will appear. Smaller (and therefore more accurate) sizes will increase render times while larger sizes will render more quickly.

Auto

Choose a step size relative to the voxel size.

Manual

Choose a step_size (where an actual step size is given).

Note:

More information about volume step_size can be found here.

Animation Support

On

Enable reading a sequence of VDB files.

Sequence Start

The start frame of the VDB file sequence.

For example, if your sequence on disk goes from name1001.vdb to name 1100.vdb, you can pick the files from 1050 to 1080 by entering these values as the Sequence Start and the Sequence End respectively.

Sequence End

The end frame of the VDB file sequence.

Animation Start

The timeline's frame at which the VDB sequence starts to be used.## Animation End

The timeline's frame at which the VDB sequence ends to be used. If there are not enough files in the sequence to cover the Animation Start-End range, the sequence can be repeated, either from its start or in ping-pong mode.

Replay Speed

Sets the playback speed of the volume's animation.

Loop Animation

When on, if the animation range exceeds the sequence range, the sequence is looped.

Extend Range

If on, the first and last VDB file of the sequence is used before and after the Animation start and end frame respectively. Else, for those frames, nothing gets rendered.

Ping-Pong Replay

When on, if the animation range exceeds the sequence range, the sequence is read forward, then in reverse, then forward again and so on.

VDB Workflow

  • Create the Volume by going to Arnold in the Create Tab and select Volume. Click and drag in the viewport to create the volume.

  • Choose which VDB file to use from VDB File Path.

  • Once you have opened your VDB file, you will be presented with a choice of which VDB Grid to use that the VDB volume was originally saved with.

  • By default, MAXtoA will assign a standard_volume shader to the volume. Disable this option if you wish to use a different standard_volume shader.

Select from the VDB Grids that the volume has been saved with. A default standard_volume shader will be assigned to it.

Tip:

If you need to further edit the result of the reading of a channel, for instance, to color correct it, there are the volume_sample_RGB and volume_sample_float shaders.

Reducing Noise

To reduce the amount of noise in a volume, you must ensure that any lights in your scene have sufficient volume_samples, or that you have enough AA samples.

volume_samples: 1 volume_samples: 3

Volume AOVs

A list of available AOVs associated with Volumes.

Was this information helpful?