The 3D Handbook
Key term

Gym levels and metrics maps

Developer-only test maps that lay out doors, stairs, jumps, ledges and slopes at measured sizes, so designers and artists can feel the player's metrics before building real levels.

level-designmetricsblockoutproduction

A gym level (also called a metrics map, metrics zoo or metrics playground) is a developer-only test map full of measured examples: doors of several widths, stairs of several step heights, jumps of increasing length, ledges, slopes and cover at fixed sizes. You walk the default character through it to learn what the player can and cannot do, before anyone builds a real level.

The Level Design Book recommends building a "'metrics zoo' / 'metrics playground' developer-only test map that exhibits the different gameplay objects, modules, and prefabs across all your levels" (The Level Design Book: Metrics).

#Purpose of a gym level

Metrics on paper stay untested until you try them through the game camera. The Level Design Book's process is to "make a simple level with various rooms, hallways, and floor heights", then "walk around with gravity, jump on objects, be a general nuisance", paying "special attention to the sizes of walls, doors, and floors" (The Level Design Book: Metrics). It asks two useful questions: "Does the height of the stair steps feel right?" and "Do doors feel too narrow or too short?" (The Level Design Book: Metrics). Then: "After each metrics revision, playtest and walk through again. Repeat." (The Level Design Book: Metrics).

The gym then becomes reference. Robin-Yann Storm's talk title states the principle: "Your documentation should be in-game", in gyms, zoos and museums (YouTube: Gyms, Zoos, and Museums: Your documentation…). A level designer unsure about a ledge height can walk to the gym and try it.

#What goes in a gym

A gym tests the player's movement against the collision capsule and the movement settings. A useful layout is a row of test lanes, each varying one number:

Lane Tests Engine setting it checks
Steps at 10, 20, 30, 40, 50 cm Which step the character walks up Unity Step Offset; Unreal Max Step Height
Ramps at 30°, 40°, 45°, 50° Which slope is walkable Unity Slope Limit; Godot floor max angle
Gaps of increasing width Jump distance Jump settings
Ledges of increasing height Jump and mantle height Jump or climb settings
Doors and corridors of several widths Clearance and feel Capsule radius
Cover at several heights Crouch and stand cover Camera and capsule height

The settings are real ones: Unity's CharacterController steps up a stair "only if it is closer to the ground than" its Step Offset, and only climbs slopes less steep than its Slope Limit (Unity Manual: Character Controller component reference). Godot's CharacterBody3D treats slopes up to its floor_max_angle, 45 degrees by default, as floor (Godot Engine: CharacterBody3D). Unreal's Character Movement component has a Max Step Height ("Maximum height character can step up") and a Walkable Floor Angle (Unreal Engine Python API documentation: unreal.CharacterMovementComponent).

A capsule with radius, height, eye height and a dashed skin-width outline, standing beside a small step labelled step height and a ramp labelled slope angle.
The numbers a gym lane tests: step height, slope angle and the capsule's own size.Diagram by the handbook author

#Gyms, showcase maps and zoos

Teams use the names loosely. A useful split:

Storm's title names gyms, zoos and museums together as in-game documentation (YouTube: Gyms, Zoos, and Museums: Your documentation…).

grids and metrics · player collision capsule · blockout · showcase (warehouse) map · playtesting spaces · affordance

#Further reading and watching

Watch it before you build your first gym; the title sums up the argument for keeping test maps in the game itself. Watch on YouTube

References

  1. The Level Design Book · Metrics · The Level Design Book · web · accessed 2026-10-21
  2. Robin-Yann Storm · Gyms, Zoos, and Museums: Your documentation should be in-game · YouTube · video · accessed 2026-10-21
  3. Unity Technologies · Character Controller component reference · Unity Manual, 2026 · docs · accessed 2026-10-21
  4. Godot Engine contributors · CharacterBody3D (class reference source) · Godot Engine (GitHub), 2026 · docs · accessed 2026-10-21
  5. Epic Games · unreal.CharacterMovementComponent · Unreal Engine Python API documentation, 2026 · docs · accessed 2026-10-21

Last updated 2026-10-22