Irlanrobson Bounce Save Abandoned

Bounce is a 3D physics engine for games.

Project README

Bounce

Bounce is a 3D physics engine for games.

Features

System

  • Efficient data structures with no use of STL
  • Fast memory allocators
  • Built-in math library
  • Tunable settings used across the entire library
  • Debug draw utility and profiler

Collision

  • Continuous collision detection
  • Dynamic tree broadphase
  • SAT
  • GJK
  • Spheres, capsules, triangles, convex hulls, triangle meshes
  • Optimized pair management
  • One-shot contact manifolds

Physics

  • Rigid bodies
  • Contact, friction, restitution
  • Sphere, cone, revolute, and more joint types
  • Joint motors, limits
  • Constraint graphs
  • Simulation islands and sleep management
  • Linear time solver
  • Stable shape stacking
  • Contact clustering, reduction, and persistence
  • Contact callbacks: begin, pre-solve, post-solve
  • Ray-casting, shape-casting, and volume queries

Testbed

  • OpenGL with GLFW and GLAD
  • UI by imgui
  • Mouse picking
  • Orbit camera
  • CMake build system

Documentation

Note: Use the Getting Started guide and the Testbed for learning how to use Bounce. Testbed is a collection of visual tests and examples that can support the development of the library. As you would imagine, this application is not part of the library.

License

Bounce is released under the zlib license. Please recognize this software in the product documentation if possible.

Dependencies

Testbed

These are the external dependencies for the Testbed example project. If you don't care about the Testbed you don't need these dependencies.

Building

  • Install CMake
  • Ensure CMake is in the user 'PATH'

Visual Studio

  • You can run 'build.bat' from the command prompt
  • Building results are in the build sub-folder
  • Open bounce.sln

Any system

  • Run 'build.sh' from a bash shell
  • Building results are in the build sub-folder

Contributing

If you want to report bugs, need to ask questions, or want collaborate with the project you can open an issue here in the GitHub issue tracker.

Please do not open pull requests with bugfixes or new features that require core library changes. Open an issue first for discussion.

Open Source Agenda is not affiliated with "Irlanrobson Bounce" Project. README Source: irlanrobson/bounce
Stars
72
Open Issues
2
Last Commit
1 year ago

Open Source Agenda Badge

Open Source Agenda Rating