2D Grid Based Fluid Dynamics Simulation (Difficulty Level: 2.0)
Write a fluid dynamics simulation that estimates the behavior of an incompressible, homogeneous fluid under the Navier-Stokes equations. You can use GLSL fragment shaders to perform the physics calculations on the GPU interactively.
3D Position Based Fluid Simulation and Surfacing (Difficulty Level: 3.0)
3D fluid simulation may sound scary, but don't worry. This paper introduces a not very complicated algorithm for fluid simulation as multiple spherical particles. And from the simulated particles, you can build a surface and render it like real water!
3D Robot Gestures (Difficulty Level: 1.5)
Write a mini Blender GUI that allows moving and rotating joints of a robot, as well as other basic operations such as rotating the camera and zooming in/out. Solve inverse kinematics, render it in real-time, and show some cool gestures!
3D Snow Simulation (Difficulty Level: 3.0)
Snow is a challenging natural phenomenon to visually simulate. This paper introduces a hybrid particle-based and grid-based method for snow simulation with various parameters.
3D Melting Simulation (Difficulty Level: 3.0)
Want novel ways to destroy a bunny? This paper teaches you how to melt it.
Rigid Body Simulation (Difficulty Level: 3.0)
In addition to just fluids, we can use particles to simulate rigid bodies. Here is a paper describing the basics of rigid body dynamics. Rigid body simulation can be done in real time on GPU. NVidia's GPU gems has a good article on how this can be done.