void FixedUpdate()
    {
        if (_academy.GetIsPhysicsOnlyFixedUpdateStep())
        {
            return;
        }
        if (_waitingForAnimation && _styleAnimator.AnimationStepsReady)
        {
            _waitingForAnimation = false;
            ResetPhase();
        }
        var animStep = UpdateObservations();

        Step(animStep);
    }
    void FixedUpdate()
    {
        if (_academy.GetIsPhysicsOnlyFixedUpdateStep())
        {
            return;
        }

        if (AnimationStepsReady)
        {
            MimicAnimation();
            return;
        }
        if (_lastPosition == null)
        {
            Reset();
        }
        AnimatorStateInfo stateInfo = anim.GetCurrentAnimatorStateInfo(0);

        AnimatorClipInfo[] clipInfo = anim.GetCurrentAnimatorClipInfo(0);
        Lenght             = stateInfo.length;
        NormalizedTime     = stateInfo.normalizedTime;
        IsLoopingAnimation = stateInfo.loop;
        var timeStep = stateInfo.length * stateInfo.normalizedTime;
        var endTime  = 1f;

        if (IsLoopingAnimation)
        {
            endTime = 3f;
        }
        if (NormalizedTime <= endTime)
        {
            MimicAnimation();
            if (!AnimationStepsReady)
            {
                UpdateAnimationStep(timeStep);
            }
        }
        else
        {
            StopAnimation();
            // BecomeRagDoll();
        }
    }