I have a strange problem. In switching my code from Newton 200 to 300, I have changed my NewtonCreateBody calls to NewtonCreateDynamicBody, and updated the other small API changes. The problem is that when my player body is colliding, the ForceAndTorqueCallback stops being called.
Any ideas? Is there any documentation for 300 at all? I can't find anything myself.
for ( ; node; ) { dgBody* const body = node->GetInfo().GetBody();
if (body->IsRTTIType(dgBody::m_dynamicBodyRTTI)) { dgDynamicBody* const dymamicBody = (dgDynamicBody*) body;
// this is the call to force and toruqe callback and it alway happen for all dynamcis bodies dymamicBody->ApplyExtenalForces (timestep, threadID); if (!dymamicBody->IsInEquilibrium ()) { dymamicBody->m_sleeping = false; dymamicBody->m_equilibrium = false;
when yo usay player, is that play a dynamics actor? Julio
Yes, sorry player is a DynamicBody. My mistake, the callback is being called, but the forces I set do not do anything. It seems as soon as the bodies are intersecting.
The thruster graphics should make it quite clear to see when I'm applying forces. So only just at the point where the bodies stop intersecting does the force get applied again. Also, probably most importantly, I've lost the collision responses.
The building's dynamic body is just made with NewtonCreateDynamicBody and I do nothing else to it. The collision box for the building is shared between many buildings.