Remove unnecessary SNAPFLAG_RESET_ENTITIES on unpause

Entity positions change by one server frame (50ms) on unpause —
normal interpolation handles this fine. Only SNAPFLAG_SERVERCOUNT
is needed to hard-reset the client's time delta.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
serge_shubin 2026-03-24 04:10:50 +08:00
parent 41f0ca2e50
commit c4dca5f950

View file

@ -995,11 +995,8 @@ void SVD_Pause_f( void ) {
} }
demo.paused = !demo.paused; demo.paused = !demo.paused;
if ( !demo.paused ) { if ( !demo.paused ) {
// resuming — reset entities so client doesn't interpolate // resuming — toggle SERVERCOUNT to reset client snapshot timing
// from frozen positions to post-pause positions.
// also toggle SERVERCOUNT to reset client snapshot timing
// (drifted during pause from identical serverTimes). // (drifted during pause from identical serverTimes).
svs.snapFlagServerBit |= SNAPFLAG_RESET_ENTITIES;
svs.snapFlagServerBit ^= SNAPFLAG_SERVERCOUNT; svs.snapFlagServerBit ^= SNAPFLAG_SERVERCOUNT;
} }
Com_Printf( "Demo playback %s.\n", demo.paused ? "paused" : "resumed" ); Com_Printf( "Demo playback %s.\n", demo.paused ? "paused" : "resumed" );