top of page

Project Primitive

This project was my first time creating a custom engine. I was tasked with creating the 2D physics in the engine. In the end, I supported Circle collision, Axis-aligned bounding box collision and collisions between the two.

The demo above shows the circle-circle collision and the integration physics in action. The demo below was one of our final submissions, a Peggle-like game. It demonstrates all collision types and the integration physics again.

The physics was split into 2 parts:

  • Data

  • Execution

Data​

All of the data the execution needed to perform the physics calculations was stored in a class called the PhysicsComponent.

This component would be the way the users of our engine would communicate with the physics implementation, so this header file has been heavily documented using doxygen. The implementation of these functions can be found in the source code below.

Execution​

The data that is set in the above code is used in the Collision operator, see code below.

Icons by Icons8

  • envelope (1)
  • White LinkedIn Icon
bottom of page