Beispiel #1
0
        /// <inheritdoc />
        protected internal override void OnUpdate(float deltaTime)
        {
            if (Math.Abs(_duration) < float.Epsilon)
            {
                UpdateTransform(_transform, _timeInterpolator.GetTime(1));
                Stop();
                return;
            }

            _time += deltaTime / _duration;

            if (_time > 1)
            {
                if (_isLoop)
                {
                    _time = 0;
                }
                else
                {
                    Stop();
                    return;
                }
            }

            UpdateTransform(_transform, _timeInterpolator.GetTime(_time));
        }