A real-time WebGPU scene showing chaotic attractors and minimal surfaces rendered through a GPU-driven pipeline with bloom and holographic post-processing.
Vikas Kumar Singh's Null Graph framework throws out the scene graph entirely, hands the GPU a flat ArrayBuffer of entity data, and lets compute shaders handle the matrix math, frustum culling, and indirect draw calls while the CPU mostly sits there sipping coffee. The result is the kind of thing you build after you've gotten tired of explaining to the garbage collector why it shouldn't pause your N-body sim mid-frame.
The demo gallery is where it earns its keep. Aizawa, Thomas, and Rössler attractors trace their strange loops in real time. A Hopf fibration projects four dimensions into three with the calm authority of something that's done this before. Gyroid and Schwarz P minimal surfaces flow into shape. Curl-noise fluids drift across the screen, and the post-processing stack piles on bloom, CRT scanlines, and holographic shimmer like it's nothing. There's also a test engine that lets you toggle between AoS, SoA, AoSoA, and plain old OOP layouts so you can watch the frame timings shift as you reshape memory under the hood, which is the sort of thing a certain kind of developer finds genuinely thrilling.
Worth poking around. The repo lays the architecture bare, so if you've ever wondered what zero-copy streaming from a Web Worker to a GPU storage buffer actually looks like in practice, this is a good place to read the source. NullGraph is aimed at people building MMOs, voxel worlds, or anything where "thousands of instances per frame" is a starting point rather than a stretch goal. Vikas is actively developing it, so star the repo, open issues, or follow along.
- Live Demo: https://null-graph.web.app
- Source Code: https://github.com/Vikas593-cloud/NullGraph
- Author: Vikas Kumar Singh (LinkedIn, GitHub)