Website created using Wix
© Joshua Marshall - 2018

Low-Level Games Programming

Low-Level Games Programming is a single-semester module on the Computer Games Programming course at Staffordshire University.

The core focus of this module was memory management and optimisations. For the assignment, we had to take an existing Ray-Tracer framework and optimise & expand it using various different methods. These include:

  • Implementing Multi-Threading

  • Implementing Memory Pools

  • Overriding the 'new' and 'delete' operators

Once optimisations had been implemented, we were tasked with porting our framework over to the PlayStation 4 system. Please note that there is very limited I am allowed to say about this task, as we had to sign a Non-Disclosure Agreement with Sony Entertainment.

For my assignment, I implemented 2 multi-threading techniques, a Memory Pool, optimised the file output for the final rendered images, and created a GUI to interact with the Ray Tracer from a more user-friendly standpoint. This GUI contains:

  • Image Resolution selection

  • Multi-Threading type selection

  • Scene Selection

  • Video Length

  • Custom Scene Editor