Box2D

An open source C++ 2D physics engine for game development
Download

Box2D Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Freeware
  • Price:
  • FREE
  • Publisher Name:
  • Erin Catto
  • Publisher web site:
  • http://www.box2d.org/
  • Operating Systems:
  • Mac OS X
  • File Size:
  • 845 KB

Box2D Tags


Box2D Description

An open source C++ 2D physics engine for game development Box2D is an open source physics engine written primarily for games and, as the name suggests, Box2D is a purely 2D engine. However, Box2D has grown beyond it's humble box simulating roots, and can now handle convex polygons and other shapes coming soon. Here are some key features of "Box2D": Collision: · Continuous collision detection. · Contact callbacks: add, persist, remove. · Convex polyons and circles. · Multiple shapes per body · One-shot contact manifolds · Incremental sweep-and-prune broadphase · Efficient pair management · Fast broadphase AABB queries · Collision groups and categories Physics: · Continuous physics with time of impact island solver. · Persistent body-joint-contact graph · Island solution and sleep management · Contact, friction, and restitution · Stable stacking with a linear-time solver · Revolute, prismatic, distance, pulley, gear, and mouse joints · Joint limits, motors, and friction · Momentum decoupled position correction · Fairly accurate reaction forces/impulses System: · Small block and stack allocators · Centralized tuning parameters · Highly portable C++ with no use of STL containers Testbed: · OpenGL with Freeglut · Graphical user interface with GLUI · Easily switch between tests using GUI · Test framework for easily adding new tests · Mouse picking and the bomb! · VC8 project files Documentation: · User manual · Doxygen document with real code comments. · Active user forum What's New in This Release: · Theo Jansen walker example. · Added SetUserData accessors. · Added ContactCallbackTest. Thanks caspin! · Fixed circle-vs-polygon contact id handling. · Updated API document. · Minor changes to contact listener (added const, result -> point). · Updated manual to account for recent changes. · Applied ElasticBody.h update (thanks nimodo) · Changed listener/filter assignment function names per ewjordan. · b2ContactListener now has: Add, Persist, Remove, and Result. Solver contact point results are now split so that paused simulations get all contact point Add, Persist, and Remove results. · Made much internal data protected/private to reduce user error. · Added soft distance joint. See Web example. · Fix: polygon ray cast. · Turned off range assert in b2Shape::ResetProxy. · Applied fixed-point patch update. · Added shape re-filtering. · Fix: wakeup associated bodies if the number of contacts points goes from positive to zero. · Changed some VC8 project settings: turned off C++ exceptions to improve performance. · Fixed typo in manual. · Fixed joint destruction on frozen bodies (thanks mewse). · Improved contact solver performance (current bottleneck in pyramid demo). · Fixed bug where warm starting was disabled if you have no contact listener installed (thanks Digicrab!). · Trying out 0xfb's (Frank's) contact solver modification.


Box2D Related Software