The 3D Handbook
Key term

Vertex colours

A colour value stored on each vertex (or face corner) of a mesh; rarely shown as colour in games, mostly used as masks for blending materials, wear, wind and tint.

foundationsmeshmaterialsvertex-painting

A vertex colour is a colour value stored directly on a mesh's vertices instead of in a texture. Blender's manual: "Color data can be applied directly to an object's vertices rather than using a texture or a material" (Blender 3.6 Manual: Object Data Properties). Unity lists it among the optional data a mesh can carry per vertex (Unity Manual 2022.2: Anatomy of a mesh).

In games, vertex colour is mostly not seen as colour. It is a cheap per-vertex mask that a shader reads to decide where moss grows, where paint is chipped, or which of two materials shows. See vertex painting and blending.

Two wall strips: raw red vertex colours on the left, and the same values used as a stone-to-moss blend mask on the right.
Left: raw vertex colours stored per vertex (red channel strongest at the bottom). Right: a material using that red channel as a mask between stone and moss. Values are interpolated between vertices, so the mesh density (here a 16 × 8 grid) limits how sharp the blend can be.Rendered in Blender 5.2 (Cycles) by the handbook author

#How it is stored

Each vertex gets a red, green, blue and usually alpha value, and the GPU blends smoothly between vertices across each triangle. glTF says vertex colour values "are interpolated across topology primitives" (Khronos Group: glTF 2.0 Specification).

Blender stores colour as Color Attributes with two choices (Blender 3.6 Manual: Object Data Properties):

  • Domain: Vertex (one colour per vertex) or Face Corner (one per corner of each face, so adjacent faces can differ).
  • Data type: Color, "RGBA color with floating-point precision", or Byte Color, "RGBA color with 8-bit precision".

A real-time mesh can hold only one value per attribute per vertex. As one Polycount poster put it, "A single vert can only have one normal and one UV coordinate" (Polycount forum: Vertex Count vs Triangle Count), and per-face colour changes split vertices for the same reason (Polycount forum: Vertex Count vs Triangle Count). Hard colour edges cost extra vertices.

#Common uses

Use Example Related page
Material blending Up to four layers blended by vertex alpha on The Order: 1886 (Neubelt & Dawn) 2013) vertex painting and blending, material layers and Substrate, height blending
Wear, moss and grime Moss, damage, efflorescence and mould on Naughty Dog's dam walls (ArtStation) edge wear, detail maps and macro variation
Visible colour or tint Godot can use vertex colour as albedo (Godot Engine); glTF multiplies it with base colour (Khronos Group) base colour (albedo) map
Baking IDs Substance's bakers can use vertex colour to build ID maps (Substance 3D Bakers documentation) baking

#Colour space

Vertex colours raise the same question as textures: are the numbers sRGB or linear? See colour space: sRGB and linear.

#Common mistakes

Related: vertex, anatomy of a polygon mesh, vertex painting and blending, material layers and Substrate, channel packing.

#Further reading and watching

References

  1. Blender Foundation · Object Data Properties (Color Attributes) · Blender 3.6 Manual, 2023 · docs · accessed 2026-10-21
  2. Unity Technologies · Anatomy of a mesh · Unity Manual 2022.2, 2022 · docs · accessed 2026-10-20
  3. Khronos Group · glTF 2.0 Specification · Khronos Group (GitHub) · docs · accessed 2026-10-21
  4. Vertex Count vs Triangle Count · Polycount forum, 2014 · forum · accessed 2026-10-20
  5. Jared Sobotta · Brick and Concrete Generator · ArtStation, 2023 · article · accessed 2026-10-21
  6. David Neubelt and Matt Pettineo (Ready at Dawn) · Crafting a Next-Gen Material Pipeline for The Order: 1886 · SIGGRAPH 2013 Physically Based Shading course notes, 2013 · paper · accessed 2026-10-21
  7. Godot Engine contributors · BaseMaterial3D (class reference source) · Godot Engine (GitHub), 2026 · docs · accessed 2026-10-21
  8. Adobe · Color Map from Mesh · Substance 3D Bakers documentation · docs · accessed 2026-10-21
  9. Blender Foundation · Blender 4.5 LTS: Pipeline & I/O · Blender Developer Documentation (release notes), 2025 · docs · accessed 2026-10-20

Last updated 2026-10-22