Projects
3D Gravity-bending Platformer
● Made using Godot Engine 3.5 in the GDScript language.
● Taking inspiration from the Mario Galaxy Games I recreated their unique gravity systems
and a basic set of the player’s movement abilities.
● The created gravity systems give the level designer complete control over how the
player is affected by gravity with a variety of Gravity Fields which all have unique behaviours. The different Fields include:
● For Fields to work I created empty Classes with functions and variables defined as a work-around to GDScript not having a C# Interface equivalent.
● Utilising Godot’s built-in octree spatial partitioning in the physics engine, Gravity Fields that won’t affect an Entity don’t do any calculations for them.
3D & 2D Inverse Kinematics Plugin for Godot
● Made using Godot Engine 3.5 in the GDScript Language.
● Inverse Kinematics is used for dynamic animations. A common use case for this is
aligning feet to the floor they’re standing on.
● Due to limitations of Godot’s in-built Inverse Kinematics in which it cannot be used
without a mesh, I made my own implementation that overcame the limitations.
● As a result, this tool was able to Attach objects to the individual bones of another object
while staying completely decoupled from the object they’re attached to.
● For one it could be created, accessed and used without mesh.
● All bone attributes could be changed in-engine and in real-time without external tools.
2D Endless Runner
● Made using the Unity Game Engine in C#.
● Taking inspiration from the Mobile game Geometry Dash I made an Endless runner
using mechanics from that game.
● Using a procedural generation method where I use building blocks that append onto the
previous block to create a chain of obstacles which in turn avoids impossible situations
i.e Gaps too wide or ledges too high to jump up to.
● One of the obstacles taken from Geometry Dash is the Gravity Inverter which swaps the
direction the player falls.
Education Projects
3D Procedural Tower Defence
● Made using Godot Engine 3.5 in the GDScript language.
● Player defends increasingly difficult waves of varied enemies using a selection of
defences.
● Utilised procedural generation to extend the Enemy’s path along with the map.
● I performed R&D for improving the performance of a computationally expensive
GDScript by re-writing it in C#.
● The project also experimented with merging multiple towers into stronger forms but the
feature was scrapped due to time constraints.
3D Spaceship Arena Shooter
● Made using Unreal Engine 4 with Blueprints. (Visual Scripting)
● Player ship has a Lead Indicator to help with aiming at moving targets.
● Enemy ships fly as a swarm, appearing to have more intelligent behaviour by using a
Boids algorithm.
● Player’s progress through Arenas is saved and an individual Arena can reload itself
seamlessly when the player respawns.