Skip to main content

Material

A Material asset defines the visual appearance of a surface when rendered. PlayCanvas uses physically based rendering (PBR) to create realistic materials that respond correctly to lighting. Materials can represent a wide range of surfaces, from smooth plastic to rough wood to shiny metal.

Inspector

You can select a Material asset in the Assets Panel and view it in the Inspector.

Material Inspector

The Material Inspector is organized into collapsible sections, each controlling different aspects of the material's appearance.

Texture Transform

Controls UV offset, tiling, and rotation for all texture maps.

Texture Transform

PropertyDescription
Apply To All MapsWhen enabled, the offset, tiling, and rotation values below apply to all texture maps in the material. When disabled, each map can have its own transform settings.
OffsetThe UV offset to apply to texture maps (U, V).
TilingThe UV scale/tiling to apply to texture maps (U, V).
RotationThe rotation angle (in degrees) to apply to texture maps.

Ambient

Controls how the material responds to ambient lighting and ambient occlusion.

Ambient

PropertyDescription
Ambient OcclusionA texture containing pre-baked ambient occlusion data. Darker areas receive less ambient light.
UV ChannelThe UV set used to sample the AO texture (UV0 or UV1).
Color ChannelWhich texture channel to read the AO value from (R, G, B, or A).
Occlude SpecularControls how AO affects specular reflections: Off, Multiply, or Gloss Based.
Vertex ColorUse vertex colors for ambient occlusion instead of a texture.
ColorThe ambient tint color multiplied with the scene's global ambient color.
IntensityStrength of the ambient occlusion effect (0-1).

Diffuse

Controls the base color of the material when lit by dynamic light sources.

Diffuse

PropertyDescription
DiffuseThe diffuse/albedo texture defining per-pixel color.
UV ChannelThe UV set used to sample the diffuse texture (UV0 or UV1).
Color ChannelWhich texture channels to read (R, G, B, A, or RGB).
Vertex ColorUse vertex colors for diffuse instead of a texture.
ColorThe diffuse color. If a texture is set, this tints the texture.

Specular

Controls the specular highlights and reflectivity of the material. The Specular section supports two workflows: Metalness and Specular.

Specular

Common Properties

PropertyDescription
Enable GGX SpecularEnables GGX specular response with anisotropy support for materials like brushed metal.
AnisotropyTexture defining per-pixel anisotropy direction (visible when GGX is enabled).
Anisotropy IntensityStrength of the anisotropic effect (0-1).
Anisotropy RotationRotation angle of the anisotropy direction in degrees.
Use MetalnessToggle between Metalness workflow (PBR) and Specular workflow (legacy).

Metalness Workflow

When Use Metalness is enabled:

PropertyDescription
MetalnessTexture defining per-pixel metalness. White (1) is metal, black (0) is non-metal.
Vertex ColorUse vertex colors for metalness instead of a texture.
MetalnessThe metalness factor (0-1). Multiplied with the texture if present.
Use Specular Color and FactorEnable additional specular color control for non-metallic areas.
SpecularSpecular color texture (visible when Use Specular Color is enabled).
Specularity FactorTexture for per-pixel specularity factor.

Specular Workflow

When Use Metalness is disabled:

PropertyDescription
SpecularThe specular color texture defining highlight color.
Vertex ColorUse vertex colors for specular instead of a texture.
TintWhen enabled, the Color below tints the specular texture.
ColorThe specular highlight color.

Glossiness

PropertyDescription
GlossinessTexture defining per-pixel glossiness/smoothness.
Vertex ColorUse vertex colors for glossiness instead of a texture.
GlossinessThe glossiness/shininess value (0-100). Higher values create sharper reflections.
InvertTreat the gloss map as a roughness map (inverts the values).

Emissive

Controls light emission from the material surface.

Emissive

PropertyDescription
EmissiveTexture defining per-pixel emission color.
UV ChannelThe UV set used to sample the emissive texture (UV0 or UV1).
Color ChannelWhich texture channels to read (R, G, B, A, or RGB).
Vertex ColorUse vertex colors for emission instead of a texture.
ColorThe emissive color. If a texture is set, this tints the texture.
IntensityMultiplier for the emissive color. Values above 1 create overbright/bloom effects.

Opacity

Controls material transparency and alpha testing.

Opacity

PropertyDescription
Blend TypeHow the material blends with the background: None (opaque), Alpha, Additive, Additive Alpha, Screen, Premultiplied Alpha, Multiply, Modulate 2x, Min, Max.
OpacityTexture defining per-pixel opacity.
UV ChannelThe UV set used to sample the opacity texture (UV0 or UV1).
Color ChannelWhich texture channel to read the opacity from (R, G, B, or A).
Vertex ColorUse vertex colors for opacity instead of a texture.
IntensityThe overall opacity (0-1). 0 is fully transparent, 1 is fully opaque.
Alpha TestPixels with alpha below this threshold are discarded (0-1).
Alpha To CoverageEnables alpha-to-coverage for order-independent transparency (requires MSAA).
Opacity Fades SpecularWhen enabled, opacity also fades specular reflections. Disable for glass-like materials.
Opacity DitherDithering pattern for opacity: None, Bayer 8, or Blue Noise.
Opacity Shadow DitherDithering pattern for shadow opacity.
Alpha FadeFade factor for materials where Opacity Fades Specular is disabled (0-1).

