Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/odex64/box2d.net
Modern C# port of the latest Box2D v2
https://github.com/odex64/box2d.net
box2d csharp dotnet physics port
Last synced: 3 days ago
JSON representation
Modern C# port of the latest Box2D v2
- Host: GitHub
- URL: https://github.com/odex64/box2d.net
- Owner: Odex64
- License: mit
- Created: 2025-02-10T09:21:08.000Z (10 days ago)
- Default Branch: master
- Last Pushed: 2025-02-16T18:09:28.000Z (4 days ago)
- Last Synced: 2025-02-16T18:29:46.626Z (4 days ago)
- Topics: box2d, csharp, dotnet, physics, port
- Language: C#
- Homepage:
- Size: 165 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# π Box2D.NET
Welcome to **Box2D.NET**, a fast and modern C# port of the latest **Box2D v2**!
This port brings Box2D's powerful physics simulation to the C# ecosystem, offering high performance and precision for game development, simulations, and other physics driven applications. Fully compatible with .NET, it provides a seamless way to integrate realistic motion and collision handling into your projects.
---
[](https://github.com/Odex64/Box2D.NET/activity)
[](https://github.com/Odex64/Box2D.NET/stargazers)
[](https://github.com/Odex64/Box2D.NET/actions/workflows/build.yml)> [!IMPORTANT]
> This framework is still in early stages.βοΈ STATUS
## Collisions
- [ ] Broad Phase
- [ ] Chain Shape
- [ ] Circle Shape
- [ ] Collide Circle
- [ ] Collide Edge
- [ ] Collide Polygon
- [ ] Collision
- [ ] Distance
- [ ] Dynamic Tree
- [ ] Edge Shape
- [ ] Polygon Shape
- [ ] Time of Impact## Common
- [ ] Block Allocator?
- [ ] Draw
- [ ] Math
- [ ] Settings
- [ ] Stack Allocator?
- [ ] Timer## Dynamics
- [ ] Body
- [ ] Chain Circle Contact
- [ ] Chain Polygon Contact
- [ ] Circle Contact
- [ ] Contact Manager
- [ ] Contact Solver
- [ ] Contact
- [ ] Distance Joint
- [ ] Edge Circle Contact
- [ ] Edge Edge Polygon Contact
- [ ] Fixture
- [ ] Friction Joint
- [ ] Gear Joint
- [ ] Island
- [ ] Joint
- [ ] Motor Joint
- [ ] Mouse Joint
- [ ] Polygon Cricle Contact
- [ ] Polygon Contact
- [ ] Prismatic Joint
- [ ] Pulley Joint
- [ ] Revolute Joint
- [ ] Weld Joint
- [ ] Wheel Joint
- [ ] World Callbacks
- [ ] World## Rope
- [ ] Rope## Misc
- [X] Math---
## π οΈ Motivation
The goal of this port is to provide a **modern**, **optimized**, and **managed** version of Box2D that addresses the shortcomings of existing implementations.### π¨ Outdated Versions
Many existing C# ports are based on older versions of Box2D, missing key updates and optimizations.
This port targets the final version of **Box2D v2**, ensuring you get the most **reliable** version.### β‘Optimized
Performance is a priority. Unlike other ports, this version is **optimized** to deliver smooth and scalable simulations, even for complex scenarios.### π₯οΈ Best Practices
Many ports don't follow modern C# best practices, leading to code that is hard to maintain in the long term.
This port adheres to **C# conventions**, using clean and documented code for a better developer experience.### π» Fully Managed
This port is written **entirely** in C#, with no reliance on native binaries, and works seamlessly across all .NET platforms.### π Friendly API
Some API has been refined to fit C#, making it more **intuitive** while keeping the core functionality of Box2D intact.### π‘οΈ Long Term Stability
This port targets Box2D 2.4.2, which is the **final version** (before it has been rewritten in C).
There will be no breaking changes in future, as the framework once completed will stay as it is.---
## π§ Installation
*Coming soon...*---
## π Documentation
*Coming soon...*---
## π οΈ Acknowledgement
**Box2D.NET** is licensed under the **MIT License**.
See the [LICENSE](https://github.com/Odex64/Box2D.NET/blob/master/LICENSE) file for more information.Special thanks to [Erin Catto](https://box2d.org), the original author of [Box2D](https://github.com/erincatto/box2d)!