Braden League Labs
I'm starting a new section of my site called Labs.
Labs is for projects that sit in between things. Not my professional work. Not AAA games. Not throwaway experiments or half-finished blog demos either. These are projects I built because I was curious, learned something from, and wanted to share in a more permanent way.
Building has gotten dramatically easier over the last few years. Tooling is better. Iteration is faster. The distance between an idea and a working prototype is smaller than it's ever been. For now Labs is a only linked in my websites footer, I will probably write blogposts about each project as they are completed. If the Labs section feels like a significant body of work I may link it in the header navigation later.
Retro Mountain Viewer
The first project in Labs is Retro Mountain Viewer.
This one spun out of a bunch of WebGPU and shader experimenting I'd been doing recently. I rebuilt the hero element on this site's homepage with a real-time water shader based on Inigo Quilez's "Simple Water" article.
The result:

That work got me thinking about terrain, atmosphere, and what else I could render in the browser with the same toolset. Retro Mountain Viewer is where that went. It renders real mountain data using a deliberately lo-fi, PS2-era visual style. The goal was vibes. I wanted to see how far you could push atmosphere, scale, and nostalgia using modern web tech and actual elevation data.
Pick a mountain from the list, tweak the lighting, adjust the fog, swap color palettes.
The chunky vertex displacement and banded shading are intentional. I wanted it to feel like something running on hardware that doesn't exist anymore.
The terrain comes from real USGS elevation data. There's a pipeline that fetches DEMs from the 3D Elevation Program and converts them into heightmaps the viewer can use. Mt. Rainier ships by default, but you can pull down any peak with coordinates.
One caveat: the Mountain Viewer requires a WebGPU-enabled browser, Chrome, Edge, or Safari 18+. I built a WebGL fallback for the homepage water shader, but for this project I wanted to stay in WebGPU land without pulling in Three.js or other libraries. Keeping the dependency list short was part of the point.
You can try it directly, and the source is on GitHub if you want to poke around or add your own mountains.
Going Forward
Not everything I build will end up in Labs. Some things stay as blog posts. Some never get shared at all. But when a project feels like it deserves its own space, something you can explore and revisit, that's where Labs comes in.
This is the first entry. More will follow.
-b