Volume SDF
The Volume SDF node acts as a placeholder for volume geometry (VDB). It is different from a simple Volume node, which depends on traditional triangulated volumetric shaders. The Volume SDF node rebuilds a Signed Distance Field (SDF) based on the surface level sets defined in the VDB file, and recreates the mathematical description of the geometry instead. The new Volume SDF takes the same resolution as the original volume, but these can feed into OSL shaders, which allow the Volume SDF to take on an infinite resolution and even appended with procedural effects (Figure 3).
To use the Volume SDF node, right-click on the Nodegraph Editor, then click on Geometry, followed by Volume SDF (figure 1). From the operating system's File Explorer, select and import the volume VDB file as a Volume SDF.
Volume SDF |
Figure 1: Adding the Volume SDF node to the scene
Figure 2: Comparison of the original Volume node and the Volume SDF node
Figure 3: A modified OSL texture node that adds procedural effects to level set surfaces
Applications Of SDF Surfaces And The Vectron Primitive
Figure 4: An example of an SDF smooth union with a Material mix implemented as part of the union
OctaneRender® will render SDF surfaces defined using OSL shaders without needing to convert them to a Mesh first. You can change the surfaces with input variables without having to wait for any processing, and you can also create networks of set operations such as unions, subtractions, intersection, and their smooth variants - none of which need to be meshed before rendering, and all are compiled using OSL.
Figure 5: Example of OSL shaders with input variables to manipulate the shape of Vectron objects
Figure 6: Example a more complex network of set operations (unions, subtractions, intersection, and their smooth variants)
You can download the example of the VolumeSDF Node in Figure 4 here: sdf-union-material4.orbx