Unity DOTS - Physic VR simulation

A massive number of physic driven entities powered by Unity DOTS.

Featured image

This project was initiated with the primary goal of enhancing my coding scalability skills. As someone with a background predominantly in traditional object-oriented programming using .NET and Unity, venturing into data-driven development was an entirely new realm for me. The introduction to Entity Component System (ECS) within Unity’s DOTS framework presented an invaluable opportunity to immerse myself in and assimilate clean and scalable programming patterns within a data-driven architectural context.

Furthermore, the Unity DOTS physics package, renowned for its capacity to handle an extensive number of physics entities, captivated my interest and curiosity. This project not only facilitated my learning journey but also allowed me to create visually appealing simulations : a perfect blend of aesthetics and technical skill development. It has been a truly rewarding experience.

latest version : 20 000 physic entities driven by a custom movement system, recorded in editor.

Additionally, this provided a good opportunity to delve into VFX graph technology, facilitating the transition of allocated resources from the CPU to the GPU. Given the CPU-intensive nature of physics simulations, this shift empowered me to further scale the number of physical entities within the project.

Also playable on normal flatscreen with gamepad or kb/m

A huge work on other optimizations has been done to maintain the VR target of 90 fps.

VR gameplay of an earlier prototype without post processing.

It also allowed me to consolidate and enhance my existing skill set encompassing various domains, including VR interactions, game and level design, modeling, texturing, VFX, audio management, lighting, and post-processing.

Smooth entities movement chasing the player.