[ODE] collion body vs geom
Martin C. Martin
martin at metahuman.org
Fri Jan 9 12:22:51 MST 2004
Like I said before: you need to print out the various values of o1, o2,
b1, b2, body[1], body[2], ground, wall. You need to see why your "if"
statements are never being taken.
- Martin
samuel girardin wrote:
> That was I thinking, . It doesn't work with the 3d engine I use. So I made a
> test with the original test_buggy.cpp, and it doesn't work too...I'm sure I
> missed something... For info, here is what I'm trying to do. A car(clone of
> the ode buggy), ground and wall. I try to disable collisions betwen wheels
> and wall. My wheels are little outside of the car body. So there are some
> very strong collision effect if ones of them collide to a wall ! I could
> change my wheels pos, but I don't want do that. And I'd like to understand
> the problem I have.
> Here is the code for the test_buggy.cpp I change in near call back , I was
> thinking it disables collision detection for one wheel for exemple...
> static void nearCallBack.... {
> dBodyID b1 = dGeomGetBody(o1);
> dBodyID b2 = dGeomGetBody(o2);
> if(b1==body[2] && o2==ground ) return ;
> if(o1==ground && b2==body[2] ) return ;
>
> const int N = 10;
> dContact contact[N];
> .....
> ...
> }
>
> I try that, and nothing change... The three wheels collide.
>
> Any idea Martin ?
>
> Sam
>
>
>
>
>
>
>>That should work. Trace through it (or use printfs) to see what happens
>>when your body touches the wall.
>>
>>- Martin
>>
>>samuel girardin wrote:
>>
More information about the ODE
mailing list