Initializing visualization...

TL;DR:

Just a placeholder page for my email domain ;) ...


Nobody asked for it, nobody needs it

Yet another internet black hole with strange gravitational pull.

I needed a mailbox, so I registered a domain and set up some mail servers. No big deal. But almost every time I sent an email to a new contact or shared my address with them, they'd check the website and go, "There's nothing on that page!"

So I put some basic HTML up here, and people started saying, "That's such a basic site—aren't you a web developer?!" Then I added a simple black hole 3D model, and people went, "Is this supposed to be funny somehow?"

While I like having my own mail servers, I hate maintaining a public "me, myself and I" web presence. So what should actually be here?

Then it kind of grew on me. Black holes are so well mathematically defined, yet visually striking. They're perfect subjects for a WebGPU playground, and I love WebGPU. So here we are. This is me experimenting with WebGPU rendering and compute shaders while learning about black holes and general relativity. You're welcome to join me on this journey - far from complete yet ;) ...

Live long and prosper. Peace and love.


Credits

When 3D models are enabled, 3rd party assets are used.

All 3D models are from Sketchfab and licensed under Creative Commons.

Models were optimized with gltf-transform (simplified and compressed to 1024p WebP).

  • Black Hole: rubykamen
  • Jupiter: kongle
  • Saturn: OPREXT
  • Uranus: HD 188753 B
  • Metal Asteroid: Full Circle CS Inc.

Built With

  • SvelteKit and vanilla WebGPU.
  • When 3D models are enabled, the black hole model across stages 4-5 is loaded via Three.js in WebGPU renderer mode and integrated into the same canvas as the vanilla WebGPU implementation—I wanted to test this hybrid approach.