Asteroids 3D - PS4
Asteroids Gameplay Demo
OOP performance
DOD performance improvement
This project was developed for the Console dev class in a span of 2 weeks. While diving into PS4 technicalities, we also tried to prove performance enhancements with the Data-oriented design approach over traditional OOP. The comparison in the screenshots shows improvement with the DOD implementation of the Physics system.
​
I worked as a generalist programmer on this project and was involved in writing the physics system, ECS.
​
-
The project contains a primitive entity-component system containing only the physics and the rendering component per entity using Structure-Of -Array format.
​
-
The project features a brute force collision check implemented using a data-oriented design. The performance for the physics update loop was 3x faster for the data-oriented implementation versus the non-data-oriented implementation.
​
-
The project also features a spawning system that makes use of data-oriented design but the performance boost over this section was far less observable as it was already a rather sparsely used function with respect to time.
​
Note: The codebase of this project is only available on direct request for the sake of job application as it was worked on under an NDA with Sony.
​
You can see the sample Data-Oriented Physics system code on Github at link
​