top of page

Asteroids 3D - PS4

Asteroids Gameplay Demo

OOP-PhysicsPerformance.png

OOP performance

DODPhysicsPerformance.png

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

bottom of page