我有一个bug对象,我想在游戏开始时立即在屏幕上移动。错误从屏幕的左下角开始,应该移动到右上角并停止。我所拥有的是从未真正到达右上角的错误,因为游戏画面(X和Y)大小不相等。如何让bug移动到那个位置?
这就是我所拥有的。
public void create() {
spriteBatch = new SpriteBatch();
bug = new Sprite(new Texture("EnemyBug.png"));
bug.setSize(50, 85);
bug.setPosition(0,0);
}
public void render() {
xdeg++;
ydeg++;
Gdx.gl.glClearColor(0.7f, 0.7f, 0.2f, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
spriteBatch.begin();
bug.translate(xdeg, ydeg);
bug.draw(spriteBatch);
spriteBatch.end();
}
答案 0 :(得分:0)
我假设您知道窗口宽度(W)和高度(H)。首先找到W / H比率:
float ratio = screenWidth / screenHeight;
然后相应地更新您的错误位置:
bug.translate(ratio, 1);
这将使精灵在屏幕对角线上移动。