VR design is still in the very early stages, but something that we know leads to immersion in VR is interactivity. One developer is taking interactivity to the extreme with Chroma Lab, a forthcoming VR experience that will let you play with hundreds of thousands of simulated particles.
VR gives us the opportunity to simulate the real world and its physical laws to step into situations that we couldn’t otherwise practically experience, like driving a racecar or flying a plane. But what about simulations of the impossible, like commanding hundreds of thousands of floating pulsating rainbow particles?
Reddit user ‘Set111’ is developing Chroma Lab to let you do just that, and an early teaser looks absolutely mesmerizing:
Set111 calls Chroma Lab a “particle physics sandbox,” and says that more than 100,000 particles are simulated in VR at 180Hz using a custom GPU accelerated physics engine. The developer says the physics engine was written using HLSL compute shaders. Set111 plans to release the sandbox for free initially (“soon”) and then release DLC down the road to add more features. The experience is “a toy for now,” but the developer is considering adding game modes in the future. The game has only been shown on the HTC Vive for now, though there’s a chance that the Rift will see support through SteamVR as well.
The developer says that the game and its custom physics engine doesn’t rely on any vendor-specific rendering technology and is therefore optimized to run on any VR ready GPU, be it AMD or NVIDIA.
Without imposing the high fidelity rendering bar required for VR, Set111 says the physics engine written for Chroma Lab is capable of simulating 1.6 million particles at 60Hz on an AMD R9 290 (a four year old GPU); today’s high-end cards would presumably be able to push that much further. A video from the developer, which appears to be the Chroma Lab physics engine at an earlier stage of development, shows 400,000 particles simulated at 60Hz:
Responding to comments on Reddit about the Chroma Lab teaser, Set111 explains a bit more about the simulation and its limitations:
There is no limit to the amount of particles apart from VRAM and size. Ignoring overhead, rendering and counting sort, computational time is O(N) for all particle stuff and interactions (well apart from one). Increasing play space also slightly increases comp time due to counting sort and it massively increases VRAM usage. I could use a repeating grid for infinite playspace but it is not necessary for my game and having the particles in a fixed grid will be useful for future physics additions.
Assuming the fluid is not compressed, internal particles interact with about 55 others per iteration consistently.
All the particle calculations and data manipulation runs entirely on the GPU. The CPU barely does anything.
In addition to all the simulated particles, the developer says that the sandbox will have reactive music which should add some sonic spice to this visual feast.
I wouldn’t have guessed it, but Set111 says this is their first time developing a game, and that the impetus behind the project was to use it as a learning experience.
Chroma Lab‘s mesmerizing and reactive visuals remind us of Cabbibo’s work, who was recently interview by the Voices of VR podcast.