android - 如何为 Android 创建一个简单的 2D 游戏?

标签 android game-engine game-physics

在游戏开发方面我是一个完全的新手,我需要有人为我指明正确的方向。
为了清楚起见,请考虑以下动画。 simple zombie game animation

基本上我需要知道如何将上述动画模拟为 Android 游戏,但我不知道这样做所需的步骤。我的问题可以总结如下:

  • 这样简单的游戏需要使用游戏引擎吗?
  • 或者它可以在不使用任何特定框架的情况下完成?
  • 我是否需要使用 Adob​​e Flash 等动画应用程序?
  • 制作这种游戏的必要步骤是什么?

最佳答案

是否使用游戏引擎是一种偏好。这将取决于你到底在追求什么。如果你想了解渲染、碰撞检测等的基本概念,那么自己编写这些是完全可以接受的,而且很有趣。另一方面,如果您只想完成游戏而不必担心细节,那么引擎绝对是您的最佳选择。

游戏引擎的范围从非常基本的包装器(通常提供处理低级任务的更简单的函数)到高度复杂的抽象,其中实际游戏开发不再类似于任何特定平台 - 它们有时还允许您创建游戏一次并将其部署到各种平台而无需任何更改。

要实现基于该动画的游戏,您可以使用以下内容:

  • 为每个非玩家角色创建一系列连续的“帧”,这些帧在循环时会产生运动的错觉。这些可以在任何图形应用程序中创建(最好在纹理贴图/图集中)。
  • 对于玩家角色,每个“移动”都需要一个动画序列,例如kickpunch等。然后当玩家播放正确的序列时触发一些 Action (例如,当玩家按下踢按钮时播放 kick 序列)。
  • 每个字符都应该有一个边界框(即定义字符大小和位置的矩形)。根据攻击类型,玩家角色可能应该有一个不同大小的框(即 kick Action 的框将比 punch 的框向右延伸更远行动。
  • 在屏幕右侧随机生成角色并以某种速度(基于类型?)将它们移向玩家。在每次迭代期间,测试玩家和每个非玩家的边界框之间的碰撞。如果发现碰撞,检查玩家是否在踢或打并杀死被击中的角色,如果玩家没有攻击可能会伤害他/她。

这是对您的问题的非常基本的描述,应该为您提供足够的想法来研究以实现基本版本:)

您可能想要研究的一些游戏引擎:

如果你有兴趣学习专门制作安卓游戏,看看这本书:

关于android - 如何为 Android 创建一个简单的 2D 游戏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23274049/

相关文章:

algorithm - 在赛车游戏中跟踪进度

c++ - 如何确定 Box2d 中的相对碰撞角度

python - 如何让物体永远在同一高度弹跳

android - Android 中的样式继承

java - 在 LibGDX 中使用抽象屏幕

HTML5 2d 六角棋盘游戏(桌面)引擎

javascript - 在尊重 Three.js 中的下一个相邻网格的碰撞时移动一个盒子

Android Alarm Manager 与 4.4.x 不一致。支持 minSDKVersion 9 和 targetSdkVersion 21 的替代解决方案是什么

android - Android 中的流式 MIDI API

math - 检查点积是否接近 0 时,epsilon 应该有多大?