2

andengineでレーシングゲームを作ってみました.車はMoveModifier()で動いています.車は同時に動体でもあります.でも車の動体特性は動いていると失われてしまいます.

(敵1=車)

Sprite enemy1=new Sprite(0,0,this.enemyRegion1);
         enemy1.registerEntityModifier(
                    (IEntityModifier) new SequenceEntityModifier (
                            new MoveModifier(10, enemy1.getX(),  enemy1.getX()+400, 
                                    enemy1.getY(), enemy1.getY())));
        final Vector2 velocity = Vector2Pool.obtain(5, 5);

        final FixtureDef enemyFixtureDef1 = PhysicsFactory.createFixtureDef(0, 0, 0);
        this.enemyBody1 = PhysicsFactory.createBoxBody(this.mPhysicsWorld, enemy1, BodyType.DynamicBody, enemyFixtureDef1);
        this.enemyBody1.setLinearVelocity(velocity);
        Vector2Pool.recycle(velocity);
        this.mPhysicsWorld.registerPhysicsConnector(new PhysicsConnector(enemy1, this.enemyBody1, true, false));






        this.scene.attachChild(enemy1);
4

1 に答える 1

2

MoveModifierを使用して物理ボディを移動することはできません。これは、PhysicsConnectorのないスプライトでのみ機能します。接続は、Box2Dエンジンからその上で動作するAndEngineへの一方向にのみ行われます。物理学の観点から車の動きを管理する必要があり、スプライトは体を追跡します。逆ではありません。

于 2012-05-27T16:17:38.567 に答える