Bullet Physics engine - reeseschultz/godex GitHub Wiki
⚠️ 🔥 DISCLAIMER 🔥 ⚠️
This is a work in progress feature that was published to give the possibility to early test it. Any feedback / bug report is welcome but keep in mind that this is subject to changes according to the received feedbacks.
You can start explore the Godex physics by visiting:
Physics Server or Godex physics
With Godex you can use the Godot PhysicsServer
, but if you need to interact with the physics engine in a more ECS friendly way you can use the Bullet physics ECS version provided by Godex.
To chose which version to use, you should consider the following
✖️ Disadvantages:
- The normal
RigidBody
(StaticBody
,KinematicBody
, etc...) nodes are not supported. So if you need to build an hybrid scene where you want to still use those nodes, you can't use the Bullet Engine ECS version. Probably in future we will add support for it, but for now it's not planned. - Bullet Physics ECS version is build to work specifically with Bullet physics, this has the disadvantage that if you want to change Physics Engine, at some point, it requires more effort (you will need to replace the Entities' components; you can't just switch it via settings as it's currently with Godot
PhysicsServer
).
✔️ Advantages:
- You can interact in a more ECS friendly way; for example will be easy to emit and catch the Area's events, or move a kinematic body, etc... .
- As said before, Bullet Physics ECS version is meant to only work with Bullet physics; the advantage is that there are no layers in between your code and the Physics Engine, resulting in a more optimal interaction and less bloated code.
- It's possible to control the Physics Engine behaviour much easily and with more freedom.
While deciding which version to chose, please keep in mind those disadvantages and advantages and chose accordingly.