«
Owen Seidler
Software Development
Simulating Multi-Directional Gravity in a 3D Platformer Using Vector Fields
The goal of my thesis was to recreate the gravity field system of the game Super Mario Galaxy with third-person , 3D-platformer player controls and physics . My thesis featured nine different planet shapes , each of which had a gravity field surrounding it , which used a vector field equation to determine the direction of gravity while the player was inside it . Using an in-game menu , the user could spawn in new planets with customized parameters such as type , position , size , orientation , and color . Additionally , my thesis had a focus on creating fun , finely tuned , and responsive player controls and movement , and playtesting was held to verify the successful realization of this goal .
I chose this as my thesis because my goal as a game programmer has been to use programming for the pursuit of fun , and Super Mario Galaxy has been one of my
favorite platformers for a long time . Thus , I wanted to get a better understanding of how the game used the gravity mechanic to achieve fun in a unique way that other platformers haven ’ t .
From working on this thesis , I got to work on and learn a lot about many different topics . From creating the different planet types , I learned more about collision algorithms and mesh generation . From the gravity fields , I learned more about physics and math . However , what taught me the most was definitely creating the player character , as in order to get it to its final state , I had to delve into physics and forces , collision , input , quaternions , basic animations , and even some design . Ultimately , this project allowed me to explore a wide range of different programming and game development topics , and I am very proud of the final product .
72 SOFTWARE DEVELOPMENT