Water and Buoyancy
Dan and Erik teamed up on the water and buoyancy simulation shown in the video. Dan has been working with many types of water simulation, including grid-based and particle based methods. We are showing a grid-based method here, but Dan has also mocked up a Smoothed Particle Hydrodynamics (SPH) model. We have not finalized the method we will use or ship date. In the demo you can see wedging at the lake/shore interface, which we will work out prior to shipping.
Erik Cassel has created a buoyancy enhancement to the physics engine that interacts with Dan’s water simulator. Erik is modelling both density and viscosity in the simulation. He is keying object density off material, so that less dense objects (wood, plastic) float, while denser objects (metal, rock) sink. The equations of motion and collision detection methods governing buoyancy are very similar to those used for rigid body motion in ROBLOX, so the integration was relatively straightforward.
The demo does not include swim and wade states for characters (in development), so in Erik’s demo his character just walks along the bottom of the lake.
Tim Loduha has been improving our rigid body physics engine and gives a peek at more mechanical parts with the rope bridge. As the bridge falls into the water you get to see water, buoyancy and ropes all working together in the same physics simulation. This is a tech demo from hack week at ROBLOX, so right now we do not have specific ship dates.