Skip to demo
Experimentarium

An Evolving WebGL Experiment

A living R&D sandbox where I prototype ideas for rendering, camera systems, UI flows, and interaction— and turn those experiments into small, playable games, built with Next.js + R3F, a custom ECS, and an Edge leaderboard.

Play in page Open full screen
Rotate to Landscape for a wider view, or tap ⤢ to open full screen.

Open full screen

What I’m exploring

  • Interaction & feel: camera presets, input latency, and micro-animations.
  • Rendering: stylized lighting, post-FX toggles, and performance trade-offs.
  • Systems: an event-driven ECS with a shared clock and clean Start/End lifecycles.
  • UX: lightweight in-scene UI for tuning sky, terrain, water, and effects.
Controls

Click/tap to interact. Press U to toggle the sandbox UI; Esc to pause.

How I approach experiments

Each idea is a small, isolated mode with its own camera preset and clean setup/teardown. Global services (clock, events, effects) stay consistent so I can compare results quickly.

What is “ECS” and why use it?

ECS stands for Entity–Component–System. Think of it as three simple parts working together:

  • Entities — lightweight IDs for “things” in the world (balloons, particles, players).
  • Components — data attached to entities (like Position, Velocity, Color).
  • Systems — functions that run every tick on entities that have the required components (e.g., a Movement system updates all entities with Position+Velocity).

This makes code modular, data-driven, and easy to optimize—perfect for quickly turning experiments into small games without spaghetti.

Play full screen
Previous
Previous

3D Projects and UI

Next
Next

Multimedia Illustrations and eLearning Design