0

私はフラッターの上に構築されたフレームゲームエンジンにかなり慣れていませんが、背景の視差画像をレンダリングしたいのですが、メインのゲームクラスでレンダリングしようとすると表示されませんか?

class BackGround extends AnimationComponent {

  Rect backgroundRect;
  ParallaxComponent _parallaxComponent;
  BackGround() : super.empty() {
    backgroundRect = Rect.fromLTWH(
      100,
      100,
      100,
      100,
    );
  }

  void render(Canvas c) {
    _parallaxComponent = ParallaxComponent([
      ParallaxImage('Layer_0010_1.png'),
      ParallaxImage('Layer_0009_2.png'),
      ParallaxImage('Layer_0008_3.png'),
      ParallaxImage('Layer_0006_4.png'),
      ParallaxImage('Layer_0005_5.png'),
      ParallaxImage('Layer_0003_6.png'),
      ParallaxImage('Layer_0002_7.png'),
      ParallaxImage('Layer_0001_8.png'),
      ParallaxImage('Layer_0000_9.png'),
    ], baseSpeed: Offset(100, 0), layerDelta: Offset(20, 0));
    _parallaxComponent.render(c);
  }
}

これが私のメインのゲームクラスの外観です。

class MainGame extends BaseGame with TapDetector, HasWidgetsOverlay {
  BackGround backback;
  Size screenSize;



  MainGame(this.storage) {
    initialize();
  }

  void initialize() async {
    // resize(await Flame.util.initialDimensions());
    backback = BackGround();
  }

  void render(Canvas c) {
    backback.render(c);
  }
}
4

1 に答える 1