{"id":13517726,"url":"https://github.com/appsinacup/godot-box2d","last_synced_at":"2025-09-30T14:32:05.551Z","repository":{"id":183001864,"uuid":"669449907","full_name":"appsinacup/godot-box2d","owner":"appsinacup","description":"Godot Box2D – C++ Godot Extension that integrates the Box2D physics engine.","archived":true,"fork":false,"pushed_at":"2024-06-29T10:59:17.000Z","size":5648,"stargazers_count":325,"open_issues_count":30,"forks_count":15,"subscribers_count":4,"default_branch":"main","last_synced_at":"2024-09-23T13:03:37.288Z","etag":null,"topics":["box2d","box2d-physics-engine","godot","godot-4","godot-addon","godot-plugin"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/appsinacup.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-07-22T10:13:18.000Z","updated_at":"2024-09-11T12:47:27.000Z","dependencies_parsed_at":"2024-03-01T12:28:31.988Z","dependency_job_id":"b44389c1-2bf9-450f-800a-9be509bb790b","html_url":"https://github.com/appsinacup/godot-box2d","commit_stats":null,"previous_names":["ughuuu/godot-box2d","godot-box2d/godot-box2d","appsinacup/godot-box2d"],"tags_count":22,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appsinacup%2Fgodot-box2d","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appsinacup%2Fgodot-box2d/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appsinacup%2Fgodot-box2d/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appsinacup%2Fgodot-box2d/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/appsinacup","download_url":"https://codeload.github.com/appsinacup/godot-box2d/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219874892,"owners_count":16554628,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["box2d","box2d-physics-engine","godot","godot-4","godot-addon","godot-plugin"],"created_at":"2024-08-01T05:01:36.748Z","updated_at":"2025-09-30T14:32:04.496Z","avatar_url":"https://github.com/appsinacup.png","language":"C++","funding_links":[],"categories":[":building_construction: Software Development","Modules","C++"],"sub_categories":["Game Development","3D"],"readme":"\u003cp align=\"center\"\u003e\n\t\u003cimg width=\"128px\" src=\"box2d_icon.svg\"/\u003e \n\t\u003ch1 align=\"center\"\u003eGodot Box2D - UNMAINTAINED\u003c/h1\u003e \n\u003c/p\u003e\n\n## NOTE\n\nCurrently focusing more on the [godot rapier physics](https://github.com/appsinacup/godot-rapier-physics) lib. And since this is pretty much identical in functionality with that one, but, at least at the time of writting, the rapier one has:\n- Serialization thanks to rust language\n- Cross platform determinism\n- 2d and 3d\n- API that is much closer to godot one than box2d one.\n- Better safety (this one is copied after Godot Physics, and that one has a lot of raw pointers, as does this implementation)\n\nIf anyone wants to continue on this or contribute, they can make a fork or ask on discord about it.\n\n## NOTE\n\nCurrently waiting for [box2c](https://github.com/erincatto/box2c) to be released. New issues won't be fixed until then. In meantime try [rapier2d](https://github.com/appsinacup/godot-rapier-2d) physics engine.\n\n\u003cp align=\"center\"\u003e\n\t\u003ca href=\"https://github.com/appsinacup/godot-box2d/actions/workflows/runner.yml\"\u003e\n        \u003cimg src=\"https://github.com/appsinacup/godot-box2d/actions/workflows/runner.yml/badge.svg?branch=main\"\n            alt=\"chat on Discord\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/erincatto/box2d\" alt=\"Box2D Version\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/Box2D-v2.4.1-%23478cbf?logoColor=white\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/godotengine/godot-cpp\" alt=\"Godot Version\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/Godot-v4.2-%23478cbf?logo=godot-engine\u0026logoColor=white\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/appsinacup/godot-box2d/graphs/contributors\" alt=\"Contributors\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/contributors/appsinacup/godot-box2d\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/appsinacup/godot-box2d/pulse\" alt=\"Activity\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/commit-activity/m/appsinacup/godot-box2d\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://discord.gg/56dMud8HYn\"\u003e\n        \u003cimg src=\"https://img.shields.io/discord/1138836561102897172?logo=discord\"\n            alt=\"Chat on Discord\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"stability-comparison.gif\"/\u003e\n\u003c/p\u003e\n\n\nA [Box2D](https://github.com/erincatto/box2d) physics server for [Godot Engine](https://github.com/godotengine/godot), implemented as a GDExtension.\n\n## Table of Contents\n\n1. [Limitations](#limitations)\n2. [Differences](#differences)\n3. [Supported Platforms](#supported-platforms)\n4. [Installation](#installation)\n5. [Features](#features)\n6. [Comparison](#comparison)\n7. [License](#license)\n\n## Limitations\n\n- Missing circles and capsules skewing.\n- Missing thread-safety.\n- Missing double precision builds.\n- Missing cross platform determinism.\n\n## Differences\n\n- Polygons have a small skin, which can result in differences from Godot Physics. [Collision shapes behave as if they are bigger than what it should be](https://github.com/appsinacup/godot-box2d/issues/72)\n\n## Supported Platforms\n\nCurently the Godot Box2d addon builds for:\n\n- Windows (x86_64, x86_32)\n- macOS (x86-64 + arm64 Universal)\n- Linux (x86_64)\n- Android (arm64, arm32, x86_64, x86_32)\n- iOS (arm64)\n- Web (wasm32)\n\n## Installation\n\n- Automatic (Recommended): Download the plugin from the official [Godot Asset Store](https://godotengine.org/asset-library/asset/2007) using the `AssetLib` tab in Godot.\n- Manual: Download the [Github Release](https://github.com/appsinacup/godot-box2d/releases/latest) `godot-box2d.zip` and move only the `addons\\` folder into your project `addons\\` folder.\n\nAfter installing, go to `Advanced Settings` -\u003e `Physics` -\u003e `2D`. Change `Physics Engine` to `Box2D`.\n\nVideo Tutorial:\n\n[![Tutorial](https://img.youtube.com/vi/T_vFVh5qZiY/0.jpg)](https://www.youtube.com/watch?v=T_vFVh5qZiY)\n\n## Features\n\n### Improved stability\n\n- Improved physics stability in some cases with high number of rigidbodies.\n\n- Improves polygon collision by fixing [ghost collision](https://box2d.org/posts/2020/06/ghost-collisions/).\n\n- Improves joints by [predictive joint limits](https://box2d.org/posts/2020/04/predictive-joint-limits/).\n\n### Determinism\n\nBox2D is binary deterministic. Godot Box2D should also be binary deterministic, however no such tests were run yet. The newest version of Box2D, v3, will also support cross determinism. When that is done, will also add it here.\n\n## Comparison\n\nWatch a comparison to Godot Physics 2D and [Rapier 2D](https://github.com/appsinacup/godot-rapier-2d) physics plugin:\n\n[![Comparison](https://img.youtube.com/vi/wgUiZ7E19eM/0.jpg)](https://www.youtube.com/watch?v=wgUiZ7E19eM)\n\nOr read about it on [appsinacup.com/godot-physics-vs-box2d-vs-rapier2d](https://appsinacup.com/godot-physics-vs-box2d-vs-rapier2d/)\n\n## License\n\nThe Box2D library is developed and maintained by Erin Catto and is provided under the MIT license.\n\nAll code in this repository is provided under the MIT license. See `LICENSE` for more details and `THIRDPARTY` for third-party licenses.\n\nBased on [rburing/physics_server_box2d](https://github.com/rburing/physics_server_box2d). Many thanks to you for starting implementation on this!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappsinacup%2Fgodot-box2d","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fappsinacup%2Fgodot-box2d","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappsinacup%2Fgodot-box2d/lists"}