Jump to content

  • Log In with Google      Sign In   
  • Create Account

List of physics engines and reference material (updated 7 March 2011)

  • You cannot reply to this topic
10 replies to this topic

#1   Members   


Posted 12 December 2007 - 04:56 AM


Someone suggested that it might be useful to have a sticky list of physics engines and reference material available here (for convenience...the info is all available elsewhere). So, I am giving it a try.This thread is not for discussions. It is simply meant to contain links to commonly-requested information. I'll leave the thread open for contributions, but I will remove anything that is remotely off topic or tangential. Add links, but do not discuss!
-------------------------------------------------Commercial Physics Engines (usually written in C++)-------------------------------------------------
Note that most of these have license options that are attractively priced for indie and hobby developers.

Havok (3D, free for non-commercial and inexpensive commercial PC games, fee-based for games above a price limit, non-game applications, and consoles. Download available from Try Havok.)
NovodeX (see Ageia PhysX)
Ageia PhysX (previously NovodeX, now NVIDIA PhysX)
NVIDIA PhysX (previously Ageia PhysX) (3D, free for PC-based games, free for PS3 through Sony pre-purchase, fee-based for other consoles)Oxford Dynamics (3D, vehicle sim - appears to be dead...)
Digital Molecular Matter (DMM) from Pixelux Entertainment (3D, fee-based licensing)
SPE Simple Physics Engine (3D, free for noncommercial, fee-based for commercial)
Chrono::Engine (3D, free for noncommercial use, fee-based for commercial)
True Axis (3D, free for noncommercial, fee-based for commercial with a reasonable indie license option)
Gino van den Bergen's SOLID collision detection library (3D, fee-based for commercial, open sourced for GPL/QPL projects)
SimVex - (previously simul-X) Addon library for Havok enabling game-quality vehicle creation of any configuration, cars, motorcycles, aircraft, etc.
CarX - CarX is a car physics engine for AAA racing games. (3D,C++,fee-based licensing)

-------------------------------------------------Open Source and Freeware Physics Engines-------------------------------------------------
Bullet (3D, open source Zlib license)
Open Dynamics Engine (3D, open source BSD license)
Box2D (2D, open source permissive Zlib license)
Tokamak Physics (3D, open source BSD license - Sourceforge Link)
Newton Game Dynamics (3D, custom free-use license)
JigLib (3D, open source Zlib license)
Chipmunk (2D, open source unrestrictive MIT license)
Open Tissue (various, open source Zlib license)

------------------------------------------------------------XNA-Compatible ports------------------------------------------------------------
JigLibX - XNA port of JigLib (previously JiggleX)
Bullet for XNA

------------------------------------------------------------Other ports------------------------------------------------------------
JigLibFlash - port of JigLib to Flash via ActionScript 3

------------------------------------------------------------"Abstraction Layers" that support multiple physics engines------------------------------------------------------------
Open Physics Abstraction Layer - OPAL (is this dead?)

-------------------------------------------------Technical References (most are quite advanced)-------------------------------------------------
Tutorial presentation materials on game physics from GDC (Essential Math) A good starting point for beginners
Kenny Erleben's Ph.D Thesis on Multibody Dynamics Simulation
Article on Sweep-and-Prune collision detection by Pierre Terdiman
Dr. Jan Bender's page on impulse-based dynamics, with papers and a downloadable library
Claude Lacoursière's Ph.D Thesis on multibody dynamics simulation
Advanced Character Physics - Thomas Jakobsen (often referenced)
Position-Based Dynamics by Muller et al
Links to various papers by David Baraff et al

-----------------------------------------------------------Links to other physics directory/resource/wiki/blog sites-----------------------------------------------------------
Hardwire's Game Physics Resources
Erin Catto's Physics Weblog
Christer Ericson's Real-Time Collision Detection website (companion to his book)
David Eberly's Geometric Tools website - home of the Wild Magic game engine as well as numerous technical articles and useful code
Graham Rhodes Moderator, Math & Physics forum @ gamedev.net

