Rendering with mPath

mPath is a ground-up redesign of the Modo renderer, with dramatic reduction in controls, versatile hybrid compute capabilities, and granular refinement features. It offers many improvements over the Default renderer, including GPU acceleration for Ray Tracing when NVIDIA OptiX is selected as the Ray Tracing Engine.

Note:  Multiple GPUs are not currently supported by the mPath renderer.

If you have scenes with many lights and you want to render out separate light passes, mPath is a better option for you over the Default renderer as each light can be rendered to a separate render output as part of one single render process. This dramatically reduces render times and improves flexibility in compositing workflows. See Render Outputs Per Light for more information.

The Final Color output for this render, rendered using mPath.

The Light Path Expression output generated for the light tagged "lumi" in the light's LPE Label.

The Light Path Expression output generated for the light tagged "lumiL" in the light's LPE Label.

The Light Path Expression output generated for the light tagged "lumiR" in the light's LPE Label.

The mPath rendering workflow is also best utilized for speed improvements in Ray Tracing and Shadow Ray Tracing, and for effects like depth of field. Shading results are also more accurate with mPath, for example in Fresnel and refractive materials.

The following images demonstrate different ray depth values. Improved contact shadows, and improved reflections between close reflective components occur as Reflection Depth increases. There is increased accuracy with transparent components as Refraction Depth is increased. Accurate refractions require high depth values.

Rendering Scenes Using mPath

1.   In the Shader Tree, select your Render item.

This opens this render item's Properties.

2.   In the Frame sub-tab, set Renderer to mPath.
3.   In the Settings sub-tab, select your Ray Tracing Engine.

Tip:  mPath is a hybrid renderer and can take advantage of the CPU and GPU in tandem. The default Foundry SSE setting uses only the CPU for raycasting. To use the GPU for raycasting, select NVIDIA OptiX.

4.   Adjust the mPath settings in the Render Item's Settings sub-tab.

For more information on what the different options are, see Render Item: mPath Renderer Settings.

5.   Press F9.

The render starts and the Render window opens.

Render Outputs Per Light

With Modo's Default renderer, you have to create separate renders for each light. mPath rendering allows you to create individual light outputs within a single render by giving you the ability to add Light Path Expressions.

Light Path Expressions

Light Path Expressions are character strings that can be used to restrict which kinds of light paths contribute radiance to a particular render output image. A path contribution is only added to a render output if its sequence of events (the vertices of the path) matches the pattern specified by the render output's Light Path Expression string.

All paths start at the camera and end at something that emits light, which can be an emissive surface, a volumetric effect, a light source, or the environment. In between the starting and ending events, zero or more scattering events can occur, in which light bounces off or passes through a surface.

To add a Light Path Expression:

Tip:  To use Light Path Expressions, make sure mPath is selected as your Renderer in the Render item Properties.

1.   Click Render > Add Per-Light Render Outputs.

A Light Path Expressions Output is added to your Shader Tree for each individual light present in the scene, using the naming convention LPE: C.*'<name of light / LPE label>'.

Tip:  Use the LPE Label inside the item Properties to specify a label to be used on that item for Light Path Expressions. LPE labels can be added to lights, materials, environments, and volumetric surfaces.

2.   Select the Light Path Expressions Output in the Shader Tree.
3.   Enter your Light Path Expressions in the Light Path Expression field in the Properties.

Use the following examples to specify your Light Path Expression, or use one of the presets from the Light Path Expression dropdown.

Starting Event Types

C signifies the camera. Since all paths begin at the camera, all valid Light Path Expressions must begin with C.

Scattering Event Types

Syntax Usage

<RD>

Diffuse reflection event.

<RS>

Specular reflection event.

<TD>

Diffuse transmission event, which includes subsurface scattering and translucency.

<TS>

Specular transmission event, which includes refraction and dissolve.

R

A reflection event, where the path continues on the same side as the surface normal. It can be either Diffuse (<RD>) or Specular (<RS>).

T

A reflection event, where the path continues on the opposite side from the surface normal. It can be either Diffuse (<TD>) or Specular (<TS>).

D

A diffuse scattering event. It can be either Reflection or Transmission (<RD> or <TD>).

S

A specular scattering event. It can be either Reflection or Transmission (<RD> or <TD>).

Ending Event Types

Syntax Usage

O

Object. An emissive object (a surface with a nonzero Luminous Amount and Luminous Color).

V

Volumetrics. Currently in Modo it is only used for light added by fog.

L

Light. A direct light source.

B

Background. In Modo this means the light from the environment item.

Special Characters

Syntax Usage

. (period)

A wildcard that can match any event type.

* (asterisk)

Zero or more instances of the preceding event type. Currently in Modo '*' can only occur immediately after the wildcard '.', once per light path expression.

[ ]

An 'or' group, which can match any of the event types listed within the brackets.

' ' (single quotes)

A text label that can restrict the preceding event to one or more items that have been assigned the label appearing within the quotes. Currently, labels cannot appear within square brackets or in between the '.' and '*' characters.

Examples

Syntax Usage

C.*

All paths. This is equivalent to the Final Color render output.

C<RD>.*

Direct and indirect diffuse reflection.

C<RS>L

Highlights (specular reflection of direct lights).

C.*L'sun'

All shading resulting from direct lights having the label 'sun'.

C.*[OB]

All shading resulting from light from emissive objects or the background.

CDS.*

Caustics (light that has scattered from a specular to a diffuse surface).

Viewing Render Outputs Per Light

Once you have created a render using F9 or one of the render commands in the Render menu, you can switch between your different light outputs in the Render window Output dropdown.

The render Output menu, displaying each available render output. There is one Final Color Output, and 3 Light Path Expression outputs.