Physics

24
Physics Michael Vernier Robert Weekley Michael Ford

description

Physics. Michael Vernier Robert Weekley Michael Ford. Why Physics?. More interactivity Looks cool (explosions) More realistic More variety and easier animations (rag doll physics for death animations) Better gameplay (space fighter, driving games). Why a Physics Engine?. - PowerPoint PPT Presentation

Transcript of Physics

Page 1: Physics

Physics

Michael Vernier

Robert Weekley

Michael Ford

Page 2: Physics

Why Physics?

• More interactivity

• Looks cool (explosions)

• More realistic

• More variety and easier animations (rag doll physics for death animations)

• Better gameplay (space fighter, driving games)

Page 3: Physics

Why a Physics Engine?

• Physics simulation is hard

• Requires very stable integrator

• Articulated bodies especially take difficult math

• Optimization is important

• Spring systems explode easily

Page 4: Physics

Major Features

• Collision detection

• Newtonian forces and collision response

• Buoyant forces

• Friction

• Articulation and jointed characters (rag doll)

• Prebuilt objects for simulation

Page 5: Physics

Physics Toolkits

• ODE (Open Dynamics Engine)• Ageia PhysX• Newton Game Dynamics• Havok• Havok FX• Tokamak Game Physics

Page 6: Physics

Newton Game Dynamics

• Free for use with credit to authors.

• Cross Platform (Win32, Mac OS X, Linux)

Page 7: Physics

Features

• Collision Detection• Collision Response• Buoyancy• Friction• Seven different Joints• Rag Doll Physics• Height Map Collision• Claims very stable solver

Page 8: Physics

API

• C++ API

• Tutorials

• Wiki

• API Documentation seems complete

Page 9: Physics

Used In

• Not very much yet.

• Several small independent games.– Future Pinball– Trembling Towers– Classic Cars Racer– Virtual Reality Chat– Ultra Stein 3D Pinball

Page 10: Physics

Ageia PhysX

• Features– Designed for massively parallel hardware– Designed with games in mind

• Complex rigid body system• Volumetric fluid and cloth simulations• Advanced Character Control• Ray-cast vehicles

– Support for many scenes

Page 11: Physics

Ageia PhysX

• Features (cont’d)– Remote debugging capability– Cross-Platform

• Single and multi-core PC• Xbox 360• Playstation 3• PhysX Processor!

Page 12: Physics

Ageia PhysX

• Problems– Commercial licensing

• Free for non-commercial projects• $50k per SKU for commercial products

– Currently no killer game to show off the processor

• But, they’re on their way

– Limited availability of PhysX cards

Page 13: Physics

Ageia PhysX

• Who’s using PhysX?– Partners

– Other Developers

Page 14: Physics

Ageia PhysX

• API – C++– Primitives

• Box (AABB, OBB), sphere, capsule, plane, line, ray, height map, convex mesh, triangular mesh

– Joints• Spherical, revolute, prismatic, cylindrical, fixed,

distance, point in plane, point on line, pulley, 6DOF

Page 15: Physics

Ageia PhysX

• Tools– PhysX Create

• Plugins for 3DS Max and Maya

– PhysX Rocket• Preview and tuning of content

– PhysX VRD• Real-time visual remote debugger

Page 16: Physics

Ageia PhysX

• Demos– GRAW comparison of PhysX processor– Fluid Dynamics (Fog, Napalm)– Artificial Studios Cellfactor– Bet on Soldier: Blood Sport

Page 17: Physics

Open Dynamics Engine (ODE)

• Rob needs to get off his lazy butt and fill this in

Wunderverbindungen

Page 18: Physics

Open Dynamics Engine (ODE)

• Features– Open Source– Platform independent– Rigid Body Dynamics (V3)

• Vehicles• Virtual Reality Environments• Virtual Creatures

Page 19: Physics

Open Dynamics Engine (ODE)

• Features (cont’d)– Collision Detection– Collision Handling– Friction– Three different Joints

Page 20: Physics

Open Dynamics Engine (ODE)

• Problems– Traded Accuracy for Speed and Stability– 2 Years since last release – 2 + Months since last “Nightly Build”– Samples crash or don’t work

Page 21: Physics

Open Dynamics Engine (ODE)

• Who’s using ODE?– 87 linked users– Games & Game Engines

• 3Impact• Gryps Engine

– Tools• Juice• Blender

– Simulators

Page 22: Physics

Havok

• Industry Standard

• Used in Half Life 2, Halo 2, F.E.A.R., and many other blockbuster games.

• Also used in the Jupiter EX game engine.

• Very expensive (they won’t even give you a price if you don’t work for EA)

• Joining with nVidia to use the GPU for physics calculations.

Page 23: Physics

Physics and Ogre

• OgreODE– Adds prefab vehicles and rag-doll support

• OgreNewt– Implements nearly all of Newton’s

functionality

• NxOgre– Adds state machine support

Page 24: Physics

Questions?