0

AndEngine画面に沿ってスプライトを移動するgles1を使用して小さなゲームコードを試しました。AnalogOnScreenControlスプライトを画面に沿って移動するために使用しました。テストすると、スプライトも画面の境界に沿って移動します。つまり、画面が完成しても上、左、右、下に移動します。次に、画像として一番上の線を配置し、スプライトと線の衝突を確認しますが、スプライトはその一番上の線にくっつきます。どこにも動かないので、方法を試してみonAccelerometerChanged()ましたが、うまくいきません。

だから、スプライトが画面の境界を超えないように画面の境界を検出するにはどうすればよいですか?これに関するチュートリアルはありますか?リンクを教えてください。

よろしくお願いします。

4

1 に答える 1

1

デジタル コントロールのようなものである場合は、メソッドをオーバーライドする必要がありますonControlChange()。その方法では、次のようなものを設定するだけで済みます

//As long as the sprite is in the bounds, then move the sprite
if(mSprite.getX() > 0 && mSprite.getX() + mSprite.getWidth() < CAMERA_WIDTH && 
      mSprite.getY() > 0 && mSprite.getY() + mSprite.getHeight() < CAMERA_HEIGHT){
     //Move the sprite here
 }

本質的に、スプライトが設定したカメラによって決定されるシーンの境界内にあることを確認したいです。

于 2013-02-26T14:18:01.820 に答える