Implemented features to handle efficient ray-scene intersections with the Moller-Trumbore algorithm, BVH generation, direct and global illumination, material simulation, and adaptive sampling.
An extension on the Pathtracer project to allow the renderer to handle homogenous participating media.
APIC fluid simulation which is an extension of the PIC/FLIP fluid simulation originally written by Robert Bridson, and later augmented by Ante Qu.
Implemented optimizations to improve performance of realtime rendering, including high precision reverse depth buffering, pixel buffer object support for asynchronous transfer, and arcball camera logic.
Implemented features in a rasterizer to handle basic rasterization, antialiasing, barycentric coordinate interpolation, rapid triangle in-testing, and level sampling and pixel sampling for texture mapping.
Implemented logic to handle computation of bezier curves and bezier surfaces, as well as manipulation of triangle meshes, such as edge flipping, edge splitting, and mesh subdivision.
An implemented version of neural style transfer from Gatys' paper. Using convolutional neural nets to extricate style patterns from famous paintings, and re-rendering photos with those style influences.
A very rudimentary form of augmented reality. Uses OpenCV to track points in captured video, allowing for projection matrix computation, and camera calibration, at which point simple overlays can be projected onto the video.