SoPathTracerMaterial

InventorModule

author

MeVis Medical Solutions AG

package

MeVisLab/Standard

dll

SoPathTracer

definition

SoPathTracer.def

Purpose

The SoPathTracerMaterial module provides the material properties for the geometry and volumes of a SoPathTracer scene. It is typically used either within the input scene of, for example, SoPathTracerMesh or as direct input for modules that have an “inMaterial” input.

The material parameters are intentionally mapped to the range of 0-1 to simplify the specification of meaningful parameters for the user. This mapping also enables the parameters to be specified in LUTs.

Details

The acronym BRDF stands for Bidirectional Reflectance Distribution Function and describes the reflection of light on an opaque surface.

Windows

Default Panel

../../../Projects/MeVisPathTracer/SoPathTracer/Modules/mhelp/Images/Screenshots/SoPathTracerMaterial._default.png

Input Fields

inDiffuseTexture

name: inDiffuseTexture, type: Image

Parameter Fields

Field Index

Alpha: Float

Enable Volume Shader: Bool

Shader Type: Enum

Alpha Mode: Enum

Exponent: Float

Sheen: Float

Back Scattering: Float

Gradient Factor: Float

Sheen Tint: Float

Boundary Bias: Float

Horizon Color: Color

Shininess: Float

Boundary Enhancement: Bool

Horizon Scattering: Float

Silhouette: Bool

Boundary Exponent: Float

Material: Enum

Specular: Float

Boundary Weight: Float

Meshes visible: Bool

Specular Intensity: Float

Clearcoat: Float

Metallic: Float

Specular Tint: Float

Clearcoat Gloss: Float

Offset: Float

sRGB: Bool

Diffuse: Color

Phase Function: Enum

Subsurface: Float

Diffuse Mode: Enum

Phase Function Param: Float

Weight: Float

Emissive: Color

Roughness: Float

Visible Fields

Meshes visible

name: visible, type: Bool, default: TRUE

If checked, the meshes that use this material are visible.

This can be used to show/hide meshes in the scene of a SoPathTracerMesh without complete scene re-computation.

Material

name: material, type: Enum, default: Material_Microfacet

Defines the type of the material.

Values:

Title

Name

Description

​Matte

​Material_Matte

​A matte material with Lambertian diffuse shading (without any Fresnel effects)

​Velvet

​Material_Velvet

​A material the mimicks velvet/cloth (experimental).

​Microfacet

​Material_Microfacet

​A material that offers a microfacet BRDF with Lambertian diffuse and Blinn/Fresnel specular.

​Principled

​Material_Principled

​The multi-purpose material that offers various parameters. See here

Alpha Mode

name: alphaMode, type: Enum, default: Multiply

Defines the alpha combination mode (only applied for meshes).

Values:

Title

Name

​Overwrite

​Overwrite

​Multiply

​Multiply

​Ignore

​Ignore

Diffuse Mode

name: diffuseMode, type: Enum, default: Multiply

Defines the diffuse combination mode.

Values:

Title

Name

​Overwrite

​Overwrite

​Multiply

​Multiply

​Ignore

​Ignore

Specular

name: specular, type: Float, default: 0.5, minimum: 0, maximum: 1

Sets the specular parameter of the microfacet model (0 for matte/rough material, 1 for very specular/glossy material).

Shininess

name: shininess, type: Float, default: 0.5, minimum: 0, maximum: 1

Sets the shininess, mapped to the Blinn exponent of microfacet BRDF.

Specular Intensity

name: specularIntensity, type: Float, default: 0.2, minimum: 0, maximum: 1

Sets the intensity of the specular contribution.

Horizon Scattering

name: horizonScattering, type: Float, default: 0.5, minimum: 0, maximum: 1

Sets the velvet material property Horizon Scattering.

Back Scattering

name: backScattering, type: Float, default: 0.5, minimum: 0, maximum: 1

Sets the velvet material property Back Scattering.

Horizon Color

name: horizonColor, type: Color, default: 1 1 1

Sets the velvet horizon color.

Metallic

name: metallic, type: Float, default: 0, minimum: 0, maximum: 1

