Experiments & Little Worlds
Side projects, shader experiments and small browser games built for the fun of it. Most of them are interactive, so click, drag and explore.

Featured ExperimentASCII World
A first-person world rendered entirely as text. A procedurally generated voxel landscape of rivers, forests, a stone fort and villagers is drawn at character-grid resolution, then covered in a density-sorted glyph pass. Click to enter, then explore with WASD and the mouse. Best on desktop.
- Three.js
- Procedural Generation
- ASCII Art

Three.jsGalaxy Generator
A user-controlled galaxy generator using particle effects. Tune the arms, spin, randomness and colors with the live controls.

Three.jsHaunted House
A spooky house and graveyard shrouded in fog, with textured materials, shadows and wandering spirits.

Three.jsLow-Poly Fox
A low-poly fox on textured ground, built while learning to structure Three.js code for larger projects.

Three.jsQuote Cloud
A quote made of 3D text floating in a cloud of randomly generated geometry.

ShaderFlag Shader
My first custom shader: a waving flag with live controls for the wave frequency.

Three.jsRealistic Render
Giving a 3D model depth and color with environment-map lighting, with a slider for the environment intensity.

Three.jsReflection Material
Three objects with standard materials floating in a street, with a debug UI to tweak the values. Click to move the camera.

CanvasStar Shower
A randomly generated star shower using JavaScript.

GameSunset Racer
A racing game in vanilla JavaScript on canvas. Use the arrow keys to drive.