Moving through CollisionPlanes - SOLVED

Couldn’t come up with a better title.

I have a game board on a table. The camera is setup to be able to move around the game board to see the different territories. I have setup 6 CollisionPlanes: forward/back/left/right/zoom in/zoom out. I have attached a CollisionSphere to the camera as a from object. Iam using PusherEvents

When you get to the front/back plane you begin to walk up it(front pane)/down it(back plane). When you hit the top plane or bottom plane of the box you will hold for a second and then push through it and continue up.

My partner and I have a few ideas. Just wanted to get some other views on this. One idea is that panda does not detect 2 collision at once so you canget through one or the other. Another is that pusher is not the right choice for what we want(even though the concept seems perfect). But we are stumped and its late so I came over here to get the communities thoughts.

Note: My planes are setup correctly and all four of my walls work its just not my top and bottom planes i can somehow get through them


Further note - The camera has its P tilted down slightly (to look at the game board), which logically follows that when you bump up against the front and back collision plane it will push you up(or down) being that your movement vector gets skewed in the direction you are turned.

The weirdness here is while you are pushing (once per frame i might add) against one of the top collision plane (and it is pushing back not just in the negative Z direction), that the resulting push could place you past the front or back collision planes?

Confusing this is; Any ideas guys?

Jst a wild guess, but maybe it ias because of the sharp edges. I had some problems when using the Panda3D collision system two years ago (maybe the pushers are fixed by now). See also:


Also make sure that you don’t have “horizontal” collisions set (it is set by default), as described here:

Another thing to try is the relatively new CollisionHandlerFluidPusher, in lieu of an ordinary CollisionHandlerPusher. This class has the same interface, but tries harder to avoid the acute-angles problem.


The Horizontal collisions fixed it. Ty David :slight_smile:, you always fix my problems :laughing: .

As Roger stated the issue was fixed with setHorizontal(False). Thank you and now on to the next challenge.