Skip to main content
Version: 3.9.0

Material Overview

Materials define how objects look in the scene. You can adjust the properties of each material to achieve the look you want.

Add a Material to the Object

Create a Built-In Material

There are several built-in materials that you can start with to build your own effects. Click the Add button [+] > Material in the Assets panel to choose the built-in material you want to add to your project.

render state 0

Attach a Material to an Object

After adding the material, it will immediately show up in the Assets panel. To associate the material with the object you want it to show, click the object with Model in the Inspector panel. In the Inspector panel, click the Material and choose the one just added to your assets. The new material will apply to the mesh and show in both Scene and Preview.

attach material to object

Adjust Materials Properties and Set Textures

Each material has different exposed properties that you can change. You can read more details below in the Material Type and Properties section.

If you want to add textures to the material, instead of using a solid color, click the Add button [+] > Import Asset in the Assets panel to import PNG textures.

import asset

You can select your imported texture from the Asset picker in the Texture slot.

select imported texture

Material Type and Properties

We provide several built-in materials for you to use.

Standard PBR

The Standard PBR material is a physically-based rendering material that displays a texture color by accurately calculating lighting and material information in the shading. You can use Standard PBR for creating realistic materials. Learn more about the Standard PBR material.

standard pbr cube

Occluder

The Occluder material is used to occlude, or hide, pieces of geometry in your scene. It will occlude what is behind the object and show the camera input. It is usually used on the head model to help show the correct occlusion between the head and attached objects when creating effects such as those shown in the Head Tracker guide.

occluder cube

Unlit

The Unlit material directly shows colors from a texture or a single color, without light or shadows. Learn more about the Unlit material.

unlit cube

MatCap (Material Capture)

The MatCap is a material with a single texture, including complete lighting and reflections, that doesn’t calculate those properties in the runtime. Using a MatCap material can save significant performance resources while achieving similar results to a PBR material when the lighting is static. Learn more about the MatCap (material capture) material.

matcap cube

Matte Shadow

Matte Shadow is applied to objects that receive shadows and render only as the received shadow. This is useful when you want to ground other objects in your scene, adding an extra level of realism. Learn more about the Matte Shadow material.

matte shadow cube

Simple Lighting

The Simple Lighting material is essentially a standard PBR material without completely physically accurate calculations done in the shader. It uses a reflection model called Blinn-Phong. For this reason, this material can realize real-time lighting with a low performance cost. Learn more about the [Simple Lighting material](simple lighting).

simple lighting cube

Simple Skybox

The Simple Skybox material is used to fill empty space in the camera view with a cubemap texture. Learn more about the Simple Skybox material.

Adjust Render States

Render states define the operations to be completed during the shading of objects. These state settings, such as depth testing and blending, will change an object’s drawing behaviors:

  • Depth Test: determines whether or not the object will do a depth test before drawing it. By turning on a depth test, the engine will compare the drawing pixel with the current depth buffer. If the test is successful, then the pixel will replace the previous pixel; if it fails, then the pixel is discarded.
  • Depth Write: determines whether or not the pixel’s depth information is written into the depth buffer.
  • Depth Function: determines how the depth test will be completed to be considered successful.
  • Color Mask: determines the color channels the final render should output.
  • Cull Mode: determines how the material culls the mesh triangles based on the direction they’re facing.
  • Blend Mode: There are many blend modes to choose from that define how an object’s color will be drawn on top of previously drawn colors. You can choose a blend mode based on your needs.