ABOUT Physically Based Simulation

In the Fall of 2014, I took VIZA659, Physically Based Modeling course. I learnt the fundamentals and implementation of various physically based simulation. The main topics included particle systems, paticle interaction, collision detection and response, spring-mass-damper systems, integration techniques, and rigid body dyamics. I use C++ and OpenGL for the particle system and the rest I developed with Java, with the help of Processing to handle the graphics. I had to also write my own matrix and vector class for the rigid body simulation. Following this in the Spring of 2015, I took VIZA689, Advanced Physically Based Modeling course. I learnt about lagrangian and eulerian fluid simulations, about the Navier-Stokes equations for fluid simulation, constrained dynamics, briefly touched upon Featherstone's algorithm, and crowd simulation.

Languages used: C++, OpenGL, GLUT, Java, Processing

Cloth Simulation, wind force based on mouse position

Created lattice of points which are connected by structural, shear and bending springs. This simulation uses fourth-order Runge-Kutta integration.

Craig Reynold's Flocking Simulation

This is a simulation of interacting particles also called boids. All particles have velocity matching, collision avoidance, and flock centering forces during the simulation. These parameters can be interactivelymadjusted. The simulation uses Euler integration.

Stam's Fluid Simulation

This is an implementation of Stam’s Stable Fluids paper. This semi- Lagrangian approach is used to replicate gaseous state. A density field is created on mouse click and velocity field is introduced on mouse drag.