我是libGDX和Android游戏开发的新手。我想实现这个目标:
我有一个Screen
,其中有一个沿X轴移动的球精灵。现在我想在视口移动时将视口居中。就像愤怒的小鸟一样,相机跟随鸟儿飞过天空。
如何使用OrthographicCamera
在我的游戏中实现?
答案 0 :(得分:12)
这花了我一段时间谷歌搜索和测试,但我刚发现了一些东西,我认为其他人可能会欣赏它。
要移动相机(如果您使用的是spriteBatch),请务必调用setProjectionMatrix。
例如:
camera.position.y += 5; // or whatever you want to change y by...
camera.position.x += 5;
camera.update();
spriteBatch.setProjectionMatrix(camera.combined);
希望这有助于某人!
答案 1 :(得分:3)
如果您还没有想到这一点,您需要使用
将球位置转换为相机位置camera.unproject(ballPosition)
这会将屏幕坐标转换为世界坐标。然后拨打
camera.position(ballPosition)
将相机位置设置为球在世界上的位置。
答案 2 :(得分:2)
camera.translate(...);
函数通过给定数据转换摄像机的所有相关属性。操作完成后,您需要调用
camera.update();
计算相机的新矩阵。这会将相机推向您想要的方向。