JetBoy游戏深入解析(上)——框架分析

JetBoy这个游戏是Android SDK中的一个例子游戏,花了几天的时间,简单的分析了下,为以后编写游戏代码积累一些经验。前面我们介绍了Snake游戏 ,这个游戏相对比较简单,JetBoy相对复杂些,其主要是告诉我们如何使用JetPlayer类。这个例子程序我们将分3篇幅(框架分析、JetPlayer类解析核心代码分析 )来解析,本篇幅我们主要分析其框架。

游戏的界面,如下图所示:


先介绍游戏界面的组成:Asteroid(小行星,陨石)、Ship(飞船)、Beam(激光束),其他的都是背景。
这个游戏如何玩了?通过中间按钮来控制飞船发射激光,击中陨石得分,飞船的位置与当前最新的陨石保证水平。
如何切换游戏界面的横竖?这个相信每个开发人员应该知道吧(Ctrl + F12)!

首先,我们还是分析类的结构,如下图所示:


主要类如下:

主要类 功能说明
JetBoy Activity的子类,游戏事件
JetView 游戏界面的显示
JetThread 核心线程类
KeyGameEvent 一个 key事件
JetGameEvent 一个JET engine 产生的事件

然后,我们分析程序对用户操作的处理:

最后,我们分析游戏运行的过程:

总结说明

整个程序看起来比较的复杂,我也是在分析Android SDK的基础上,然后将代码整理后使用Rational Rose工具将代码的框架分析出来,通过分析工具,我们就可以屏蔽“复杂“的代码(代码细节),整个框架就可以清晰的显示在我们面前。

你可能感兴趣的:(游戏,android,框架)