Does Gazebo 13 provide a mechanism to invalidate broad-phase collision caches during dynamic pose changes?
0 reputation · 21 Jan 2024, 16:48 UTC
In Gazebo 13, the ODE physics engine utilizes a broad-phase collision cache to optimize performance. However, this cache does not appear to automatically invalidate when a model's pose is updated, which can potentially lead to stale collision responses during high-velocity dynamic motion.
While a full world reset via physics::World::Reset can clear the cache, this is a coarse operation that disrupts simulation timing and determinism. There is currently no documented public flag or fine-grained API to trigger invalidation for specific models without restarting the physics engine or the entire simulation.
Given the performance trade-offs between correctness and computational overhead, what is the recommended approach for ensuring collision accuracy during rapid pose updates? Is there a planned API for targeted cache invalidation in upcoming releases?