/PlayRho

Real-time oriented physics engine and library that's currently best suited for 2D games.

Primary LanguageC++zlib LicenseZlib

PlayRho

A way to play with physical behaviors like the conservation of momentum.

PlayRho is a real-time oriented physics engine and library that's currently best suited for 2-D games. The project name is the composition of the verb play with the noun rho where rho is the Greek letter often used to represent physical quantities like momentum.

Background

PlayRho started off as a port by Louis Langholtz of the Box2D 2.3.2 physics engine to "modern C++". It's evolved into a derivative work by Louis and other contributors to the code base. Like its predecessor, PlayRho is also licensed under a Zlib License.

General goals of this project are:

  • Using and supporting newer features of the C++ language standards, particularly C++17;
  • Conforming to the C++ Core Guidelines, particularly in regards to things like avoiding global variables, preferring initialization, and preferring pure functions;
  • Openness to contributions including pull requests with new features; and
  • Providing a continuous integration backed, build automation supported, unit testing validated, and benchmark assessed, project.

Continuous Integration Status

iOS Linux CMake macOS Xcode Windows VS2017 Coverage
Build Status Build Status Build Status Build status Coverage Status

Additional Resources

  • Changes Document: provides a run-down of changes between PlayRho and Box2D 2.3.2.
  • Building Document: information on how to build this project and run the Testbed.
  • API Pages: documentation on the Application Programming Interface (API).
  • Issues Web Interface: for questions, bugs reports, or suggestions associated with this project.