I am trying to implement replays of physics and I must not have something initialized properly, but I'm not sure what it could be. Here's what I'm seeing...If I start my application and replay 5 times (recreating the entire Newton world between each replay), my end results are different each time. However, if I restart the application again and replay another 5 times, I get the same set of five results.
Start->Replay 1->Replay 2->Replay 3->Replay 4->Replay 5
Restart->Replay 6->Replay 7->Replay 8->Replay 9->Replay 10
So 1-5 are all different, but 1==6, 2==7, 3==8, 4==9, 5==10, and so on. So at application startup my conditions must be consistent, but something isn't getting reset between replays. I use the same world init function from startup as I do between replays, and it completely recreates the world and invalidates the cache. To narrow down the problem my NewtonUpdate time doesn't match my simulation time, it is just a consistent 60hz so that shouldn't be a factor.
Any tips on what this might be or what I should try to figure out the issue? Thanks.