OpenVDB is an open source hierarchical data structure for volumes. The OpenVDB Maya plugin ($RMSTREE/plug-ins/OpenVDB.so) is supported by Renderman for Maya.
With one click on the icon, RfM automatically creates the default setup for reading, visualizing, and rendering OpenVDB volume data.
For more information about OpenVDB, see the OpenVDB FAQ.
How To Read OpenVDB
In Renderman for Maya, to read an OpenVDB file, simply click on the OpenVDB icon. This will create an OpenVDB Read, which allows a user to browse to an OpenVDB file via the file picker for the VDB File Path.
How To Visualize OpenVDB
After an OpenVDB file is loaded, an OpenVDB Visualize tab will appear in the Attribute Editor.
The OpenVDB Visualizer displays the OpenVDB volume data inside Maya as well as provides options to change how the OpenVDB data is emitted to the RIB.
By default, Renderman for Maya emits an RiVolume. If the Surface checkbox is checked in the OpenVDBVisualize node, or if the OpenVDB file contains only level set data, then an RiBlobby is emitted instead. In this case the user will want to wire in a different shader than the default PxrVolume. Renderman for Maya's Custom Shading Group attribute can be added to connect in a shading group.
The following options can be used to change how the data gets emitted to the RIB for your OpenVDB volume.
VDB Grid Name
A VDB grid is a sparse tree representation of voxel data. For instance, a float grid stores one single-precision floating point value per voxel. After the OpenVDB file is loaded, a list of grid names become available in the pulldown menu. Pick the grid name you want to sample.
Instead of creating a RiVolume, this will create a RiBlobby. Note that turning this on can slow down your render.
This sets the threshold for the volume.
The following attributes are for visualizing only. Changing them does not change the render of the volume.
Active Value Bounding Box
Show/hide active value's bounding box.
Show/Hide A root node that has a dynamic branching factor has internal nodes that have fixed branching.
Show/Hide Values stored in leaf nodes correspond to individual voxels; all other values correspond to "tiles"
Show/Hide Values stored in nodes of type
InternalNode correspond to regions of index space with a constant value and active state and with power of two dimensions. Every value in a grid has a binary state that is referred to as its "active state". The interpretation of this on/off state is application-specific, but typically an active (on) value is "interesting" in some sense, and an inactive (off) value is less interesting.
Show/Hide As above but applies to voxels. Values stored in nodes of type
LeafNode (which, when they exist, have a fixed depth), correspond to individual voxels. These are the smallest addressable units of index space.
OpenVDB Shading Network
The OpenVDB Visualizer icon automatically sets up the volume shading group.