2015-10-05 54 views
1

在我的遊戲中,我使用了render()方法中的以下代碼添加了一些sprite的box2d主體。將sprite設置爲當前動畫紋理

for (Body body : worldBodies) { 
     if (body.getUserData() instanceof Sprite) { 
      Sprite sprite = (Sprite) body.getUserData(); 

      Vector2 position = body.getPosition(); 
      sprite.setPosition(position.x - sprite.getWidth()/2 , position.y - sprite.getHeight()/2); 
      sprite.setRotation(body.getAngle() * MathUtils.radiansToDegrees); 
      sprite.draw(batch); 
     } 
    } 

其中一個機構必須是動畫。

birdAnimation = new Animation(1, birdAtlas.getRegions()); 
birdAnimation.setPlayMode(Animation.PlayMode.LOOP_PINGPONG); 

這是動畫,現在我想身體的精靈obstacle6從動畫unsing這個代碼設置爲當前textureRegion:

obstacle6.setRegion(birdAnimation.getKeyFrame(delta)); 

不知怎的,它只是顯示地圖集的第一個紋理。我怎樣才能改變它?或者還有其他的方式來動畫box2d的身體? 如果您需要任何其他信息只是評論。

回答

2

getKeyFrame方法需要經過的時間,而不是增量時間。