help with :collide(error):

Hi,
I’ve been trying to get collision detection working and unfortunately i’ve been getting this error during runtime:

It happens with all collsion solids and I have no idea why. The code is almost a word for word copy of the examples from the manual and traverser has been set to base.cTrav

The basic code is



self.cTraverser = CollisionTraverser('default')
base.cTrav = self.cTraverser
... loads the model...
collisionTube = CollisionTube(x1,y1,z1,x2,y2,z2,r)
cNodePath = player.attachNewNode(CollisionNode('player'))
cNodePath.node().addSolid(collisionTube)
cNodePath.show()

traverser.addCollider(cNodePath.node(), handler)
self.accept(.....)

ps. handler is a CollisionHandlerEvent with patterns setup… and the collision tube does show up on the display. the error doesn’t crash the program either.

Can anyone help? cheers

From the manual page entitled Collision Solids:

You are attempting to use a CollisionTube as a “from” object. This is not defined. Use a CollisionSphere instead, and reserve CollisionTubes for the “into” objects in your scene.

David