A 2D platformer made in monogame for my game behaviour module around a custom C# framework featuring original AI and physics implementations. Features AABB broad phase collisions, SAT narrow phase, support for physics materials and coefficients and a robust A* pathfinding solution for NPCs. Tile-based world generation and inheritance-based structure make this framework easily extensible.
C and ASM Bootable OS
A small bootable operating system floppy image written in C and Assembly as part of my systems programming module, with functions for drawing simple shapes and lines.
Drawing functions were written in C directly accessing video memory and called in ring 0, then a mapping layer was written in assembly to allow these functions to be called in protected mode (ring 3). On boot the OS loads the kernel then enters protected mode before displaying the drawing demo. Requires an emulator such as Bochs to run.
A very simple and lightweight raytracer created with C++ and OpenGL as part of our graphics II module during second year. This was my entry point for lighting equations and shaders, using raytracing as the most direct and "real" way to represent these concepts as they are physically simulated.
This implimentation can handle ambient and diffuse lighting as well as specular highlighting as well as shadows and basic anti-aliasing.
Copyright @ All Rights Reserved