Esempio n. 1
0
 void ClearAnimCurves()
 {
     for (int i = 0; i < 4; i++)
     {
         MiroV1Utils.ClearAnimCurve(ACurves[i]);
     }
 }
        public void UpdagteWCurveByInterpState()
        {
            float          id  = Mathf.Clamp(_WCStateId, 0, _WCStates.Count - 1);
            int            id0 = Mathf.FloorToInt(id);
            int            id1 = Mathf.CeilToInt(id);
            AnimationCurve ac0 = _WCStates [id0]._WdCurve;
            AnimationCurve ac1 = _WCStates [id1]._WdCurve;

            if (_WdCurve.length != 6)
            {
                MiroV1Utils.ClearAnimCurve(_WdCurve);
                for (float t = 0.0f; t < 1.0f; t += 0.2f)
                {
                    _WdCurve.AddKey(new Keyframe(t, 0.0f));
                }
            }

            int i = 0;

            for (float t = 0.0f; t < 1.0f; t += 0.2f)
            {
                float v0 = ac0.Evaluate(t);
                float v1 = ac1.Evaluate(t);
                float v  = Mathf.Lerp(v0, v1, id - id0);

                Keyframe kf = new Keyframe(t, v, 0, 0);
                kf.tangentMode = 1;
                _WdCurve.MoveKey(i, kf);
                i++;
            }
            MiroV1Utils.SmoothAnimCurve(_WdCurve, 0.0f);
        }
 void ClearXYZCurves()
 {
     MiroV1Utils.ClearAnimCurve(_X);
     MiroV1Utils.ClearAnimCurve(_Y);
     MiroV1Utils.ClearAnimCurve(_Z);
 }
Esempio n. 4
0
 private void ClearXYZ()
 {
     MiroV1Utils.ClearAnimCurve(_X);
     MiroV1Utils.ClearAnimCurve(_Y);
     MiroV1Utils.ClearAnimCurve(_Z);
 }