diff --git a/engine/client/cl_frame.c b/engine/client/cl_frame.c index cf757a96..b6409036 100644 --- a/engine/client/cl_frame.c +++ b/engine/client/cl_frame.c @@ -1238,13 +1238,23 @@ void CL_LinkPacketEntities( frame_t *frame ) VectorCopy( ent->curstate.origin, ent->latched.prevorigin ); VectorCopy( ent->curstate.angles, ent->latched.prevangles ); - // disable step interpolation in client.dll - ent->curstate.movetype = MOVETYPE_NONE; + if( !FBitSet( host.features, ENGINE_COMPUTE_STUDIO_LERP )) + { + // disable step interpolation in client.dll + ent->curstate.movetype = MOVETYPE_NONE; + } } else { - // restore step interpolation in client.dll - ent->curstate.movetype = MOVETYPE_STEP; + if( FBitSet( host.features, ENGINE_COMPUTE_STUDIO_LERP )) + { + interpolate = true; + } + else + { + // restore step interpolation in client.dll + ent->curstate.movetype = MOVETYPE_STEP; + } } #endif }