Normals

Controls surface detail through normal mapping.

Normals

PropertyDescription
NormalsThe normal map texture defining per-pixel surface orientation.
UV ChannelThe UV set used to sample the normal texture (UV0 or UV1).
BumpinessStrength of the normal map effect (0-2). 0 has no effect, 1 is standard, 2 is exaggerated.

Parallax

Adds depth illusion to surfaces using height mapping. Requires a normal map to be set.

Parallax

PropertyDescription
HeightmapThe height map texture. White represents high areas, black represents low areas.
UV ChannelThe UV set used to sample the height texture (UV0 or UV1).
Color ChannelWhich texture channel to read the height from (R, G, B, or A).
StrengthIntensity of the parallax effect (0-2).

Clear Coat

Adds a secondary specular layer simulating a clear coating (like car paint or lacquered wood).

Clear Coat

PropertyDescription
Clear Coat FactorIntensity of the clear coat layer (0-1). Set to 0 to disable.
Clear CoatTexture defining per-pixel clear coat intensity.
UV ChannelThe UV set used to sample the clear coat texture (UV0 or UV1).
Vertex ColorUse vertex colors for clear coat intensity.
Vertex Color ChannelWhich vertex color channel to use (R, G, B, or A).
Clear Coat GlossTexture defining per-pixel clear coat glossiness.
GlossinessSmoothness of the clear coat layer (0-1).
InvertTreat the gloss map as a roughness map.
Clear Coat NormalsNormal map for the clear coat layer (e.g., orange peel effect).
BumpinessStrength of the clear coat normal map (0-2).

Sheen

Adds soft, velvet-like reflections for fabrics and similar materials.

Sheen

PropertyDescription
Use SheenEnable sheen specular effects.
SheenTexture defining per-pixel sheen color.
UV ChannelThe UV set used to sample the sheen texture (UV0 or UV1).
Vertex ColorUse vertex colors for sheen.
ColorThe sheen tint color.
Sheen GlossinessTexture defining per-pixel sheen glossiness.
GlossinessSmoothness of the sheen effect (0-1).
InvertTreat the gloss map as a roughness map.

Refraction

Controls light bending through transparent materials like glass or water.

Refraction

PropertyDescription
Dynamic RefractionsEnable real-time refraction using a grab pass.
RefractionTexture defining per-pixel refraction intensity.
UV ChannelThe UV set used to sample the refraction texture (UV0 or UV1).
Vertex ColorUse vertex colors for refraction intensity.
RefractionAmount of light passing through the material (0-1).
Index Of RefractionControls light distortion. Represented as 1.0 / IOR. Common values: glass ~0.67, water ~0.75.
DispersionStrength of chromatic aberration (color separation). 0 means no dispersion.
ThicknessTexture defining per-pixel material thickness.
ScaleThickness multiplier. Affects how much light is absorbed.
AttenuationColor of light absorption through the material volume.
Attenuation DistanceDistance at which light is fully absorbed.

Iridescence

Creates rainbow-like color shifts seen on soap bubbles, oil slicks, or beetle shells.

Iridescence

PropertyDescription
Use IridescenceEnable iridescent diffraction effects.
IridescenceTexture defining per-pixel iridescence intensity.
UV ChannelThe UV set used to sample the iridescence texture (UV0 or UV1).
IridescenceIntensity of the iridescence effect (0-1).
Iridescence ThicknessTexture defining per-pixel thin-film thickness.
Thickness MinimumMinimum thin-film thickness in nanometers (nm).
Thickness MaximumMaximum thin-film thickness in nanometers (nm).
Index of RefractionIOR of the thin-film layer.

Environment

Controls environment reflections using cube maps or sphere maps.

Environment

PropertyDescription
Sphere MapA sphere map texture for environment reflections (mutually exclusive with Cube Map).
Cube MapA cube map texture for environment reflections. If not set, the scene skybox is used.
ReflectivityHow much environment reflection is visible (0-1).
ProjectionCube map projection mode: Normal or Box.
CenterCenter point for box projection (X, Y, Z).
Half ExtentsHalf-size of the box projection volume (W, H, D).

Lightmap

Applies pre-baked lighting from a lightmap texture.

Lightmap

PropertyDescription
LightmapThe lightmap texture containing pre-baked diffuse lighting.
UV ChannelThe UV set used to sample the lightmap (typically UV1 for unique UVs).
Color ChannelWhich texture channels to read (R, G, B, A, or RGB).
Vertex ColorUse vertex colors for lightmap data instead of a texture.

Other

Additional render state controls.

Other

PropertyDescription
Depth TestWhen enabled, pixels are only rendered if they pass the depth test (nothing in front).
Depth WriteWhen enabled, the material writes to the depth buffer.
Cull ModeWhich faces to cull: None (render both), Back Faces (default), or Front Faces.
Use FogApply scene fog settings to this material.
Use LightingApply dynamic lighting to this material.
Use SkyboxUse the scene skybox for environment reflections.
Use TonemapApply tonemapping to this material.
Vertex Color GammaInterpret vertex colors as gamma-space (sRGB) values.
tip

To use this asset in scripts, see Asset Attributes. For programmatic material creation, see the StandardMaterial API.