Skip to content

Materials

Materials control the appearance of 3D objects in a scene. Within Autograph, you can:

  • Create new materials to use with 3D objects
  • Assign materials to 3D objects
  • Override an existing material

Creating a material

To create a new material, go to the Outliner panel, and in the Add menu choose Material.

New material

A new primitive of type Material is created. Select it to display its properties in the properties panel.

Assigning a material to an object

After creating a material, you need to assign it to one or more objects in your scene. To assign a material to an object, (1) select the object in the Outliner and (2) go to the Materials panel. (3) Using the drop-down, pick a material from the list of available materials in the scene. Your material is now assigned to an object and should be visible in the viewport.

Assign material

Note

Do not forget to add a Light to your scene, otherwise non-emissive materials will appear black.

Overriding a material

Danger

Currently, overriding a material loaded from an existing USD asset will reset its properties to default values (including any references to texture maps). This is a limitation of the current system.

To override an existing material primitive, (1) navigate to the material in the Outliner and (2) click the Edit primitive button on the panel below.

Override material

The overriden material's properties are now displayed.

Material properties

Material properties

Autograph has two rendering backends (render delegates): Storm, part of the USD/Hydra project, and Filament, a real-time physically based rendering engine. Each has different rendering capabilities and material models. Autograph offers a unified material model, allowing you to specify your material once and have it work with both renderers.

Under the hood, the parameters of this unified model are translated to delegate-specific material models:

  • for Storm, material properties are translated to the corresponding UsdPreviewSurface input, when such an input exists.
  • for Filament, material properties are translated to the Lit and Unlit models provided by Filament.

Texture Maps

Some material properties have an associated Map parameter, which can be connected to a texture map in order to make the value vary over the surface of the object. Map parameters are regular image parameters, meaning that anything you would use as layer source could also be used as an animated texture map on a 3D object. This includes:

  • Video sources
  • Generators
  • Whole sub-compositions

Modifiers are also supported on texture maps.

Generators as texture maps

When binding a generator to a texture map parameter, make sure that the Output Format of the generator is not Unbounded, otherwise rendering will fail.

Tangent-space normal maps

Normal maps should be specified in tangent space. We use MikkTSpace internally to generate a standard tangent space when tangents are not explicitly specified on a USD primitive.

List of material properties

Some parameters are only supported by a specific render delegate, this is indicated below in the "Supported Delegates" column.

Note

Some material properties have both a numeric input and a texture map input (e.g. Base Color and Base Color Map). The texture map input, if it is connected, takes precedence over the numeric input.

Parameter Description Supported Delegates
Shading Mode Selects the overall shading model of the material
  • None: unlit model, the material appearance is unaffected by lighting
  • Normal: generic physically-based shading model
Filament only
(only Normal model supported on Storm)
Blending Mode How the material blends with the rest of the scene. See the dedicated section below. Filament only
Mask Threshold Alpha value threshold for the Alpha Masked blending mode. All
Base Color
Base Color Map
Base color (diffuse albedo or specular color for Metallic materials).
  • Storm: maps to diffuseColor
  • Filament: maps to baseColor
