update method

void update(
  1. Vector2 delta,
  2. double dt
)

Implementation

void update(Vector2 delta, double dt) {
  parallaxRenderer.update(dt);
  // Scale the delta so that images that are larger don't scroll faster
  _scroll += delta.clone()..divide(_imageSize);
  switch (parallaxRenderer.repeat) {
    case ImageRepeat.repeat:
      _scroll = Vector2(_scroll.x % 1, _scroll.y % 1);
      break;
    case ImageRepeat.repeatX:
      _scroll = Vector2(_scroll.x % 1, _scroll.y);
      break;
    case ImageRepeat.repeatY:
      _scroll = Vector2(_scroll.x, _scroll.y % 1);
      break;
    case ImageRepeat.noRepeat:
      break;
  }

  final scrollPosition = _scroll.clone()..multiply(_imageSize);
  _paintArea = Rect.fromLTWH(
    -scrollPosition.x,
    -scrollPosition.y,
    _paintArea.width,
    _paintArea.height,
  );
}