Skip to content

Latest commit

 

History

252 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Archive

An archive of favourite projects that I have worked on, at some point in the past. Projects may be missing large data files.

2025

  • Web Vector - Spring project - My submission to the Cambridge Game Jam 2025. The graphics are written using a custom render pipeline I wrote last spring. The game uses graphics buffers to efficiently implement deferred lighting, halftone shadow volumes, cel shading and post processing such as motion blur and bloom - a range of rendering techniques. The spider has a movement system allowing it to walk on any surface, be it a wall, ceiling, or any arbitrary mesh. This makes creating levels just using modelling software such as blender viable.

2024

  • FEA for modelling deformation of hyperelastic materials - ongoing - A near-real-time parallel solver in HLSL for momentum conservation of an incompressible soft-body under deformation. The model is a hexahedral volume mesh generated by performing Catmull-Clark volume subdivision on a coarse model. The problem is linearised as a weak-form matrix equation which is iteratively solved using Newton-Raphson method, and the model is updated using the Newmark-beta method. Iterative solvers for the matrix equation implemented include BiCGSTAB and GMRES, and preconditioners for these methods currently include RAS, ILU, Gauss-Seidel, and multigrid methods which aid convergence. Future plans to use this solver to animate a human face, and train a neural network to approximate solver for real-time solutions.
  • Custom Render Pipeline - Spring project - A custom render pipeline I wrote in Unity, which is easy to add to, giving much more control to the programmer than Unity's prebuilt render pipelines. This pipeline was used for my game Web Vector.

2023

  • Music Theory - Winter project - A system to produce customisable sound waves with a GUI that makes it easy to play notes and many chords in different modes of the diatonic scale, and other scales. The MIDI version outputs the sound on a MIDI channel.
  • Ray tracer - Winner of 2023 Part IA Rendering Competition - Distributed ray tracer that handles reflection, refraction, and texture mapping for primitive shapes.
  • Bit Logic - Autumn project - A graph-based interface to create logic circuits from basic logical components. Can save logic circuits as procedures and insert them into more abstract circuits. Adapted from NN Builder (spring project).
  • Third Law Alignment - Summer project - A procedural planet generation system detailed with procedurally generated grass, trees, paths, and dynamic character animations and camera system capable of naturally traversing this terrain. An improved version of the systems in Third Law (2022), but with less extra features.
  • NN Builder - Spring project - A graph-based interface to create neural networks from basic matrix operations, such as a feed forward layer or convolution, with implementations on CPU and GPU. Can save trained networks as procedures and insert them into other networks.

2022

  • Third Law - Year project - NEA Project for A level - A procedural galaxy generation system that is composed of solar systems each composed of a sun and planets. The player can explore planets, gather materials, and fly between solar systems in a ship.

Before 2022

  • This used to be a GitHub web page of personal projects.

Select Screenshots

Ray tracer

wet-cyberscape.gif Ray tracer scene.

Web Vector

WebVector.mp4

Video clip of game entry for game jam using the custom render pipeline.

Third Law Alignment

wedge.png Screenshot showcasing grass and terrain. journey.png Screenshot showcasing tree generation.

walking.mp4

Video clip showcasing movement over terrain.

fighting.mp4

Video clip showcasing movement during combat.

Finite Element Analysis

cube.deformation.mp4

Deformation example, pressing down in the centre of a cube (surface traction). torusdeform.png Deformation example, pushing arch down and right (uniform force).

Bit logic

counter.gif
4-bit counter.

Third Law

flyby.gif
Planet exploration in Third Law.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages