Overview

Author: Justin Venezuela (jven@mit.edu)
6.837 Assignment 2

Last modified: 11/1/11

------------------
How to Compile/Run
------------------
To compile on Athena, run 'make' in this directory.

To run, './a3 <step_size> <integrator>', where <step_size> is a float denoting the step size of the integrator and <integrator> is a string equal to either "e" or "t", depending on whether the Euler or Trapezoidal integrator is to be used.

While running, pressing 'w' will toggle the display mode (wireframe or shading). Pressing 'b' will toggle the random wind force. Pressing 'm' will toggle sinusoidal movement.

-------------
Collaborators
-------------
Max Nelson, Haitao Mao

----------
References
----------
None, the assignment handout was fairly self-contained.

------------
Known Issues
------------
The stability of the system depends very largely on the various constants (drag, gravity, spring constants/rest lengths), so perhaps for certain configurations, the currently set constants may yield undesirable effects.

------------
Extra Credit
------------
We implemented shading for the cloth, using triangular faces. We implemented a 'gentle breeze', simulating wind forces. We implemented basic collision detection between the cloth and a sphere.

--------------
Other Comments
--------------
I think the difficulty of this assignment was highly over-exaggerated, both in lecture and in the assignment handout. It was most annoying to get the starter code to initially compile, but after that, this was no more difficult (and arguably not as difficult) as some of the previous assignments.