Roughness

name: roughness, type: Float, default: 0.5, minimum: 0, maximum: 1

Specular Tint

name: specularTint, type: Float, default: 0, minimum: 0, maximum: 1

Sheen Tint

name: sheenTint, type: Float, default: 0, minimum: 0, maximum: 1

Sheen

name: sheen, type: Float, default: 0, minimum: 0, maximum: 1

Clearcoat Gloss

name: clearcoatGloss, type: Float, default: 0, minimum: 0, maximum: 1

Clearcoat

name: clearcoat, type: Float, default: 0, minimum: 0, maximum: 1

Subsurface

name: subsurface, type: Float, default: 0, minimum: 0, maximum: 1

Alpha

name: alpha, type: Float, default: 1, minimum: 0, maximum: 1

Sets the alpha value of the geometry (not used for volumes).

Diffuse

name: diffuse, type: Color, default: 1 1 1

Sets the diffuse color.

Depending on the Diffuse Mode, it overwrites or it combined with the geometry diffuse color.

Emissive

name: emissive, type: Color, default: 0 0 0

Sets the emissive color.

Enable Volume Shader

name: enableVolumeShader, type: Bool, default: FALSE

If checked, the overwriting of the volume shader settings if the material is used on a volume is enabled.

Shader Type

name: volumeShaderType, type: Enum, default: Shader_Hybrid

Defines the volume shader type.

Values:

Title

Name

Description

​Phase

​Shader_Phase

​Uses the phase function for shading the volume; the gradients of the volume are not used for rendering

​Brdf

​Shader_Brdf

​Uses the material BRDF for shading; the gradients of the volume are used

​Hybrid

​Shader_Hybrid

​Selects between Phase and BRDF shading depending on the gradient magnitude. The gradient magnitude is scaled by Gradient Factor

Phase Function

name: volumePhaseFunction, type: Enum, default: Phase_Isotropic

Defines the phase function to use.

Values:

Title

Name

Description

​Isotropic

​Phase_Isotropic

​Use the isotropic phase function: all directions on the unit sphere have the same probability

​Henyey Greenstein

​Phase_HenyeyGreenstein

​Use the Henyey-Greenstein phase function. The Phase Function Param specifies the “g” parameter of the phase function; meaningful values range between 0.5 and -0.5.

Gradient Factor

name: volumeGradientFactor, type: Float, default: 3, minimum: 0, maximum: 200

Sets the gradient factor.

Phase Function Param

name: volumePhaseFunctionParam, type: Float, default: 0

Sets an extra parameter for volume phase functions.

Silhouette

name: silhouette, type: Bool, default: FALSE

If checked, the silhouette effect is enabled.

This changes the transparency of a surface depending on the angle between the view/ray direction and the normal of the surface; this way, faces whose normals are parallel to the view direction become transparent, while faces that are perpendicular to the ray become fully opaque.

The formula for this alpha factor is:

alpha = pow(dot(normal, rayDirection), exponent) * weight + offset

The silhouette effect is currently supported by SoPathTracerIsoSurface, SoPathTracerMesh, and SoPathTracerVolume.

Exponent

name: silhouetteExponent, type: Float, default: 4

See Silhouette

Weight

name: silhouetteWeight, type: Float, default: 1.5

See Silhouette

Offset

name: silhouetteOffset, type: Float, default: 0

See Silhouette

Boundary Enhancement

name: boundaryEnhancement, type: Bool, default: FALSE

If checked, the boundary enhancement is applied to a volume shader to modulate the opacity of the dataset based on the gradient strength.

It calculates the following alpha, which is multiplied with the voxel’s alpha:

alphaFactor = pow(gradientStrength + bias, exponent) * weight

Boundary Exponent

name: boundaryExponent, type: Float, default: 2

See Boundary Enhancement

Boundary Weight

name: boundaryWeight, type: Float, default: 1

See Boundary Enhancement

Boundary Bias

name: boundaryBias, type: Float, default: 0

See Boundary Enhancement

Hidden Fields

sRGB

name: sRGB, type: Bool, default: TRUE