public void Apply(AnimationState anim, AnimSettingsMask mask)
 {
     if ((mask & AnimSettingsMask.Weight) != 0)
     {
         anim.weight = this.weight;
     }
     if ((mask & AnimSettingsMask.Speed) != 0)
     {
         anim.speed = this.speed;
     }
     if ((mask & AnimSettingsMask.Layer) != 0)
     {
         anim.layer = this.layer;
     }
     if ((mask & AnimSettingsMask.WrapMode) != 0)
     {
         anim.wrapMode = this.wrapMode;
     }
     if ((mask & AnimSettingsMask.BlendMode) != 0)
     {
         anim.blendMode = this.blendMode;
     }
     if ((mask & AnimSettingsMask.TimeSupplier) != 0 && this.timeSupplier.IsCustom)
     {
         anim.speed = this.speed * SPTime.GetInverseScale(this.timeSupplier.TimeSupplier);
     }
 }
 public SPAnimClip(string name)
 {
     _name         = name;
     _clip         = null;
     _timeSupplier = new SPTime();
     _mask         = new SPAnimMaskSerializedRef();
     //_firstFrame = 0;
     //_lastFrame = -1;
 }
 public SPAnimClip(string name, AnimationClip clip, ITimeSupplier timeSupplier)
 {
     _name         = name;
     _clip         = clip;
     _timeSupplier = new SPTime(timeSupplier);
     _mask         = new SPAnimMaskSerializedRef();
     //_firstFrame = 0;
     //_lastFrame = -1;
 }
 public SPAnimClip(string name, AnimationClip clip)
 {
     _name         = name;
     _clip         = clip;
     _masks        = new MaskCollection();
     _timeSupplier = new SPTime();
     //_firstFrame = 0;
     //_lastFrame = -1;
 }
 public void Apply(AnimationState anim)
 {
     anim.weight    = this.weight;
     anim.speed     = this.speed;
     anim.layer     = this.layer;
     anim.wrapMode  = this.wrapMode;
     anim.blendMode = this.blendMode;
     if (this.timeSupplier.IsCustom)
     {
         anim.speed = this.speed * SPTime.GetInverseScale(this.timeSupplier.TimeSupplier);
     }
 }
示例#6
0
        private void OnTimeScaleChanged(object sender, System.EventArgs e)
        {
            if (_animator == null)
            {
                var ts = _timeSupplier.TimeSupplier as IScalableTimeSupplier;
                if (ts != null)
                {
                    ts.TimeScaleChanged -= this.OnTimeScaleChanged;
                }
                return;
            }

            _animator.speed = _speed * SPTime.GetInverseScale(_timeSupplier.TimeSupplier as ITimeSupplier);
        }