Create and Apply a Solid-Color Material in Unity

A material describes how Unity renders a surface. Every material references a shader, and the shader defines which properties—such as color, textures, metallic response, or smoothness—the Material Inspector displays.

This guide creates a reusable material asset with one solid color and assigns it to a mesh.

Quick setup

Create one material asset, set its color, and assign it through the object's Renderer component.

  1. Select Assets → Create → Material and name the new asset.
  2. Select the material, confirm its shader, and set the shader's main color property.
  3. Assign the material to an element in the Mesh Renderer's Materials list.
VRChat Android note

VRChat recommends minimizing material count for Android content and notes that flat colors can reduce texture memory. For a highly optimized basic Android world shader, its documentation recommends Mobile/VRChat/Lightmapped with baked lighting.

Mesh, Material, Shader, and Renderer

These four parts have different jobs:

Part Purpose
Mesh Defines the object's shape
Material Stores the surface settings in a .mat asset
Shader Defines how Unity renders the material and which properties it exposes
Renderer Draws the mesh and holds the list of assigned materials

For a normal, non-deforming mesh, Unity uses a Mesh Filter to reference the mesh and a Mesh Renderer to render it. A character or other deforming mesh normally uses a Skinned Mesh Renderer instead.

1. Create the Material Asset

In the Project window:

  1. Open the folder where the material should be stored.
  2. Select Assets → Create → Material, or use the same command from the Project window's context menu.
  3. Give the material a descriptive name, such as MAT_Blockout_Wall_Blue.

Unity saves a material asset as a file with the .mat extension. Keeping material assets in a dedicated folder makes them easier to find and reuse.

2. Select the Shader

Select the material asset. In the Inspector, use the Shader dropdown to choose the shader the material should reference.

The shader determines the rest of the Material Inspector. A color field might be labeled Albedo, Base Map, Base Color, Color, or something else depending on the selected shader. Do not rely on a property from one shader appearing in another.

For Unity's Built-in Render Pipeline Standard shader, the Albedo property controls the material's base color and transparency.

3. Set a Solid Color

With the material selected:

  1. Find the shader's main color property.
  2. Select its color swatch to open Unity's Color window.
  3. Pick the required color.
  4. Leave the texture slot empty if the material should display only that color.

In the Standard shader, Unity also provides Metallic and Smoothness controls. Metallic changes how metallic the surface behaves; Smoothness changes the sharpness of its reflections. These are surface properties, not brightness controls.

4. Assign the Material to a Mesh

Select the GameObject that contains the mesh:

  1. Find its Mesh Renderer component in the Inspector.
  2. Expand the Materials section.
  3. Assign the material asset to Element 0.

The Mesh Renderer lists every material used by the component. Each Element accepts a material asset.

If the object uses a Skinned Mesh Renderer, make the assignment in that component's material list instead.

Multiple Material Slots

A mesh can contain multiple submeshes, and its Renderer can contain multiple material elements. The first material is assigned to the first submesh, the second material to the second submesh, and so on.

If changing Element 0 affects only part of the model, inspect the remaining material elements. The model may have more than one submesh.

Do not add duplicate opaque materials merely to fill extra elements. Unity's Mesh Renderer documentation warns that materials beyond the number of submeshes are applied over the last submesh; additional opaque layers add rendering cost without a visible benefit.

Reuse or Create Another Material

Assign the same material asset to several Renderers when those surfaces should share the same settings. When one surface needs a different color or shader configuration, create or duplicate a separate material asset and assign that instead.

Requirement Material choice
Several blockout walls use the same blue Assign one shared material
One wall needs a different color Assign a separate material
Several meshes use the same shader settings Reuse the material where appropriate
One surface requires a different shader Create a separate material

For VRChat Android content, intentional reuse also helps avoid unnecessary material slots. VRChat notes that every additional material creates an additional submesh and contributes to draw-call cost.

The object turns bright pink.

Bright pink usually indicates that Unity cannot use the assigned shader. Select the material, check its Shader field, and choose a shader compatible with the project's render pipeline and target platform.

The material color does not appear on the object.

Confirm that the material is assigned to the correct Renderer element. If the model contains multiple submeshes, check every entry in the Materials list.

The color looks different from the Inspector swatch.

A lit shader responds to the scene's lights, shadows, and reflections. Check the material on the object under the lighting used in the scene.

Changing the material affects several objects.

The Renderers reference the same material asset. Assign a separate material when one object needs independent settings.

I cannot find Albedo in the Material Inspector.

Albedo is the Built-in Standard shader's label. Other shaders use different property names and controls. Check the material's Shader field, then use the main color property provided by that shader.

Will this material work in a VRChat Android world?

Check the selected shader on the Android build target and test the world on that platform. VRChat recommends Mobile/VRChat/Lightmapped with baked lighting when a basic optimized Android world shader is suitable.

Official References

Continue Learning

Related Documentation