он почти ff есть в шторнаксе, всё кроме одной проклятой строчки (я её так называю)
Vector animationVelocity = GetSmoothedVelocity(m_flChokedTime * 2000.0f, velocity, animState->m_vecVelocity);
как бы да всё норм, но определение GetSmoothedVelocity
static auto GetSmoothedVelocity = [](float min_delta, Vector a, Vector b) {
Vector delta = a - b;
float delta_length = delta.Length();
if (delta_length <= min_delta) {
Vector result;
if (-min_delta <= delta_length) {
return a;
}
else {
float iradius = 1.0f / (delta_length + FLT_EPSILON);
return b - ((delta * iradius) * min_delta);
}
}
else {
float iradius = 1.0f / (delta_length + FLT_EPSILON);
return b + ((delta * iradius) * min_delta);
}
};
не сходится крч там будет 100% ошибка не помню какая вот и как бы что бы я не менял всё равно так будет (полная беспомощность)
вообщем решил нахуй оно надо и юзал обычный деф ресольвер 0_0