Hitches from large simulation island activations

S.Lundmark
Posts: 50
Joined: Thu Jul 09, 2009 1:46 pm

Hitches from large simulation island activations

Post by S.Lundmark »

Hi,

I'm currently experiencing issues from big hitches caused by objects that are added to the world as inactive. Several objects are added at a close vicinity to each others, which causes too many objects to simulate once one of them become active. The activation of one rigidbody spreads activation to nearby rigidbody causing a chain-reaction of objects activating. Having 100 dynamic objects simulating at once creates high simulation costs that are too high for us. What's weird is that this is an initial cost, and only seems to happen at the first activation. Would simulating the objects in an offline step and save their transform when at definite resting position help us resolve the matter?

Is there any way to keep simulation islands smaller? Or somehow keep them from chain-reacting this way?

Cheers
/Simon
User avatar
Erwin Coumans
Site Admin
Posts: 4221
Joined: Sun Jun 26, 2005 6:43 pm
Location: California, USA

Re: Hitches from large simulation island activations

Post by Erwin Coumans »

It would be good to have a reproduction case for this using one of the Bullet demos and see where time goes when inactive objects wake up.

Perhaps memory allocation of collision algorithms and/or contact manifolds is an issue. Are you using the default values for the memory pool sizes (m_defaultMaxPersistentManifoldPoolSize etc)?
Thanks,
Erwin
S.Lundmark
Posts: 50
Joined: Thu Jul 09, 2009 1:46 pm

Re: Hitches from large simulation island activations

Post by S.Lundmark »

Hi Erwin,

We have reduced the sizes of both the manifoldpoolsize and the collisionalgorithmpoolsize to 768 in both. It seems, however, that a large cause of this performance hitch was due to the same issues we're having with the convex-convex cd which I'm currently discussing with you on devnet. Most likely, our issue would be solved if

Cheers
/Simon