1

box2d の Body である AnimatedSprite と Shape.I は以下のコードを使用していますが、エラーが発生します。「walls」は四角形、「player」はアニメーション化されたスプライトです。

scene.registerUpdateHandler(new IUpdateHandler() {
            public void reset() { }

            public void onUpdate(final float pSecondsElapsed) {
                    if(walls.collidesWith(player)) {
                        walls.setColor(1, 0, 0);
                    } else {
                        walls.setColor(0, 1, 0);
                    }



                    if(!mCamera.isRectangularShapeVisible(player)) {
                        walls.setColor(1, 0, 1);

                    }
            }
    });
4

2 に答える 2

4

collidesWith 関数は、box2D 衝突検出の一部ではありません。エンジンで衝突をリッスンし、そこで処理するには、Box2D ContactListener を使用する必要があります。

于 2012-06-01T22:26:52.607 に答える
0

AndEngine box2d では、ContractListener によって衝突を検出できます。AndEngine box2d で ContactListener を使用する方法について、役立つ詳細を確認できます。ここをクリック

于 2015-04-03T11:10:48.663 に答える