如何在Andengine场景中居中

时间:2011-12-29 20:52:28

标签: java android andengine

是否有用于将背景置于Andengine相机中心的公式。

我的相机是我使用此功能检索的特定设备上屏幕的大小...

final Display display = getWindowManager().getDefaultDisplay(); 
CAMERA_WIDTH = display.getWidth(); 
CAMERA_HEIGHT = display.getHeight();

int x = //formula to center background in camera or screen on the X axis

int y = //formula to center background in camera or screen on the Y axis

对于我的SpriteBackground,我怎么能弄清楚x是什么,而y是把它放在相机中?

这样提供x和y ..

Sprite sprite = new Sprite(x,y,TextureRegion);

2 个答案:

答案 0 :(得分:3)

final float x = CAMERA_WIDTH / 2 - textureRegion.getWidth() / 2;
final float y = CAMERA_HEIGHT / 2 - textureRegion.getHeight() / 2;
Sprite sprite = new Sprite(x, y, textureRegion);

这将使精灵定位在场景的中间。如果相机不移动,它也将成为相机的中心(因此也是屏幕)。

答案 1 :(得分:1)

您应该检查场景的setBackground方法。它将使您的精灵居中并在相机移动时移动它。

    Sprite background = new Sprite(0,0, CAMERA_WIDTH, CAMERA_HEIGHT, backgroundTextureRegion);
    scene.setBackground(new SpriteBackground(background));