To be done (February-August 2022)
I did a part-time research project on diffuse real-time global illumination. This project was a collaboration between Cyril Soler (INRIA Grenoble) and Laurent Belcour (Unity Grenoble).
A real-time deferred renderer using OpenGL. Its most notable features are image-based lighting, normal mapping, dynamic shadows using shadow mapping, basic temporal antialiasing and ambient occlusion.
See the portfolio page for a showcase of some features
This is a simple Monte Carlo path tracer. It has a bounding volume hierarchy for fast ray-triangle intersections, and uses a physically-based rendering model.
I wrote this software rasterizer after learning OpenGL because I wanted to better understand the rendering pipeline.
A barebones GameBoy emulator: as of now it can start a game of Tetris. It also has an integrated debugger with a memory and VRAM viewer.
A work-in-progress C99 compiler targetting x86_64. Right now it is very incomplete and can only handle simple control flow and variables. The ultimate goal of the project is to have toycc compile itself.