We implemented three spring/mass system simulations.
First, an elastic rope was simulated, where the rope was represented by several nodes connected by edges. We took into account gravity, node and edge friction, Hooke's law and flexion springs.
Parameters determining the gravity constant, spring constants, friction coefficients, natural and max length of the edges and the mass of nodes could be altered before running the simulation.
In real-time, additional nodes could be added or removed, forces could be toggled on or off.
Afterwards, we extended it to a 2D piece of cloth rather than a 1D rope, adding a wind force to the simulation. Finally, we added another dimension to simulate 3D jelly.
This project was implemented using C++ and OpenGL.