Collisions within a CollisionNode?

In order to more properly map the shape of my model for collision purposes, I wrapped two collision spheres around it, like so:


modelCol = self.model.attachNewNode(CollisionNode('ModelCol'))
modelCol.node().addSolid(CollisionSphere(0, 0, .5, 1.1))
modelCol.node().addSolid(CollisionSphere(0, 0, -.5, 1.1))

This object needs to be a ‘from’ object, so I it added to my collision traverser. Now when I loop the generated collisions, it appears that the two spheres are colliding:


CollisionEntry:
  from render/-ModelRoot/TopdriveCol
  into render/-ModelRoot/TopdriveCol []
  at 15 0 7.94
  normal 0 0 -3
  interior 15 0 9.2 (depth 1.26)
  respect_prev_transform = 0

Perhaps my understanding of the collision system is wrong, but I was under the impression that collision solids in the same node could not collide with each other?

Any advice would be appreciated.
Thanks.

Sorry, two collision spheres in the same node can collide with each other. It’s true that you usually wouldn’t want them to, but it’s difficult to prevent.

In the meantime, you can set their from and into masks so that they don’t have bits in common. For instance, set the from mask to 0x01, and set the into mask to 0x02. Or, if you don’t intend any other objects to collide “into” these spheres (this is common), set the into mask to 0.

David