Remove latency checks on lag compensation
This commit is contained in:
parent
2c2cbf4f03
commit
1b8162a4b6
1 changed files with 0 additions and 29 deletions
|
@ -362,41 +362,12 @@ void CLagCompensationManager::StartLagCompensation( CBasePlayer *player, CUserCm
|
|||
Q_memset( m_RestoreData, 0, sizeof( m_RestoreData ) );
|
||||
Q_memset( m_ChangeData, 0, sizeof( m_ChangeData ) );
|
||||
|
||||
// Get true latency
|
||||
|
||||
// correct is the amout of time we have to correct game time
|
||||
float correct = 0.0f;
|
||||
|
||||
INetChannelInfo *nci = engine->GetPlayerNetInfo( player->entindex() );
|
||||
|
||||
if ( nci )
|
||||
{
|
||||
// add network latency
|
||||
correct+= nci->GetLatency( FLOW_OUTGOING );
|
||||
}
|
||||
|
||||
// calc number of view interpolation ticks - 1
|
||||
int lerpTicks = TIME_TO_TICKS( player->m_fLerpTime );
|
||||
|
||||
// add view interpolation latency see C_BaseEntity::GetInterpolationAmount()
|
||||
correct += TICKS_TO_TIME( lerpTicks );
|
||||
|
||||
// check bouns [0,sv_maxunlag]
|
||||
correct = clamp( correct, 0.0f, sv_maxunlag.GetFloat() );
|
||||
|
||||
// correct tick send by player
|
||||
int targettick = cmd->tick_count - lerpTicks;
|
||||
|
||||
// calc difference between tick send by player and our latency based tick
|
||||
float deltaTime = correct - TICKS_TO_TIME(gpGlobals->tickcount - targettick);
|
||||
|
||||
if ( fabs( deltaTime ) > 0.2f )
|
||||
{
|
||||
// difference between cmd time and latency is too big > 200ms, use time correction based on latency
|
||||
// DevMsg("StartLagCompensation: delta too big (%.3f)\n", deltaTime );
|
||||
targettick = gpGlobals->tickcount - TIME_TO_TICKS( correct );
|
||||
}
|
||||
|
||||
// Iterate all active players
|
||||
const CBitVec<MAX_EDICTS> *pEntityTransmitBits = engine->GetEntityTransmitBitsForClient( player->entindex() - 1 );
|
||||
for ( int i = 1; i <= gpGlobals->maxClients; i++ )
|
||||
|
|
Loading…
Reference in a new issue