An overlay material in Unreal Engine renders on top of a mesh’s base material without replacing it. The original material stays untouched — the overlay is drawn as an additional pass over the same geometry.

Use Case

The most common use is visual feedback: highlighting selected objects, showing interaction prompts, indicating damage states. Instead of swapping materials or creating dynamic material instances, you apply an overlay and remove it when done.

The NGInteractionSystem uses this for interaction feedback — when the player looks at an interactable object, a colored overlay appears. Green for “ready to interact,” cleared when the player looks away.

API

// Apply overlay
Mesh->SetOverlayMaterial(HighlightMaterial);
 
// Remove overlay
Mesh->SetOverlayMaterial(nullptr);

SetOverlayMaterial is available on any UMeshComponent (static mesh, skeletal mesh, etc.). The overlay material should typically be translucent or use additive blending so the base material remains visible underneath.

Compared to Other Approaches

  • Material swap — replaces the entire material, losing the original look
  • Dynamic material instance — creates a copy you can modify at runtime, but adds complexity if you just need a simple highlight
  • Post-process outline — screen-space effect, works well for outlines but can’t do per-object color overlays easily

Overlay materials are the simplest option when you need a temporary visual effect on a specific mesh.