Sprite移动速度在所有设备中都不是恒定的 - Andengine

时间:2012-10-31 09:29:34

标签: android andengine

我正在创建一个Android游戏并使用AndEngine。背景雪碧移动速度在不同的设备中是不一样的,它的变化。我正在使用以下代码移动bgSprite。如何为不同的设备保持游戏的恒定速度。?

 bgSprite1.setPosition(bgSprite1.getX() - 10, bgSprite1.getY());

1 个答案:

答案 0 :(得分:0)

创建一个扩展Sprite的类,例如我为我做了这个(应该是我用来知道何时销毁sprite的var(在这种情况下,当它离开屏幕时)):

public class BackgroundMovingLine extends Sprite {

public boolean shouldDie;
private int speed;

BackgroundMovingLine(final int pX,final int pY, final ITextureRegion pTextureRegion, final VertexBufferObjectManager pVertexBufferObjectManager)
{
    super(pX,pY,pTextureRegion,pVertexBufferObjectManager);
    shouldDie=false;

    speed=(new Random()).nextInt(150)+250;
}
@Override
protected void onManagedUpdate(final float pSecondsElapsed) { 

    float h=this.getY();

    h=(h+(speed*pSecondsElapsed));

    if(h>800)
    {
        shouldDie=true;
    }

    this.setY(h);

}
}

加速它是移动精灵的速度。 我随机制作了它,但你可以把它设置成你想要的。