public override void Update(float time) { time = NormalizeTime(time); if (time < _lastTime) { for (int i = _lastIndex; i >= 0; i--) { ITimeline child = Children[i]; if (child.BeginTime <= time && time <= child.EndTime) { _lastIndex = i; _lastTime = time; child.Update(time); break; } } } else { for (int i = _lastIndex; i < Children.Count; i++) { ITimeline child = Children[i]; if (child.BeginTime <= time && time <= child.EndTime) { _lastIndex = i; _lastTime = time; child.Update(time); break; } } } }
public override void Update(float time) { time = NormalizeTime(time); for (int i = 0; i < Children.Count; i++) { ITimeline child = Children[i]; if (child.BeginTime <= time && time <= child.EndTime) { child.Update(time); } } }