2

20 レベルの迷路とボール ゲームを開発しています。私のゲームでは、1 つの問題を除いてすべての問題が修正されています。ボールの動きを滑らかにすることにこだわっています。ボールの瞬間は、アニメーション レベルを除くすべてのレベルで良好です。間違いがどこにあったかを見つけることができません。

すべてのレベルで、ボールはスプライトであり、レベルの画像はスプライトとアニメーション化されたスプライトです。レベル画像のスプライトと 6 つのレベルのボールをアニメーション化しました。残りのレベルでは、レベル イメージとボールの両方がスプライトのみです。

すべてのアニメーション化されたスプライトには、1024x1024 サイズのテクスチャがあります。次のコードを使用して、アニメーション化されたスプライトを作成しました。

this.multipleImagesTexture = new Texture(1024,1024,TextureOptions.BILINEAR_PREMULTIPLYALPHA);
this.multipleImagesTextureRegion =   TextureRegionFactory.createTiledFromResource(this.multipleImagesTexture, this, getResources().getIdentifier(m_level.m_levelImages.get(j), "drawable", "com.andmaze.mobile"),0, 0, col,row); 
this.mEngine.getTextureManager().loadTexture(this.multipleImagesTexture); 
multipleimagesdragon = new AnimatedSprite(5, 83, this.multipleImagesTextureRegion);    
multipleimagesdragon.animate(1000); 
scene.getFirstChild().attachChild(multipleimagesdragon);

以下は、ボールのスプライトを作成するコードです

for(GoliMeta g : metalist) {
    balls_Array[index] = new Sprite(g.X , g.Y, ballTextureRegion);
    Body body = PhysicsFactory.createCircleBody(mPhysicsWorld, balls_Array[index],    BodyType.DynamicBody, FIXTURE_DEF);
    scene.getFirstChild().attachChild(balls_Array[index]);
    mPhysicsWorld.registerPhysicsConnector(new PhysicsConnector(balls_Array[index], body, true, false));
    index++;
}

迷路の通常のスプライトがあるすべてのレベルで、ボールの瞬間は良好です。他のレベル、つまりアニメーション化されたスプライトがある場所では、ボールの瞬間が異常です。私はphysicsworldのオブジェクトコードを

    mPhysicsWorld = new FixedStepPhysicsWorld(30, new Vector2(0,SensorManager.GRAVITY_EARTH), false);

それ以外の

     mPhysicsWorld = new PhysicsWorld(new Vector2(0, SensorManager.GRAVITY_EARTH), false);

ボールの瞬間にわずかな変化がありますが、他のレベル (アニメーション化されていないレベル) ではそれほどスムーズではありません。まだ軽く弾かれています。その問題のためにゲームをプレイできません。

これについて知っていれば、誰でも私を助けることができますか。任意の応答をいただければ幸いです。

ありがとう。

4

1 に答える 1

2

コーディングなどすべてに問題はありませんでした。アニメーション画像のフレーム解像度を 3x2 (つまり 3 行 2 列) から 3x3 (つまり 3 行 3 列) に変更することで問題を解決しました。すべてのアニメーション化されたレベルで、各画像は、以前はそれぞれ 6 フレームだったフレームが 9 フレームになりました。

この変更を行うことで、ボールの瞬間がアニメーション化されていないレベルと同じくらいスムーズになりました。

ありがとう

于 2011-08-12T03:22:49.417 に答える