Multiple Interacting Jellos
A mass-spring system designed to simulate multiple interacting blocks of jello
Overview
One of the spring 2012 CIS563: Physically Based Animation assignments was a mass-spring damper system capable of simulating a single jello cube interacting against a plane. I took that project and extended it to allow for complex multiple jello interactions, interactions against arbitrary mesh scenes, Maya integration, multithreading, better integration methods, KD-Tree acceleration for intersection testing, and more. This project is written entirely in C++.
Base Code
This project utilizes base code written by Aline Normyle for CIS563: Physically Based Animation.
Features
Select Images and Videos
Acknowledgements
This project would not be possible without the guidance of Dr. Joseph T. Kider, the instructor for CIS563 in the spring of 2012. I would also like to thank CIS563 TAs Tiantian Liu and Peter Kutz. Friends Gabriel Leung, Adam Mally, and Dan Knowlton acted as sounding boards for various ideas and discussed ideas.
Project Blog Posts
Progress updates for this project were posted to my development blog, Code & Visuals. The following posts detail the development of this project. Posts are listed starting with the most recent:
Resources
In the process of building my simulator, I drew upon the following papers, and articles. They are listed in no particular order.
Physically Based Modeling SIGGRAPH 2001 Course Notes: A primer on differential equation basics, particle dynamics, and implicit integration techniques by Andrew Witkin, David Baraff and Michael Kass.
Particle Systems: A Technique for Modeling a Class of Fuzzy Objects: The original 1983 William Reeves paper introducing particle systems.
Implicit-Explicit Schemes for Fast Animation with Particle Systems: A 2010 paper on integration schemes by Bernhard Eberhardt, Olaf Etzmuss, and Michael Hauth.
Implicit-Explicit Runge-Kutta Methods for Time-Dependent Partial Differential Equations: A 1997 paper describing using RK4 integration for solving equations of motion by Uri Ascher, Steven Ruuth, and Raymond Spiteri.
Runge-Kutta Methods Wikipedia Article: A fairly concise summary of the Runge-Kutta integration schemes, including RK4.
Effective Mass Wikipedia Article: A fairly concise summary of spring-mass systems.