Page 1 of 1

Windows Build Collision Manager Issue

Posted: Mon Aug 26, 2013 3:23 pm
by ShawnMcCool
Mostly, the app works fine when I build for Windows.

But, there seems to be some trouble with the collision manager.

Here's the app working in the editor: http://www.youtube.com/watch?v=bRmBYcqMyUQ&hd=1

Here's the Windows build: http://www.youtube.com/watch?v=bh4xTI1p5Cw&hd=1

As you can see, the two players don't collide in the editor, but do in the Windows build. The same with the players and the ball.

Here's the collisionmanager code that's relevant:

Code: Select all

    protected bool ChipmunkPreSolve_player_ball(ChipmunkArbiter arbiter)
    {
        return false;
    }

    protected bool ChipmunkPreSolve_player_player(ChipmunkArbiter arbiter)
    {
        return false;
    }

Re: Windows Build Collision Manager Issue

Posted: Tue Aug 27, 2013 9:40 am
by slembcke
I was traveling last week and wasn't very consistent about replying to the forums. I remember reading your other thread and forgot to reply when I had the time. :( Sorry about that.

I haven't been able to replicate it which is frustrating. :-\ The collision manager uses some basic reflection stuff to list the method names and make them into delegates. That's the only thing I can think that would be failing, but I don't see how since Unity already heavily uses reflection for the same purpose.

Another thought, do you have multiple collision managers with conflicting method names? Like you forgot an old script in the scene somewhere maybe? Which method gets registered for the collision would depend entirely on which collision manager Unity called Start() on last, which is mildly random and can change when editing the scene or making a build. I thought I had it log a warning when there were duplicate collision methods, but it appears not.