This is my final project for CS224 - Interactive Computer Graphics at Brown University, taught by John (Spike) Hughes. I worked with Parker Porfilio.
We implemented the cloth algorithm described in the paper "Large Steps in Cloth Simulation" by David Baraff and Andrew Witkin, and added an interactive user interface. The simulator uses implicit Euler integration, the modified preconditioned conjugate gradient method for solving the system of equations, adaptive time stepping, and constraints for basic collision response. We used C++ and OpenGL. In addition, we referenced David Pritchard's paper "Implementing Baraff and Witkin's Cloth Simulation" for more explanation on the force derivations. We also used Pritchard's code for optimizing sparse matrix operations.
Music: "Golden Hours" by Brian Eno.