首页 > 编程知识 正文

android游戏开发免费网站(android游戏开发的架构)

时间:2023-05-04 14:46:22 阅读:123912 作者:4695

在写游戏代码之前,要仔细整理思路,清晰构建游戏整体框架。 一些开发者到最后都满脑子都是游戏开发,一出现bug就不知道该怎么修正,身心疲惫,痛苦不堪。 否则,建立游戏框架,就不会陷入骑虎难下的尴尬境地,游戏开发将是一个极其享受的过程,一个技术性的商业艺术创造过程。 我们将分阶段展示“男人就坚持20秒”游戏体系结构的构建过程。 在掌握企划方案的基础上,开发者应该迅速判断,细分游戏的功能模块。 “男的话持续20秒”的功能模块可以分为表9-3-4。

表9-3-4功能模块

项目流程图后,不能直接进行安卓游戏编程。 项目的运行过程和游戏的运行过程有很大的区别。 因为项目的流程图只是从用户体验的角度(或者企划的角度)宏观地描述,而只是起到迁移的作用。编程的流程图是基于程序角度给出的微观描述,是程序设计的因此,也有必要分析游戏实际运行的流程,而要分析的这个流程是传说中的“状态转移”。 如果是男人的话就继续20秒”的游戏状态比较简单,只有表9-5所示的4种状态。

9-3-5游戏四种状态

当然,这个游戏总共只有一个关闭,所以级别资源加载只能加载唯一关闭的资源。 接下来,需要绘制游戏状态的转换图。 状态转移一般用有限自动机表示,“如果是男人的话就持续20秒”的状态转移比较简单。 以下,示出如图9-3-5所示的状态转移的参考图。

9-3-5游戏执行阶段细分流程图

准备好前面几步后,框架基本上就出来了。 “男人的话持续20秒”的框架比较简单,但通用性和扩展性很高。 下面的伪代码展示了高效的游戏框架以供参考。 While () (游戏还没有结束) )。

ap:break-word">   {

  State_change();//状态转换

  Update_fps();//状态执行

  Draw();//绘制

  }

  • State_change()函数完成游戏状态间的转换,可以根据图9-3状态转换图实现,不再赘述。

  • Update_fps()函数框架的伪代码如下:

  Update_fps()

  {

  Switch(游戏状态)

  Case 资源加载:

  Case 进入关卡:

  Load_gate();//加载背景、飞机、炮弹的图片。

  ase 游戏菜单:

  If (游戏结束) 计算游戏结果

  ase 游戏进行:

  New_paodan();//产生新炮弹

  Move();//计算出该时刻飞机以及所有炮弹所在的位置

  Is_pengzhuang();//碰撞判断

  ase 游戏暂停:

  Thread_pause();//游戏暂停操作。

  • Draw()函数框架的伪代码如下:

  Draw()

  {

  Switch(游戏状态)

  Case 游戏进行:

  Draw_background();//绘制背景

  Draw_paodan();//画炮弹

  Draw_feiji();//画飞机

  Case 其他:

  略....

  }



  注意:
  • 上述的draw()函数参考框架并不是适用于所有游戏的。特别是使用了3d特效,或者需要实现图层
  管理器的游戏。draw()函数应该根据实际需要量身定制。
  • 上述的draw()函数参考框架并不能保证绘图性能最优,高性能的图像绘制框架将非常复杂。
  完成了游戏架构之后,不要忘记把思考的结晶凝结为文档资料。建议完成如下文档:
  • 项目开发时程表
  • 功能模块划分及接口表
  • 技术备案表
  这三个表将帮助游戏开发人员明晰责权、监管制作,并为数据统计提供便利。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。