You are here: Rendering > VDB Voxel

VDB Voxel

The VDB Voxel Item allows you to render externally created simulations stored in the open-source VDB voxel format, as well as generate volume data from meshes or particles. The OpenVDB format is a super efficient method of storing hierarchical data structures. Simulations can be volumetric in nature, such as smoke and clouds, or represent a surface, such as water or other liquids. Volumetric effects must be connected to a Volume Item for rendering in Modo. Surfaces can be connected to Blobs, or use the internal meshing feature, when the Draw Mesh Surfaces option is enabled.

Rendering Volumes

The VDB Voxel Item is added to the scene in the Item List under Add ItemsVolumesVDBVoxel. With the item selected, from the Properties panel, use the Load File button and locate the desired OpenVDB file (<filename>.vdb). Once loaded, an octree-like grid appears in the 3D Viewport, representing the voxel shape. At this point the item won't yet render. To render using a Volume Item, the VDB Voxel Item and the Volume item must be connected in the Schematic viewport. This is done by selecting both items in the Item List and then, in a Schematic viewport, clicking the Add Selected button (or by dragging and dropping into the viewport). Once there, connect the VDBVoxel relationship connector to the Voxel Source input on the Volume Item. For information on working in the Schematic viewport, refer to Schematic Viewport.

Surfacing is applied by way of an item mask in the Shader Tree. Select the Volume item and right-click to open the contextual menu and select the Create Item Mask command. In the Shader Tree, selecting the resulting Material item within the generated mask and edit the Volumetric Properties under the Material Rays sub-tab.

Rendering Surfaces

The VDB Voxel Item is added to the scene in the Item List under Add ItemsOtherVDBVoxel. With the Item selected, from the Properties panel, use the Load File button and locate the desired OpenVDB file (<filename>.vdb). Once loaded, an octree-like grid appears in the 3D Viewport, representing the voxel shape. At this point the item won't yet render. To create a surface, simply enable the Draw Mesh Surfaces option. When enabled, the polygonized surface is visible in the 3D Viewport, as well as in any renders (for large VDB files generating the surface may take some time). Surfacing is applied by way of an item mask in the Shader Tree. Select the VDBVoxel Item and right-click to open the contextual menu and select the Create Item Mask command. In the Shader Tree, select the resulting Material Item within the generated mask and edit any of the standard material properties available.

Meshing Particles

Load the particle simulation into the scene, or generate a particle simulation using any of the provided particle simulation components. Once completed, make sure to cache the simulation. The VDB Voxel Item is added to the scene in the Item List under Add ItemsOtherVDBVoxel. With the item selected, from the Properties panel, use the Source Item selector and select the desired Particle Simulation as the source element. Next, enable the Draw Mesh Surfaces option to mesh the particles with a surface. From here the Filtering settings as well as the Voxel's Radius and Resolution settings come into play. They can be used to modify the look of the resulting surface. Surfacing is applied by way of an item mask in the Shader Tree. Select the VDBVoxel Item, right-click to open the contextual menu, and select the Create Item Mask command. In the Shader Tree, select the resulting Material item within the generated mask and edit any of the standard material properties available.

The following Source options are available for VDBVoxel:

File Name - displays the currently-loaded path and file name. To update the current VDB file, use the Load File button.

Load File - opens an OS-specific dialog, allowing you to locate and select the VDB file to be loaded.

Source Item - serves two purposes: you can load Mesh Item layers and they are voxelized by the VDB Voxel item, or additionally a particle source can be specified, and with the Draw Mesh Surfaces option enabled, the particles can be "meshed" (meaning a polygonal surface is applied). When a Particle Source is defined, the Filter settings and the Voxel settings come in to play to control the look of the surfacing.

The following Filter options are available for VDBVoxel:

Filter mode - determines a method of smoothing, applied to the surface generated from particle. The options possible are None, Mean, Gaussian, and Median. The None option disables filtering, while the Mean, Gaussian, and Medial all average the surface values differently, producing slightly different results. Results are also dependent on the Width setting and the Resolution of the Voxels.

Width - defines the size of the averaging filter applied to the generated surface values when a Filter Mode other than None is selected. Larger sizes produce a smoother surface but reduces detail overall.

The following Voxels options are available for VDBVoxels:

Radius - when meshing a particle source (loaded through the Source Item control) the Radius value defines the rendered size of the virtual sphere shape formed around each particle position. The Resolution setting and the Filtering values determines how sphere-like the final result end up being.

Resolution - determines how finely the particles are meshed. Low values can be easily smoothed with filtering, but produce limited detail. Higher values produce more detail, but may also require additional filtering to remove resolution artifacts.

The following Visualization options are available for VDBVoxel:

Feature - defines which stored features of the VDB file is used to represent the visualized form in the 3D Viewports.

Draw Guides - toggles visibility of the representative grid-like display in the 3D Viewports based on the Feature definition.

Draw Mesh Surfaces - assign a polygonal mesh surface to the selected Features, or in cases where a Particle Simulation is loaded, it meshes the particles, adding a polygonal surface to virtual spheres around each particle.

Draw Mesh Frames - when loading a multi-framed sequence, enabling this option loads all the subsequent frames and draw them in the 3D Viewports.

The following Cache option is available for VDBVoxel:

Clear Cache - used to remove any stored data from RAM. This resets the cache if the Mode is set to Fast or Full, or removes it if the Mode is changed to None.

NOTE:  You can access the additional cache options Cache Mode and Cache Size in the Rendering preferences. In the menu bar click System > Preferences... > Rendering > Final Rendering. For more information, see VDBVoxel Cache.