A procedural voxel world generator rendering blocky chunks in real time. Stack Perlin or Simplex noise into base, detail, and ridge layers; carve altitude bands into biomes; scatter six tree species; orbit the result under a dynamic sun-and-moon sky.
Every dial is live. Tweak the noise, watch the height-map preview update, hit Generate to re-mesh the world. Tile-streamed meshing keeps the viewport responsive even at 1024×1024 chunks.
Built with Three.js · greedy face-culling · column-indexed block store · O(tile) re-meshing.
Perlin or Simplex base, fine detail layer, ridge layer for sharp peaks.
Octaves, lacunarity, persistence, exponent, base mix.
Sand, forest, pine, sparse, snow — altitude driven.
64×64 sub-tile meshing for instant centre load.
Oak, pine, autumn, mystic, golden, tropical.
Tree-line and pine-line rules. Per-species density.
Sun and moon arcs, stars at night, fog & light colour shift.
Organic blob clouds with exterior-only meshing for clean alpha.
Left-drag orbits around the focus point. Right-drag pans the focus. Scroll zooms. Touch: one finger orbits, pinch zooms.
GENERATE — rebuilds the world using the current seed and all slider values.
RANDOMIZE — picks a new random seed and regenerates.
RESET — restores every slider to its default for the active theme.
❮ rail tab (right edge of sidebar) — collapses or re-opens the whole panel.
Section headers — click to collapse/expand that group of sliders. Tree and biome sliders auto-regenerate on release.
Fortnite / Pokémon / Cyberpunk — swaps the UI palette and the default slider preset.
Each preset tile loads a hand-picked seed + parameter set and regenerates immediately.
ⓘ — opens this About dialog. × or click outside the box to close.
I opens this dialog. Esc closes it. G generates a new world. R randomises the seed. B opens the first-person spawn picker.
A dark overlay shows four spawn buttons — North Hill, Town Center, Lake Shore, Forest Path — each teleports the camera to that location at eye height and locks the pointer.
Esc or B closes the picker without spawning. Once spawned: WASD move, Space up, Ctrl down, Shift sprint, mouse look, R resets FOV, Esc or B exits back to orbit view. Click the canvas to re-acquire pointer lock if released.