Canonical benchmark brief
01. Low-Poly World Explorer
Back to all prompts# 01. Low-Poly World Explorer
A small 3D world you can walk around. The point is the world, not the controls. The aim is to see whether a model can build a real 3D scene with believable atmosphere, a functional crafting loop, and smooth performance — not a stack of cubes with a sun lamp.
## What to make
A first-person 3D scene rendered into a `<canvas>` filling the viewport. The world is a stylized island at golden hour: low-poly terrain (triangulated heightmap with flat shading), clustered low-poly trees, a small body of water on one side, a stone path winding between landmarks, and a sky that fades from warm orange near the horizon to deep violet at the zenith.
The player walks with WASD, looks around by dragging the mouse. Camera stays at eye level (1.7m). Friction is light; the walk feels weighty but not sluggish.
A small compass and minimap in the corner show facing and player position. A toggle switches between walking and slow free-fly (constrained to island bounds).
### The crafting loop
Walk up to a tree and press E to harvest it. Materials appear in an on-screen inventory. Walk to the workbench (near the stone path) and press C to open the craft menu. Place a crafted object on the ground where you stand.
The specific recipes and what you can build are not specified. The model decides what the workbench produces. A minimum of three craftable items must exist. The crafting system must be self-consistent with the island's palette and style — crafted objects should not look out of place.
## Always-visible HUD
Top-right corner:
- **FPS** — current frame rate, updates every second
- **Compass** — N/S/E/W facing
- **Inventory** — current material count
Bottom-left:
- **Controls hint** — fades out after 5 seconds ("WASD move · drag look · E harvest · C craft · F toggle fly")
## Hard requirements
- Single `index.html`. No build step.
- WebGL via Three.js, Babylon.js, regl, or raw WebGL2. Any CDN libraries must be listed in `manifest.json.externalAssets`.
- Smooth at 30fps on a 2020 laptop with integrated graphics at 1280x800.
- No external textures fetched at runtime. Build procedural textures, draw to canvas, or ship assets in the folder.
- Collision with terrain — the player walks on the surface, not through it.
- No login. No menus. The page opens and you are in the world.
- Three or more craftable items with at least one recipe.
- `prefers-reduced-motion`: disable camera bob, reduce particle density.
## Visual rules
- Real lighting: directional light from the low sun, ambient from the sky, fog that thickens with distance and matches the sky color at the horizon.
- Low poly means low poly. Each tree reads as a tree from 10 meters away. Geometry does the work — no high-resolution textures.
- The water surface ripples gently. The sun's specular highlight moves with the ripples.
- Trees cast shadows.
- The minimap uses a single accent color — not default green.
- Crafted objects are built from the same low-poly vocabulary as the world. They must look like they belong.