2011-08-05 39 views
2

我正在開發一個20級的迷宮和球類遊戲。除了一個問題,所有問題都在我的遊戲中得到修復。我被困在讓球更順暢的時刻。除了動畫級別之外,各個級別的球都很好。我無法找到錯誤在哪裏。如何在andengine中使球更順暢

在所有的水平球是精靈和水平圖像是精靈和動畫精靈。我有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); 

存在球時刻,但在其他級別的微小變化沒有那麼多光滑的(非動畫的水平)。它仍然會輕微彈跳。並因爲那個問題無法玩遊戲。

任何人都可以幫助我,如果意識到這一點。任何迴應將不勝感激。

謝謝。

回答

2

編碼和全部沒有錯。我已經通過將動畫圖像的幀分辨率從3x2(即3行和2列)改變爲3x3(即3行和3列)來解決該問題。現在,在所有動畫級別中,每個圖像都有9個幀,以前每幀有6個幀。

通過使此更改球時刻變得與現在非動畫級別一樣平滑。

謝謝