/reactphysics3d

Open source C++ physics engine library in 3D

Primary LanguageC++zlib LicenseZlib

ReactPhysics3D
ReactPhysics3D

ReactPhysics3D is an open source C++ physics engine library that can be used in 3D simulations and games.

www.reactphysics3d.com

Build

Drawing

Features

  • Rigid body dynamics
  • Discrete collision detection
  • Collision shapes (Sphere, Box, Capsule, Convex Mesh, Static Concave Mesh, Height Field)
  • Multiple collision shapes per body
  • Broadphase collision detection (Dynamic AABB tree)
  • Narrowphase collision detection (SAT/GJK)
  • Collision response and friction (Sequential Impulses Solver)
  • Joints (Ball and Socket, Hinge, Slider, Fixed)
  • Collision filtering with categories
  • Ray casting
  • Sleeping technique for inactive bodies
  • Multi-platform (Windows, Linux, Mac OS X)
  • No external libraries (do not use STL containers)
  • Documentation (user manual and Doxygen API)
  • Testbed application with demos
  • Integrated profiler
  • Debugging renderer
  • Logs
  • Unit tests

Documentation

You can find the user manual and the Doxygen API documentation here.

Branches

The "master" branch always contains the last released version of the library and some possible hot fixes. This is the most stable version. On the other side, the "develop" branch is used for development. This branch is frequently updated and can be quite unstable. Therefore, if you want to use the library in your application, it is recommended to checkout the "master" branch.

Questions

If you have any questions about the library and how to use it, you should use Github Discussions to read previous questions and answers or to ask new questions. If you want, you can also share your project there if you are using the ReactPhysics3D library.

Questions/Discussions

You can use the Discussions section to ask your questions or answer questions from other users of the library. Please, do not open a new issue to ask a question.

Issues

If you find any issue with the library, you can report it on the issue tracker here. Please, do not open a new issue to ask a question. Use the Discussions section for your questions.

Author

The ReactPhysics3D library has been created and is maintained by Daniel Chappuis.

License

The ReactPhysics3D library is released under the open-source ZLib license.

Sponsorship

If you are using this library and want to support its development, you can sponsor it here.

Credits

Thanks a lot to Erin Catto, Dirk Gregorius, Erwin Coumans, Pierre Terdiman and Christer Ericson for their amazing GDC presentations, their physics engines, their books or articles and their contributions on many physics engine forums.

Thanks to all the contributors that have reported issues or have taken the time to send pull requests.