I found this bug last night while I was mucking around. To me it definitely seems like a bug. Somebody correct me if I'm wrong.
Basically, I found that ITimer->getRealTime() sometimes returns a slighltly incorrect value. Here was what I was doing:
Code: Select all
u32 starttime = Timer->getRealTime();
//blah blah blah
u32 currenttime = Timer->getRealTime();
u32 deltatime = currenttime - starttime;
For me it was an easy fix - I just checked if starttime was larger than current time, and if it was I set deltatime to zero.