Thesis: Simulating Multi-directional Gravity in a 3D Platformer using Vector Fields