#2   GDNet+   


Posted 12 December 2007 - 05:30 AM

[grhodes_at_work note] - I migrated most of the links over to the top article in the thread. I left one below, since there is currently no link to code.
I also left some unaddressed suggestions, for a future reminder.
[end note]

And maybe also some of the XNA ports:

Tokamak though this doesn't look like it's publicly available yet.

I also suggest noting on each:

- What language it's in

- What platforms it supports

And maybe if you update the original post then this one can be deleted?

[Edited by - grhodes_at_work on December 18, 2007 11:30:38 AM]

#3   Members   


Posted 12 December 2007 - 06:55 AM

For completeness I would also add the work of Jacobsen and Muller:

And the Baraff Siggraph notes and his other publications:

Also I find these four books and their associated websites useful:

Also add Open Tissue to the list of engines and add Erin Catto's GDC presentations and not only Box2D.

[grhodes_at_work - added links to Open Tissue and Erin's personal blog page to the top post. Catto's presentations are on the Essential Math site]

[grhodes_at_work second edit - moved Jacobsen, Muller, Baraff, Ericson, v.d. Bergen, and Eberly links to the main post. Removed links from here to avoid confusion with duplicates.]

[Edited by - grhodes_at_work on September 8, 2009 10:55:03 AM]

#4   Members   


Posted 12 December 2007 - 06:58 AM

And Tokamak is indeed open source here:

[grhodes_at_work edit. Made sure these links were in main post, and removed links from here to avoid confusion with duplicate links]

[Edited by - grhodes_at_work on September 8, 2009 10:58:10 AM]

#5   Members   


Posted 13 December 2007 - 02:48 AM

Physics abstraction layer interactive benchmark graphs (to help you choose the most appropriate physics engine)
Evaluation of real-time physics simulation systems (contains a matrix comparison of the features of 7 different engines)
Evaluation of Physics Engines and Implementation of a Physics Module in a 3d-Authoring Tool

Physics content creation:
Scythe physics editor

Adrian Boeing's physics engine list
Wikipedia Physics Engine article
Racing car physics
Chris Hecker's Rigid body tutorials
Roy Featherstone's publications (see the excellent overview paper: Robot Dynamics: Equations and Algorithms. IEEE Int. Conf. Robotics & Automation, pp. 826-834, 2000.)
Gaffer on game physics
Flight gear, aerodynamics
SSS, aerodynamics

More Engines:
see Adrian Boeing's physics engine list, eg:

-OPAL is no longer being developed (ie:dead)
-Tokamak is publicly available, and open source, see tokamak downloads

#6   Members   


Posted 13 December 2007 - 04:07 AM

Technical references:
Eran Guendelman's homepage
Impulse-Based Dynamic Simulation of Rigid Body Systems

#7   GDNet+   


Posted 16 March 2011 - 10:45 AM

Perhaps add Carbon to the list? Looks rather nice...

#8   GDNet+   


Posted 18 March 2011 - 03:54 AM

Also BEPUphysics

#9   Members   


Posted 07 March 2012 - 06:32 AM

physx is under very active development, so it's not dead

#10   GDNet+   


Posted 08 March 2012 - 08:26 AM

physx is under very active development, so it's not dead

Indeed - that's just a formatting error - Oxford Dynamics is supposed to be on a new line.

It's probably worth linking to http://iphys.wordpress.com/2012/02/28/interactive-simulation-of-rigid-body-dynamics-in-computer-graphics/ "Interactive Simulation of Rigid Body Dynamics in Computer Graphics" by Jan Bender, Kenny Erleben, Jeff Trinkle, and Erwin Coumans as it's a very recent summary of pretty much everything.

#11   Members   


Posted 17 July 2012 - 05:21 AM

Also Matali Physics (cross-platform, commercial physics engine, free for use in non-commercial games)