https://github.com/bepu/bepuphysics2
Pure C# 3D real time physics simulation library, now with a higher version number.
https://github.com/bepu/bepuphysics2
physics-3d physics-engine physics-simulation-library
Last synced: 3 days ago
JSON representation
Pure C# 3D real time physics simulation library, now with a higher version number.
- Host: GitHub
- URL: https://github.com/bepu/bepuphysics2
- Owner: bepu
- License: apache-2.0
- Created: 2017-10-21T19:41:02.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2025-04-06T06:17:07.000Z (20 days ago)
- Last Synced: 2025-04-10T12:23:27.815Z (15 days ago)
- Topics: physics-3d, physics-engine, physics-simulation-library
- Language: C#
- Size: 19.9 MB
- Stars: 2,525
- Watchers: 83
- Forks: 281
- Open Issues: 57
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
Awesome Lists containing this project
- awesome-csharp - BEPUphysics - BEPUphysics is a pure C# 3D physics library (Game)
- awesome-dotnet-cn - BEPUphysics - 纯 C# 3D 物理库。 (游戏)
- awesome-dotnet - BEPUphysics - BEPUphysics is a pure C# 3D physics library (Game)
- awesome-dot-dev - BEPUphysics - BEPUphysics is a pure C# 3D physics library (Game)
- awsome-dotnet - BEPUphysics - BEPUphysics is a pure C# 3D physics library (Game)
- awesome-dotnet - BEPUphysics - BEPUphysics is a pure C# 3D physics library (Game)
README
# bepuphysics v2
This is the repo for the bepuphysics v2 library, a complete rewrite of the C# 3d rigid body physics engine [BEPUphysics v1](https://github.com/bepu/bepuphysics1).
The BepuPhysics and BepuUtilities libraries target .NET 8 and should work on any supported platform. The demos application, Demos.sln, uses DX11 by default. There is also a Demos.GL.sln that uses OpenGL and should run on other platforms. The demos can be run from the command line (in the repo root directory) with `dotnet run --project Demos/Demos.csproj -c Release` or `dotnet run --project Demos.GL/Demos.csproj -c Release`.
The physics engine heavily uses `System.Numerics.Vectors` types, so to get good performance, you'll need a compiler which can consume those types (like RyuJIT).
To build the source, the easiest option is a recent version of Visual Studio with the .NET desktop development workload installed. Demos.sln references all relevant projects. For more information, see [Building](Documentation/Building.md).
## Features
- Spheres, capsules, boxes, triangles, cylinders, and convex hulls
- Compounds of the above
- Meshes
- A [whole bunch of constraint types](BepuPhysics/Constraints/)
- [Newts](Demos/Demos/NewtDemo.cs)
- Linear and angular continuous collision detection
- Extremely low cost sleep states for resting bodies
- Efficient scene-wide ray and sweep queries
- [Character controller example](Demos/Demos/Characters/CharacterDemo.cs)
- At least somewhat extensible collision pipeline, with [example custom voxel collidable](Demos/Demos/CustomVoxelCollidableDemo.cs)
- Highly nonidiomatic APIs
- Super speediness
- And a bunch of other miscellaneous stuff!## Links
Report bugs [on the issues tab](../../issues).
Use the [discussions tab](../../discussions) for... discussions. And questions.
There's a [discord server](https://discord.gg/ssa2XpY). I'll be focusing on github for long-form content, but if you like discord, you can discord.
[Documentation pages](https://docs.bepuphysics.com/) in a conventional form factor exist! (If I've broken the docs page, see the [raw repo versions](https://github.com/bepu/bepuphysics2/tree/master/Documentation) as a backup or [github pages](https://bepu.github.io/bepuphysics2/) if I just broke the domain redirect.)
If you have too many dollars, I'm willing to consume them through [github sponsors](https://www.github.com/sponsors/RossNordby). Please do not give me any amount of money that feels even slightly painful. Development is not conditional on sponsorships, and I already have a goodly number of dollars.
