Hello!
I'm thinking of moving from ODE to Bullet. But there are some things i'd like to know first, which i didn't find out myself:
1. Inertia Tensor. In the code i only found a 3 component tensor (vector3), which would mean only axis symmetric shapes, i think. is this true?
2. adding AND removing from compounds. I'd like to remove (or at least deactivate) shapes from compounds. is this possible?
3. correct inertia for compounds. in the compound code i only found the comment about "only aabb inertia for now". what the situation here?
4. is the axis sweep broadphase capable of handling huge distances ~1Billion km? It is a space game, and i'd use doubles.. what about clustering/islands?
Thanks
Gero
Migrate from ODE to Bullet
-
- Site Admin
- Posts: 4221
- Joined: Sun Jun 26, 2005 6:43 pm
- Location: California, USA
Re: Migrate from ODE to Bullet
Just keep in mind that Bullet is still actively developed and improved. Not all parts (especially constraint limits/motors) are at the same level as ODE yet.Cirdan wrote:Hello!
I'm thinking of moving from ODE to Bullet.
No. The btRigidBody is aligned with the center of mass and local inertia. However, you can still freely shift and rotate the collision shapes around this inertia-frame, by using a btCompoundShape. Some example code should be added to clarify this.But there are some things i'd like to know first, which i didn't find out myself:
1. Inertia Tensor. In the code i only found a 3 component tensor (vector3), which would mean only axis symmetric shapes, i think. is this true?
Removal would be easy to support. You might want to re-compute the inertia tensor.2. adding AND removing from compounds. I'd like to remove (or at least deactivate) shapes from compounds. is this possible?
For most game applications, approximating the inertia tensor should be fine. If not, there is public domain code to solve this issue, if really necessary this can be added to Bullet.3. correct inertia for compounds. in the compound code i only found the comment about "only aabb inertia for now". what the situation here?
Right now, Bullet's 3d axis sweep and prune uses fixed-point precision. This means that the size of the worlds needs to be pre-defined. For massive worlds, double precision axis sweep should be added. This is a minor change. However, the amount of objects is another issue. Sweep and prune slows down when the number of objects inserted into the world is much larger then say 10,000 objects. A multiple-broadphase scheme should be used.4. is the axis sweep broadphase capable of handling huge distances ~1Billion km? It is a space game, and i'd use doubles.. what about clustering/islands?