- bool clonground = !(view.anim_implicit_state & ANIMIMPLICITSTATE_INAIR);
- static bool oldonground;
- static float hitgroundtime;
- if (clonground)
+ frac = avg_factor(autocvar_cl_followmodel_velocity_lowpass);
+ lowpass3(vel, frac, vel_average, gunorg);
+
+ gunorg *= -autocvar_cl_followmodel_speed * 0.042;
+
+ // perform highpass/lowpass on the adjustment vectors (turning velocity into acceleration!)
+ // trick: we must do the lowpass LAST, so the lowpass vector IS the final vector!
+ frac = avg_factor(autocvar_cl_followmodel_highpass);
+ highpass3(gunorg, frac, gunorg_adjustment_highpass, gunorg);
+ frac = avg_factor(autocvar_cl_followmodel_lowpass);
+ lowpass3(gunorg, frac, gunorg_adjustment_lowpass, gunorg);
+
+ if (autocvar_cl_followmodel_velocity_absolute)