https://bryce.town is my personal website and a home for the projects I’ve worked on lately.
Concept
I’ve had a couple personal homepages over the years but wanted to do something new with this one. This is my take on what a vibrant, 2000s-era, Geocities-style site might look like if created in the 2020s.
The site is an interactive toy that imagines what a website with pages and hyperlinks between them would look like when placed spatially in a 3D environment. Turning the diorama reveals each page’s contents in sequence, and turning the diorama past the end leaves the viewer back home at the beginning.
The concept was: a massive sinkhole opens in the road to Bryce town, and strange, larger-than-life artifacts have been seen rising out of it. Local residents don’t seem to mind the disruption though — and indeed have been making the most of it!
I’ve talked with people recently about how the internet feels so homogenous these days. The growth of social platforms has led to the loss of really personal, bespoke personal homepages on the internet. Restrictive profile formats in places like Instagram have bred lots of creative workarounds, but otherwise personal spaces on the web feel pretty uniform these days. I miss stumbling upon magical web experiences that are full of unique character and soul.
Highlights
- Built with Next.js and the web game engine PlayCanvas
- A single color palette texture is texture mapped onto every object in the world to keep graphics memory low
- A React component that wraps a PlayCanvas instance allows bidirectional communication with Next.js site logic and also allows 2D React components to be spatially anchored to 3D elements inside the PlayCanvas scene. I’ll open-source this soon…
- A Python asset pipeline in Blender that splits apart and exports a scene in the right GLTF formats and file structure for use on the web
- The fog shader uses distance from the sinkhole center and angle from the camera to fade elements in the scene and show depth