OctaneRender supports participating media inside objects (absorption, SubSurface Scattering, and Volume). These settings are stored in medium nodes, which are attached to the corresponding input pin of Diffuse or Specular material nodes.
There are three types of medium nodes, absorption, scattering and volume.
- Scattering has parameters for absorption, scattering of light passing through the medium, and emission inside the medium.
- Absorption is a simple version with only absorption parameters.
- Volumes are described in more detail in the Effects Overview section. Volume mediums are used on volumetric surfaces such as smoke and clouds and require a VDB file to create the volume objects. VDB files are not supported natively by Maya but can be imported using the OpenVDB tools. More information on this is available at http://www.openvdb.org/.
To render using medium nodes, the Path Tracing or PMC render kernels are the best choice. It is possible to render mediums using Direct Light kernel but only if the medium node is connected to Diffuse material and if Diffuse mode is set to GI.
The Medium nodes are found in the Octane Medium in the Octane section of Hypershade’s Create Node section (Figure 1). These nodes are connected to the Diffuse or Specular materials using their respective Medium slot.
Figure 1: Medium nodes are found in the Octane section of the Hypershade’s Create node window.
Medium nodes should only be added to materials applied to meshes that define a closed volume. A single sided plane will not work. For example a plane representing a leaf will not work properly if a material with a medium is applied to it. The one exception is a plane representing the ground. Octane will treat the ground plane as an infinitely deep surface.
Specular materials are the best choice when using a Medium node. Set the Transmission, and Reflection parameters to a non-zero value, or a color other than black, or a texture map. (Figure 2).
Figure 2 : A Medium node is connected to an Octane Specular material. Reflection and Transmission parameters are set above zero.
When connecting a Medium node to a Diffuse material, set the Transmission to a non-zero value, or a color other than black, or a texture map.
When using a Specular shader, the value of the reflection parameter should be set to a low value because only the part of the spectrum that is not reflected can enter the object for scattering. If the reflection is set to 1.0, all light gets reflected regardless of the transmission value. If reflection is set to 0.0, all light gets transmitted through the surface, however, the result is an unnatural appearance. Reflection values of 0.1–0.2 are a good starting point.
If the reflection parameter uses a color, the light transmitted through the surface will be shaded as the complementary color (e.g. if the reflection is set to yellow, the transmitted light is bluish see Figure 3).
Figure 3 : A diagram shows that “complementary” colors are opposite each other on the color wheel.
The Absorption Medium
Absorption is controlled with the absorption map, which defines how quickly light is absorbed while passing through a medium. A setting of 0.0 means no absorption. The higher the value the faster light is absorbed by the medium.
The absorption texture is multiplied with the Scale parameter. This allows setting a wide range of values more easily (see figure 4). Mediums are affected by the scale of the scene and the objects that have the shader applied. Use the Scale slider in the Medium node to tune the effect. In some cases you may not see much of the effect unless you lower the Scale setting.
Figure 4 : The parameters for the Absorption medium node in the Attribute Editor.
Invert Abs inverts the absorption color so that the absorption channel becomes a transparency channel. This helps visualize the effect of the specified color since a neutral background shining through the medium will appear approximately in that color.
The Scattering Medium node is used to create the look of subsurface scattering. This is the phenomena where light rays enter a surface, are scattered within the material of surface and then exit again. It is the key to creating the look of realistic human skin and other organic surfaces.
The Scattering parameter determines how quickly light is scattered as it moves through the surface. A high value means that light is scattered sooner as it enters the surface, a low value means that light passes deeper into the surface before it is scattered. A value of 0 disables scattering entirely.
The Phase function controls the direction of the light as it is scattered in the surface. A value of zero results in light being scattered equally in all directions, positive values result in forward scattering, where the photons continue in roughly the same direction they were going when they entered the surface. Negative values result in backwards scattering where the light moves through the surface in the direction roughly opposite to the angle at which the enter the surface.
The Scattering node also has an absorption setting. Creating a desired look is achieved by balancing Absorption, Scattering and Phase.
Mediums are affected by the scale of the scene and the objects that have the shader applied. Use the Scale slider in the Medium node to tune the effect. In some cases you may not see much of the effect unless you lower the Scale setting.
Vol Step Len is only applicable when rendering Volume mediums. This parameter may need to be adjusted depending on the surface. The default value for the step length is 4m. Should the volume be smaller than this, you will likely need to decrease the step length. Please note that decreasing this will reduce the render speed. Increasing this value will cause the ray marching algorithm to take longer steps. Should the step length far exceed the volume’s dimensions, then the ray marching algorithm will take a single step through the whole volume. Most accurate results are obtained when the step length is as small as possible. Figure 5 shows the parameters for the Scattering node.
Figure 5 : The parameters for the Scattering medium node in the Attribute Editor.
Video Tutorial: Rendering Mediums with Lighting