OctaneRender® supports participating Mediums inside objects. These settings are stored in Media nodes, which are attached to the corresponding input pin of Diffuse, Specular, Null, and Universal material nodes.


There are numerous types of nodes available for medium creation. Additionally, there are a series of Switch nodes that can be used to connect multple medium nodes to one input.

  • Absorption Medium - Produces the appearance of a material that absorbs light while passing through a surface. The resulting color depends on the distance that light travels through the material.
  • Random Walk - A newer variant of subsurface scattering that utilizes a stochastic or random process for the scattering of light through an object. This provides the most realistic result when rendering scatter volumes.
  • Scattering Medium - Similar to the Absorption medium, but with an additional option for simulating subsurface scattering. Subsurface scattering is the phenomena that gives human skin and similar organic surfaces their characteristic glow under certain lighting conditions. It's a major component for creating the look of realistic skin.
  • Schlick Phase Function - An independent node that can be used to control which direction the scattering occurs.
  • Standard Volume - Provides volume medium options with comprehensive controls for adjusting volume, scatter, transparency, emission, and temperature parameters based on imported VBD grid data. It is not meant to be used as a medium for materials, instead it is typically used with an imported VDB file.
  • Volume Medium - Designed to add color and other volumetric qualities to transmissive objects. This node works best with VDB files but can also be connected to material medium inputs. Please see the Volume Medium & Volume Gradient topic for more details.
  • Volume Gradient - Designed to be used with VDBs. This node maps density or temperature values from volumetric data to specific colors and other properties. Please see the Volume Medium & Volume Gradient topic for more details. 


To render with Media nodes, the Path Tracing, Photon Tracing, or PMC render kernels are the best choices. You can render mediums using the Direct Light kernel, but only if the Medium node is connected to a Diffuse material, and if you set the kernel's Diffuse Mode to GI.


To add a Medium node to a scene, right-click anywhere in the Node Graph Editor and select Media from the context menu (Figure 1). 



mediums



Figure 1: Selecting a Medium node from the Node Graph Editor


There are some things to keep in mind about using Mediums with meshes and specular materials:


Prepping Compatible Materials & Meshes

Specular Materials 

When using a Specular material, set the value of the Reflection parameter to a low value because only the part of the spectrum that is not reflected can enter the object for scattering. If Reflection is set to 1, all light reflects regardless of the Transmission value. If Reflection is set to 0, all light transmits through the surface, but the result is an unnatural appearance. Reflection values of 0.1 - 0.2 are good starting points.

Null Material

The Null material node can be used for mesh objects that have an invisible surface but contain a medium. This is equivalent to setting up a Specular material with IOR 1 and a Reflection of 0 and a Transmission of 1. However, that methodology no longer makes sense with nested dielectrics. The Null material was created to make a medium with no surface work in all cases.

Universal Material

The basic setup when using the Universal material will be to set the Transmission value to 1. Set the Albedo to 0. Make sure to set Metallic to 0 so that the material functions as a dielectric material, not a metallic material. Set the Dielectric IOR to 1 (air) or a higher value for more refraction (1.4 for water). Due to the integrated nature of the Universal material, all of these parameters can be mixed and matched to design interesting but perhaps not-so physically accurate materials. 

Diffuse Material

Mediums can be used with the Diffuse material as well. Although this is not typically the case. Setting the Diffuse material's Transmission parameter to 1 or white will provide some transmission but the volume will still be quite opaque due to the Diffuse material's characteristic of absorbing more energy. The Opacity parameter can be lowered but this will just make the volume more see-through since the Diffuse material does not provide any parameter to control IOR. 

Meshes

Objects using mediums nodes must be a closed volume. A single-sided plane will not work. For example, a plane representing a leaf will not work if a material with a medium is applied to it. The one exception is a plane representing the ground: OctaneRender treats the ground plane as an infinitely deep surface.