Пример #1
0
        public void Update(CodeRigBoneParam param)
        {
            try
            {
                _mainInfo.BeginProfileOnlyEnableProfile();
                if (ThirdPersonIncluded)
                {
                    StableUpperBody(param.OverlayAnimationWeight, param.PostureWhenOverlay);
                    _ikControllerP3.SetIKActive(param.IKActive);
                }

                Peek(param.PeekAmplitude, param.IsSight);
                PitchP1(param.PitchAmplitude);

                if (FirstPersonIncluded)
                {
                    var parent = _characterP1.transform.parent;
                    try
                    {
                        _characterP1.transform.SetParent(null, false);
                        SetFirstPersonShift(CreateFirstPersonOffsetParam(param));
                        SetSightStatus(CreateSightStatusParam(param));
                        _ikControllerP1.SetIKActive(param.IKActive);
                    }
                    finally
                    {
                        _characterP1.transform.SetParent(parent, false);
                    }
                }
            }
            finally
            {
                _mainInfo.EndProfileOnlyEnableProfile();
            }
        }