A downloadable project

Those marked with * are modules without a programming project to submit

Programming projects for university modules are on private repositories due to university policy though code examples are available on request.

However, various screenshots and videos are available at the bottom of this page.

MODULE NAME
MARK
Group Game Development Project and Work-based Simulation
Working as a team to simulate a studio setting, produced a 2D game engine and then continuing to produce a game using said engine.
77
Final Year Project
I researched and implemented a 2D real-time fluid simulation using Smoothed Particle Hydrodynamics.
77
Low Level Programming
Given an existing raytracing framework, proceeded to profile and optimise the application as well as add linux support.
40
Advanced Graphics and Real-Time Rendering
Developed a rendering engine that demonstrates multiple advanced graphics techniques including Normal and Parallax Mapping as well as Animation and Terrain Rendering.
56
Technical Games Production
As part of a five person group, developed a puzzle game in which you use different coloured cubes with different properties to solve a variety of puzzles.
76
Further Games and Graphics Concepts
Created a physics engine which contained a mass aggregate particle system and rigid body simulation.
72
Concurrent Network Applications
Using C# and .NET to create a networked chat client and game. Utilises both TCP and UDP.
60
Artificial Intelligence for Games
Given an existing framework, implemented a state machine to control various steering behaviours in a small tank.
45
Further Mathematics and Algorithmics*
A series of lectures and tests covering topics such as quaternions, O notation and using dynamic programming to solve maths problems.
62
Computing Professional and Business Skills*
Covered the fundamentals of becoming a computing professional as well as a group project with students from the year above.
69
Fundamentals of Game and Graphical System Development
Created a 2D SDL Game and then moved onto 3D using OpenGL as an introduction to 3D programming.
71
Fundamentals of Computing and Mathematics*
Covered the fundamentals of maths for programming.
73
Games Engine Creation
A small game engine created in SDL to recreate Super Mario.
59

Media:

Final Year Project


Normal mapping implemented in the Advanced Graphics and Real-Time rendering module.



Terrain generated using the Hill algorithm implemented in the Advanced Graphics and Real-Time rendering module.

Video demonstrating a tesselation shader implementation in the Advanced Graphics and Real-Time rendering module.

Code snippets:

Downloads:

The two available items to download immediately are my FYP written segments. One is the submitted application and the other is its associated report.

The application controls are:

  • Left shift to iterate through the various rendering styles.
  • 1, 2, 3 - Reset the simulation to 3 different example states.
  • Left click to add particles - These need to be added alongside existing particles due to a zero check error.
  • Right click to add static particles - This can be used to create ramps and walls in the scene.

Download

Download
Particle Simulation.docx 1 MB