Uno Ball Collector

3D Monster Maze

Spring 2020

I aimed to apply the mathematical concepts I learned during my A Level Mathematics studies to create 3D graphics, intentionally avoiding external resources to personally confront the challenges associated with rendering such graphics. Consequently, I gained valuable insights into the methodologies used in modern software for 3D rendering, which were further enriched through my third-year Graphics module.

JavaScript
P5
Graphics
Collision
Pausing

Key Features

Challenges, solutions and lessons learnt

My primary challenge revolved around 3D graphics, particularly the complex task of correctly projecting 3D objects onto a 2D plane. This challenge led me to develop my own matrix library, which allowed me to embed the projection process into matrix calculations. Another issue I encountered, was when I projected a polygon with points behind the camera resulting in unrealistic edges. To overcome this, I devised an algorithm to split polygons into new polygons where all points fell within the camera's point of view (POV). Subsequently, through my graphics modules, I learned about all the processes involved in the 3D graphics pipeline. Pursuing this goal has provided me with a much deeper appreciation for the careful considerations involved in the entire pipeline.

Embedded Game