Beispiel #1
0
 void SmoothAnimCurves()
 {
     for (int i = 0; i < 4; i++)
     {
         MiroV1Utils.SmoothAnimCurve(ACurves[i], _SmoothWeight);
     }
 }
Beispiel #2
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);
        }
Beispiel #4
0
        // Update is called once per frame
        void Update()
        {
            _AnimBody.SetInteger("Attack", _AT);
            _AnimENCore.SetInteger("Attack", _AT);

            TurnEmittersByAT();

            float sat =
                _SatOnAT.Evaluate((float)_AT);

            MiroV1Utils.SetLineRendererSaturation(_LineRenderer, sat);

            TurnOffAttackingOnAllEmitted();


            //_ATPrev = _AT;
        }
Beispiel #5
0
        public void SetPositions(List <Vector3> vts)
        {
            ClearXYZ();

            float dist = 0.0f;

            for (int i = 0; i < vts.Count; i++)
            {
                if (i > 0)
                {
                    Vector3 vtprev = vts [i - 1];
                    Vector3 vt     = vts [i];
                    float   d      = (vt - vtprev).magnitude;
                    dist += d;
                }
                AddVertex(vts [i], dist);
            }

            MiroV1Utils.SmoothAnimCurve(_X, 0);
            MiroV1Utils.SmoothAnimCurve(_Y, 0);
            MiroV1Utils.SmoothAnimCurve(_Z, 0);
        }
 void ClearXYZCurves()
 {
     MiroV1Utils.ClearAnimCurve(_X);
     MiroV1Utils.ClearAnimCurve(_Y);
     MiroV1Utils.ClearAnimCurve(_Z);
 }
 void SmoothAnimCurves()
 {
     MiroV1Utils.SmoothAnimCurve(_X, _SmoothWeight);
     MiroV1Utils.SmoothAnimCurve(_Y, _SmoothWeight);
     MiroV1Utils.SmoothAnimCurve(_Z, _SmoothWeight);
 }
Beispiel #8
0
 private void ClearXYZ()
 {
     MiroV1Utils.ClearAnimCurve(_X);
     MiroV1Utils.ClearAnimCurve(_Y);
     MiroV1Utils.ClearAnimCurve(_Z);
 }