Recent Projects

Golf in 2D

2DGolf Splash 2DGolf Splash

About

A 2D golf demo built using the Godot engine, with the majority of gameplay logic written in C# and GDScript (a custom scripting language for use in-engine).

Tags

  • C#
  • GDScript
  • Godot
  • Game Design
  • Level Design
  • Mathematics
  • Physics

Source Code

Implementing Trajectories in Games

Scaling a trajectory Mathematics

About

A brief analysis of the main ways of implementing player-controlled trajectories in video games, accompanied by code (written in C++) that keeps the endpoint of a trajectory in place even whilst one trajectory parameter is varied.

Tags

  • C++
  • Unreal Engine
  • User Interface
  • Game Design
  • Vector Geometry
  • Newtonian Mechanics
  • Mathematics

A Game of Risk

Risk Risk

About

A C++ implementation of an algorithm that I wrote to calculate the probability of victory in a battle in the board game Risk. The algorithm estimates the probability of a victory by using a Monte-Carlo method to simulate thousands of possible outcomes.

Tags

  • C++
  • Standard Template Library
  • Probability
  • Statistics
  • Simulation
  • Random Number Generation
  • Runtime Analysis
  • Big-O Notation

Source Code

Solving the Binary Satisfiability Problem (SAT)

SAT Graph SAT Graph

About

The implementation of a 'brute force' algorithm that solves the Binary Satisfiability Problem in a non-polynomially bounded amount of time. A more efficient heuristic 'one-flip local search' algorithm is also implemented. The source code (C++) includes a number of helper classes and functions, including functionality to compare and output results in various file formats.

Tags

  • C++
  • Mathematics
  • Algorithm Design
  • Time Complexity Analysis
  • Big-O Notation
  • Heuristic Methods
  • Random Generation
  • Automated Testing

Source Code

Golf in 3D

Golf3D Unreal Engine

About

A 3D golf demo built using Unreal Engine and C++. This is an extension of the similar project in 2D, tackling the added complexities of an additional dimension and the challenges that come with this.

Tags

  • C++
  • Visual Scripting
  • Unreal Engine
  • Game Design
  • Level Design
  • 3D Modelling
  • Mathematics
  • Physics

Return Home