Physics Simulation Morten Paluteder
What is physics simulation?
● Imitate the laws of reality ● Computer animation, film, industrial design, video games, science
The physics
● Mechanics ● Kinematics & kinetics ● Newton's laws of motion ● Forces, force fields, friction
Physics engine
● Middle man between hardware and software ● Real-time vs high-precision ● Scientific engines ● Game engines
Rigid body
● All the bodies that are not deformable ● Resistant body ● Translation, rotation
Rigid body collisions
● Different implementations ● Rigid body as a set of particles ● Detect particles collision ● When two particles collide, apply force
Soft body
● Deformable objects ● Maintain some kind of shape ● Multiple methods ● Simulate cloth ● Fracture, cutting, tearing ● Collisions – discrete, continuous
Crashes
PhysX
● Owned by Nvidia ● Free SDK on Windows ● Physic Processing Unit (PPU) ● Unreal Engine, Unity, Torque
● PhysX Flex
Havok
● Owned by Intel ● Over 500 titles ● Second life
PhysX vs Havok
● The big two ● Havok a bit more on consoles ● PhysX free on Windows
Bullet
● Free and open source ● Collision detection, rigid and soft body dynamics ● 15 games (GTA4&5) ● 10 Hollywood movies ● Blender, Poser and other 3D tools
Bullet Physics in Blender
Ragdoll physics
● Series of animations ● Death sequences, falling ● Gameplay element
Bunnyhopping
● Originates from Quake Engine ● Unnaturally fast movement ● Air strafing ● Quake acceleration & friction ● Competitiveness
More
Adventure of a ball Flappy Bird Cabbage Frozen Snow
Links & References
David M. Bourg, Bryan Bywalec 2013: Physics for Game Developers, 2nd edition GPU Gems 3 https://flafla2.github.io/2015/02/14/bunnyhop.html