Created for the delivery of Graphics II's assignment, features planet generation, atmospheric shader that can seamlessly blend from space to the terrain, orbital mechanics, rudimentary collisions.
Supports up to any number of planets, though two were selected for the Demo; simple planet LOD system is in place and planets can generate static objects on their surface (sample of one rock generated on the surface of the earth-like planet).
A game in which you take control of a small planet named "Ratha"; your objective is to build small modular rockets and shoot them to other planets to slowly drain from their velocity until they deorbit into The Sun. Bigger fuel payloads and higher impact velocities will drain a larger amount of velocity from planets - but be mindful of the amount of fuel you are using when getting to your destination, and of the other planets that are trying to do the same!
Enter a mysterious house that has been abandoned for many years, with a strange device that allows you to travel between two different timelines. Experience the mansion before and after its decay, where certain paths will only be accessible in one timeline, and certain items will only be accessible in another. Through a combination of puzzle solving and exploration, discover all the hidden clues to unlock the safe, and see what it has been hiding for centuries.
Created for the delivery of Graphics I's assignment, features a custom CPU-based rasterizer that can display meshes, draw, and shade them using a variety of systems, including simple flat shading, Phong shading, and Gouraud shading. It supports loading textures and supports Directional, Point, and Spot lights.
Created for the delivery of Programming II's assignment, features a genetic learning algorithm that evolves a more ideal version of a "critter" across multiple generations by randomly mutating favourable genes that result in different configurations of a simple feed-forward neural network.
Networks start out simple, often with no intermediary "hidden" layers, and eventually evolve to generate one or more of these. Due to overhead from the rendering system, evolution cannot be carried out particularly far however.
Created for the delivery of Netwoks And Security's assignment, features a custom made terminal interface that separates input and output windows to allow for output to be received whilst input data is being typed. It features a custom built parser for a JSon-like variables system, full support for RFC-821 compliant SMTP protocols, Diffie-Hellman key exchange and modular DLL dynamic loading.