c6125c4e269d5d3878b3abe01ab976aa539cb8ce
Foreground's update, caused by GAMESTATE->m_fMusicSeconds moving backwards. This happens due to frame skips confusing GameSoundManager::GetFrameTimingAdjustment. It expects that, when the framerate is stable, each frame will take 1/FPS. If we skip a frame, it thinks one frame is 30ms late, and tries to adjust by 30-16ms. Reduce the threshold for this adjustment to half a frame; if we're that much late, the problem isn't scheduling jitter--we've probably dropped a frame, and adjusting here is incorrect. In case that isn't enough, clamp fDeltaTime in Foreground, too.
Description
Languages
C++
85.7%
Lua
4.3%
C
4.3%
Rich Text Format
2.3%
CMake
1.1%
Other
2%