All
Opacity
Opacity Map
The opacity of the material. Filament only
Metallic
Metallic Map
Binary value specifying whether the material is metallic or not. Filament only
Roughness
Roughness Map
Controls the perceived smoothness of the surface. See Roughness Filament only
Reflectance
Reflectance Map
For non-metallic materials, control the specular intensity and index of refraction of materials. Reflectance Filament only
Sheen Color
Sheen Color Map
Controls the appearance the sheen layer, above the base layer and below the clear coat. See Sheen color Filament only
Sheen Roughness
Sheen Roughness Map
Roughness of the sheen layer. See Sheen roughness Filament only
Clearcoat
Clearcoat Map
Strength of the clear coat layer. See Clear coat Filament only
Clearcoat Roughness
Clearcoat Roughness Map
Roughness of the clear coat layer. See Clear coat roughness Filament only
Normal Map Defines the normal at a point on the surface. See Normal. All
Bent-Normal Map Defines the average unoccluded direction at a point on the surface. See Bent normal. Filament only
Clearcoat Normal Map Defines the normal used for the clear coat layer at a point on the surface. See Clear coat normal. Filament only
Anisotropy Enables anisotropic highlights. See Anisotropy. Filament only
Anisotropy Direction Controls the direction of anisotropic highlights. See Anisotropy direction. Filament only
Ambient Occlusion
Ambient Occlusion Map
Defines how much of the ambient light is accessible to a surface point. See Ambient occlusion. All
Emissive
Emissive Map
Emissive component of the material. All
UVs name Name of the texcoord primvar to use on the primitive. All
Wrap S Wrapping mode of the S texture coordinate. All
Wrap T Wrapping mode of the T texture coordinate. All
Specular Ambient Occlusion Mode See Lighting: specularAmbientOcclusion Filament
Refraction Mode Controls the refraction effect. None: disable refraction. Screen-space: screen-space refraction. See Blending and transparency: refractionMode Filament
Refraction Type Defines the refraction model used. See Blending and transparency: refractionType Filament
Reflection Mode Controls the source of specular reflections. Environment-Only: only light from environment lighting (dome lights) is reflected. Screen-space: enable screen-space ray-marched reflections. See Lighting: reflections Filament
Transparency Mode Controls how transparent objects are rendered. See Blending and transparency: transparency Filament
Transparent Shadows Enables shadows on transparent objects. See Lighting: transparentShadow Filament
Specular Anti-Aliasing Enables aliasing reduction on specular highlights. See Anti-aliasing: specularAntiAliasing Filament
Specular Anti-Aliasing Variance See Anti-aliasing: specularAntiAliasingVariance Filament
Specular Anti-Aliasing Threshold See Anti-aliasing: specularAntiAliasingThreshold Filament
Clearcoat IOR Change Enables attenuation of the base layer due to the change in index of refraction in the clear coat layer. See Lighting: clearCoatIorChange Filament
Multi-Bounce Ambient Occlusion See Lighting: multiBounceAmbientOcclusion Filament

Blending mode

With the Filament render delegate, the Blending mode options controls how the material blends with the rest of the scene:

Blending mode Description
Opaque Blending is disabled, the alpha channel of the material's output is ignored.
Transparent Blending is enabled. The material's output is alpha composited with the background. This is useful for materials with smooth semi-transparent alpha such as results of a keyer. Note that transparent materials cannot intersect with each other, they only intersect with non transparent materials. You can however properly control their Z order by ordering the centroid of the bounding box of the object along the Z axis.
Alpha masked Blending is disabled. This blending mode enables alpha masking. The alpha channel of the material's output defines whether a fragment is discarded or not using the Mask Threshold parameter. This is useful to properly intersect materials with completly opaque or completly transparent areas. Semi-transparent areas will be clipped according to Mask Threshold and may appear jaggy, use the Transparent blending mode instead in this case.
Multiply Blending is enabled. The material's output is multiplied with the content of the render target, darkening the content.
Screen Blending is enabled. Effectively the opposite of the multiply, the content of the render target is brightened.
Fade Acts as Transparent but transparency is also applied to specular lighting. In Transparent mode, the material's alpha values only applies to diffuse lighting. This blending mode is useful to fade lit objects in and out.

Warning

The blending mode is ignored when using the Storm render delegate.

Blending mode and Depth AOV

When requesting the Depth AOV under Composition > 3D Settings, what is written in the depth buffer depends on the blending mode of the material:

  • Opaque: the alpha channel is ignored when writing the depth.
  • All other modes are equivalent to selecting Alpha Masking: the depth target is written only for pixels with an alpha value greater than the Mask Threshold specified on the material.