Unstable trimesh/trimesh collision in gazebo-classic

Environment

  • OS Version: Ubuntu 20.04
  • gazebo-classic, binary, version 11.13.0

Description

  • Expected behavior:
    The stacking of the trimeshes on top of each other is stable and does not drift over time.
    For example, in the case of using primitives (box), it is possible to stack boxes on top of each other and this stack will be stable.

  • Actual behavior:
    One trimesh on top of another drifts and falls over time. There is also the distance between trimeses for bullet physics, and it can’t changed by tuning the physics parameters.

Steps to reproduce

  1. clone and build the repository github kirillin/trimesh_collision_gazebo.git
  2. Launch simulator roslaunch trimesh_collision_gazebo empty_world_ode.launch
  3. Spawn set of trimeshed using rosrun trimesh_collision_gazebo spawn_trimesh.py N, where N is quantity of spawning trimeshes.

Output

The following set of videos demonstrate the strange behavior.