Programming & Maths Implementation

The project required a custom maths library, which I built to include vectors, 4×4 matrices, trigonometry functions, and quaternions. I created a generalised transform function that could apply scale, rotation, and translation to objects in a single step, which became essential for calculating planetary orbits. Each planet used the same script, made editable in the Unity inspector through the use of [System.Serializable], which allowed me to efficiently customise parameters for each body. Planets orbited the sun using quaternions and modified vector rotation formulas taken from lecture material, while moons reused the same system with added retrograde functionality and bug fixes. Together, these elements formed a modular and reusable framework for the entire simulation.