我想指出,我对 Android 游戏开发还很陌生。我尝试了几种游戏编程方法,发现两者都有效,但它们都有自己的优势。所以我想知道哪种方式更好/更常见。例如,如果我们正在尝试制作拼图游戏,我们需要许多相互交互并响应触摸事件的拼图对象。
方式一:
正如我从 java 中学到的,如果您有许多行为方式相同的对象,您应该创建类,然后创建该类的对象。我在游戏项目中尝试了这个并创建了扩展 ImageView 的类“PuzzlePiece”。然后在我的主程序中,我将它们添加到我的布局中并将它们从主活动中移出。这是相当复杂和缓慢的。而且感觉这不是正确的方法。
方式二:
我将我的游戏对象添加为组件(例如 ImageView、ImageButton、带有图像背景的自定义布局)。这样我可以更好地控制它们,同时拥有许多对象并让它们相互交互更容易。但是这种方法很慢,而且感觉也不是正确的方法。
方式3:
我在 Activity 中添加了 SurfaceView,并使用 draw() 方法在画布上绘制了我的所有对象。这种方法要快得多,但这样我对我的对象的控制就更少了。例如,在画布上绘制许多对象并让它们都响应触摸事件或相互交互更难实现。
还有其他我错过的方法,或者我的方法之一接近正确的方法吗?