update method

  1. @override
void update(
  1. double deltaTime,
  2. BaseObject parent
)
override

Implementation

@override
void update(double deltaTime, BaseObject parent) {
  var drawable = this.drawable;
  if (drawable == null || !drawable.isReady) {
    return;
  }
  var positionWorkspace = _positionWorkspace;
  if (parent is SceneObject && parent.isVisible) {
    positionWorkspace
      ..setFrom(parent.position)
      ..add(drawOffset); // 25%
    if (cameraRelative) {
      final focusPosition = systems.cameraSystem.focusPosition;
      final params = systems.parameters;
      final x = positionWorkspace.x - focusPosition.x + params.viewHalfWidth;
      final y = positionWorkspace.y - focusPosition.y + params.viewHalfHeight;
      _screenLocation.setValues(x, y);
    }
    if (drawable.visibleAtPosition(_screenLocation)) {
      systems.renderSystem.draw(
          drawable: drawable,
          position: positionWorkspace,
          priority: priority,
          cameraRelative: cameraRelative); // 40%
    }
  }
}