I can't answer you. But given the low traffic on the forum, it can't hurt to talk between people trying to figure this stuff out. I had the same problem plus, in a widely varying framerate while spawning many vehicles, I also had jerky rendering if I tried to use the sane version of the stepSimulation. I haven't solved it but have a hack that worked and kept it that way as there was no one to ask why it works or if I've created a problem I'm not aware of yet. What I did will seem stupid and I don't mind anyone saying so if they can explain what I should be doing. Even to be mocked is better than no replies

.
I called the stepSimulation three times per render recalculating the delta each time and using a substep of 1. This is only for my driving level as it worked horribly for character controller or just applying force on rigid bodies without rewriting everything else. For everything else, I was using a single call with the definitions I'd assumed to be stock (delta/1000.0f,60). I couldn't reproduce the effectiveness of this with a single call and tried for several days, even posting here but deleting after no reponses. Here was the hack:
Code: Select all
if (level==1.4f) {
World->stepSimulation(TDeltaTime/1000.f,substeps);
irr::f32 then = device->getTimer()->getTime();
then-=TDeltaTime;
World->stepSimulation(then/1000.f,substeps);
newtime=device->getTimer()->getTime();
newtime-=then;
World->stepSimulation(newtime/1000.f,substeps);
}
This gave me smooth movement, was realistic enough and consistent speeds when the frame rate varied. I've no idea why. Adjusting forces was necessary to make this work.