CS184 Graphics Projects

For UC Berkeley’s CS184: Computer Graphics and Imaging course, I worked on implementing a 2d rasterizer, 3d Bezier curves and surfaces, algorithms to manipulate half-edge meshes, mesh up-sampling by loop subdivision, ray-tracing renderers for various materials, and a clothing simulation mod for Minecraft.
Projects
2D Rasterizer
Here’s a link to the project report
MeshEdit
Here’s a link to the project report
Pathtracer-1
In this project, I implemented a CPU-based ray-traced renderer that can render complex scenes with multiple light sources and complex materials. The above image was rendered using my program.
Here’s a link to the project report
Pathtracer-2
In this project, I further extended Pathtracer-1 to support Microfacet(rough-surface) materials, glass materials and mirror materials.
Here’s a link to the project report
ClothSim
In this project, I wrote a physics engine that simulates clothing materials. I also implemented shaders to render the cloth (and environments) in real-time.
Here’s a link to the project report
ClothingMC
In this project, we wrote a physics-based cloak simulation mod in Minecraft. The cloak is made of cubical meshes with $32 \times 20$ by size and is simulated by a mass-spring system.