是使用 Android 内置的逐帧动画方法更好还是创建自己的动画方法更好?



我下载了几个Android游戏示例,其中大多数都没有使用Android的动画方法。我也在这个网站和其他网站上看到一些帖子,其中一些人说他们不喜欢使用Android的动画方法,但他们从来没有解释为什么。

那么,在游戏中不使用Android动画是不是更好呢?

我不建议在游戏中使用Android的Animation类。原因在于它们所运行的view对于高性能游戏来说还不够轻量级。视图是为按钮、文本和图像设计的,它们大多保持静止,位于有组织的布局中,而不是为到处移动的图像设计的。制作Android游戏的两种最佳方法是:

  • 使用Canvas类。请注意,这只适用于简单的2d精灵游戏,因为它往往很慢。对于初学者来说比较容易学习。

  • 使用OpenGL ES。这几乎适用于任何游戏-它速度快,可以做2-D和3-D游戏。注意,非常复杂,我不建议初学者使用OpenGL ES!

如果你是编程游戏的新手,我建议你购买一本关于这个主题的书,比如Mario Zechner的优秀著作《Beginning Android games》(可以在亚马逊上找到)。这本书首先使用画布制作"蛇"克隆,然后通过OpenGL的基础知识向您展示如何制作2d"涂鸦跳跃"类游戏,然后通过制作3d"太空入侵者"应用程序过渡到3d。我强烈推荐这本书,它解释了一切非常清楚,不是一个无聊的阅读,是我用来制作Android上的第一款游戏。

希望有帮助!

编辑:

为Android制作游戏还有第三种选择:使用预先构建的游戏库。这些库提供了基于OpenGL的速度优势,但更容易使用。许多游戏也是跨平台的,这意味着你的代码将更容易移植到其他操作系统(如iOS)上。(但请记住,跨平台解决方案并不总是理想的。)游戏免费库的例子包括Cocos2D和libGDX。如果你选择走这条路,请确保遵循许可协议(这可能涉及在主屏幕上放置某种标志)。

这些库很好,为游戏开发提供了一个简单的入口,但请记住,从头开始创造游戏将提供你在其他地方无法获得的知识和成就感。

最新更新