A ray tracer with various material implementations such as reflection, refraction, Blinn-Phong, and Lambert. Incorporated area light with various random sampling methods and ambient occlusion to achieve soft shadow effect.
|
Mini MayaA mesh editor with basic functionalities such as face extrusion, subdivision, vertex move, face triangulation, and skinning of a half-edge mesh. Allows for importing of different .obj files and .json files containing skeleton information.
C++, OpenGL
(Code review available upon request) |
Mini MinecraftA personal take on the classic Minecraft game. Worked with a team of 3. Features implemented include multithreading noise-based terrain generation, ray casting for inserting and removing blocks, frame buffer overlay water effect, and player swimming.
C++, OpenGL
(Code review available upon request) |
WeaTHARVisualizing weather using augmented reality and ARCore.
|
RasterizerA 3D rasterizer and perspective camera controls.
C++, OpenGL
(Code review available upon request) |
OpenGL ShadersImplementation of various popular shaders such as Matcap and Blinn Phong.
C++, OpenGL
(Code review available upon request) |