我目前正试图用自上而下的视角写一个简单的射击游戏。我使用SurfaceView和Canvas在屏幕上绘制图形,但我无法找到如何使“相机”滚动。 玩家角色总是在屏幕的中心,相机(SurfaceView的画布基本上)应该一直跟着他(例如,像在外星人群中一样)。但是,我无法弄清楚如何以一种常规的方式来实现这一点。我现在的做法是根据玩家的输入移动游戏世界中的所有其他物体,并在坐标恰好在屏幕上时进行绘制。玩家始终保持在同一坐标上。 有什么方法可以实际移动(滚动)SurfaceView本身?我看到了Scroll小部件和SurfaceView.scrollBy(int x,int y)方法,但是我尝试实现其中的任何一个都会导致Force Close。 任何帮助表示赞赏,在此先感谢!如何在android中编程滚动游戏摄像头?
P.S.请注意 - 我对此项目使用公开GL没有兴趣。
谢谢,这是有益的,但我不得不动用玩家冷杉,翻译,然后绘制画面,以使其发挥作用。我觉得很奇怪。这里是我的代码: px = px + accelerometer_x; py = py + accelerometer_y; canvas.drawBitmap(mObj4,50,350,null); ((float)px,(float)py); canvas.drawCircle(218,368,10,p); 这不起作用,因为风景(mObj)保持静止,但角色(圆圈)在屏幕中移动。它应该是相反的,当我切换drawObj和drawCircle的地方它的作品。奇怪的。 – Kiril 2010-09-26 21:55:29