FS - Voxel Cutaway World Generator MVP
Version: 0.2.0
Date: 2026-03-08
Author: Rens Roosloot / Codex collaboration
1. Purpose
This document defines the functional behavior for the first MVP of the Voxel Cutaway World Generator described in URS.md.
2. Functional Scope
Included in the MVP:
- one generated voxel chunk
- one 3D viewport
- one deterministic seeded generation flow
- one compact control set
- day/night theme switching
- desktop and mobile camera interaction
Excluded from the MVP:
- terrain editing
- multiple chunk presets exposed in the UI
- save/load
- sharable URLs
- audio
- animation systems beyond minor presentation polish
3. User Flow
- User opens the page.
- The page displays a generated floating chunk.
- The user orbits and zooms the scene.
- The user regenerates the world.
- The user toggles between day and night mood.
4. Page Structure
The page shall contain:
- a title
- a short explanatory subtitle
- a large 3D viewport
- a minimal control area
- a brief explanatory note below or near the viewport
5. Controls
Required controls:
RegenerateTheme toggle(Day/Night)- optional
Seeddisplay or input
Control rules:
- controls shall remain minimal
- controls shall be touch-friendly
- controls shall not obscure the 3D view unnecessarily
6. Camera Behavior
- The camera shall orbit around the chunk.
- The camera shall support bounded zoom.
- The camera shall not flip under the chunk.
- The default camera angle shall present the top and cutaway sides clearly.
- The chunk shall remain centered after regeneration.
Desktop interaction:
- drag to orbit
- scroll to zoom
Mobile interaction:
- drag to orbit
- pinch to zoom
7. World Generation Behavior
7.1 General
- The world shall be generated from a seed.
- The same seed shall produce the same world.
- The chunk dimensions shall remain fixed for the MVP.
7.2 Surface
- Terrain height shall vary within a controlled range.
- Water shall fill lower regions below a defined water level.
- Trees shall spawn only on valid surface blocks.
- Snow shall appear above a configured elevation threshold.
7.3 Underground
- Subsurface shall contain dirt and stone layers.
- Ores shall spawn underground only.
- Ores should spawn in clusters rather than even scatter.
- Caves shall remove subsurface volume selectively.
- Lava shall appear rarely and deeper underground.
7.4 Presentation Rules
- Exposed side faces shall always reveal underground composition.
- The chunk shall not generate visually broken floating liquids or disconnected topsoil islands as a normal outcome.
- The world should look coherent more often than surprising.
8. Theme Behavior
8.1 Day Theme
- brighter ambient presentation
- clear terrain readability
- soft atmospheric background
8.2 Night Theme
- darker environment
- cooler ambient presentation
- warm lava emphasis where visible
- terrain remains readable
9. Acceptance Criteria
- FS-01: The page renders one floating voxel chunk on load.
- FS-02: The chunk can be regenerated without page reload.
- FS-03: The same seed yields the same chunk result.
- FS-04: Desktop orbit and zoom work.
- FS-05: Mobile orbit and pinch zoom work.
- FS-06: Day and night themes are both available.
- FS-07: The chunk visibly includes surface and underground content.
- FS-08: The control set stays limited to viewing and regeneration.