# Decals projecting textures onto surfaces with Decal3D. ```{raw} html ▶ Run in browser ``` **Tags:** `3d` `decals` `projection` `pbr` A Decal3D projects a texture onto whatever geometry sits inside its oriented box (design D9), along the box's local -Y axis, compositing over the surface albedo inside the uber shader without a separate mesh. This scene drops a target ring, a crack, and a warning splat onto a tiled floor, a crate, and a sphere, so the same projector wraps flat, edged, and curved geometry. Decals are zero-cost when unused: with no Decal3D in the scene the projection loop never runs and the frame is byte-identical to plain forward shading. Usage: uv run python examples/features/3d/decals.py Controls: Space / Click / Tap - Toggle the decals on/off Escape - Quit ## Source ```{literalinclude} ../../examples/features/3d/decals.py :language: python :linenos: ```