1-1Android游戏开发课程安排背景概述功能简介游戏的策划及开发前的准备工作游戏的架构公共类的开发界面相关类的开发与设计游戏界面的设计与实现游戏的优化和改进1-2Android游戏开发开发背景塔防类游戏是目前市场上比较流行的一类游戏,本章要介绍的这款塔防游戏同样沿用了市场上比较流行的守城玩法,本游戏要守的城池有自己的血量,通过铸造箭塔阻挡不断侵袭的怪物精灵,城池血量为零守城游戏失败。1-3Android游戏开发功能介绍在游戏开发之前,首先对游戏所应具有的功能,进行了详细的分析,分析得到功能如下:•欢迎动画界面,游戏运行后首先要进入的界面。•主菜单界面,欢迎动画过后系统进入的界面,里面包含多项对于游戏的操作:继续游戏、新游戏、积分榜、音效设置、游戏帮助以及退出选项。•游戏音效设置界面,可以对游戏背景音乐及游戏音效进行打开关闭操作。•积分榜,记录玩家玩过的游戏得分记录,积分按从高到低排列。1-4Android游戏开发功能需求(续)•帮助界面,简单介绍游戏的基本功能及玩法。•游戏界面,为本游戏的主体,作为本游戏软件最具体也是最重要的开发模块。1-5Android游戏开发游戏预览•这一节将对本游戏各个功能进行演示。1-6Android游戏开发游戏的策划•本游戏的策划主要包括游戏类型定位、呈现技术以及目标平台的确定等操作。下面就针对本游戏对上述几个方面进行简单的介绍,如下所列。–游戏类型,本游戏所有操作都为触屏操作,主要通过摆放箭塔阻挡怪物精灵的侵袭,隶属休闲益智类游戏–运行目标平台,游戏目标平台为Android2.2,向下兼容Android2.1、Android2.0、Android1.6。–游戏操作方式,本游戏所有关于游戏的操作都是触屏操作,玩家可以拖动箭塔进行塔的放置,同时触摸当前箭塔显现箭塔操作图层,可以进行箭塔操作。–采用的呈现技术,相比于2D游戏来说,本游戏采用2.5D技术开发,可以有一种立体的效果,及随着位置的不同怪物精灵可以遮挡箭塔,同时也可被遮挡1-7Android游戏开发开发前准备工作•由于该游戏使用Eclipse作为主要的开发工具,所以在开发之前需要检查Eclipse是否已经配置好。•准备游戏开发中用到的图片资源•准备游戏开发中用到的声音资源1-8Android游戏开发游戏的架构•在正式介绍代码的开发之前,首先对游戏的设计框架进行简要介绍,帮助读者对本游戏开发的过程有一个深刻的理解。1-9Android游戏开发游戏的类框架1-10Android游戏开发各个类的简要介绍该游戏中开发的类比较多,为了让读者能够更好的理解各个类的在游戏中所扮演的角色,本节将按照前面的框架分类对各个类的功能进行简要介绍。–公共类–游戏界面相关类–辅助线程类–实体对象类1-11Android游戏开发公共类•首先介绍游戏的控制器TafangGameACtivity类。–TafangGameACtivity类的框架搭建–Handler消息处理机制–游戏积分记录的数据库开发–游戏存档与读档对话框的开发其次介绍游戏存档数据库DBUtil类。–游戏抽象化存储–游戏读档1-12Android游戏开发界面相关类•本游戏界面主要包含:欢迎界面WelcomeView、主界面MainMenuSurfaceView、积分榜界面HighJifenSurfaceView、帮助界面HelpView、音效设置界面MusicSurfaceView以及游戏结束界面GameOverView。–欢迎界面WelcomeView:当玩家运行游戏时,首先进入的是游戏的欢迎界面,开启游戏时就进入了动画欢迎界面。–主界面MainMenuSurfaceView:包含的游戏操作:继续游戏、新游戏、积分榜查询、背景音效设置、帮助以及退出等几个选项。–积分榜界面HighJifenSurfaceView:记录游戏积分。1-13Android游戏开发界面相关类(续)–帮助界面HelpView:点击主界面中帮助按钮就进入到了游戏的帮助界面,给出了游戏的玩法说明。–音效设置界面MusicSurfaceView:点击主界面中的音效设置界面就进入到了游戏软件的音效设置界面,可以对游戏的背景音乐和及游戏音乐进行设置。–游戏结束界面GameOverView:玩家守城失败,系统要进入的动态游戏结束界面。1-14Android游戏开发游戏界面GameView及相关类•上面已经介绍了除游戏界面以外的其他界面,接下来将详细的讲解本游戏软件的最重要的模块游戏界面GameView,下面分步骤对其进行讲解。–精灵怪物Target类。–箭塔SingleJianta类。–箭Shell类。–精灵怪物的出生——TargetNumThread线程调用–箭塔控制发射器——ShellNumThread线程–游戏地图矩阵模拟化–摆放箭塔守护城池–弹指间怪物灰飞烟灭——游戏水晶1-15Android游戏开发精灵怪物Target类•本游戏主要任务是守住精灵怪物不让其接近主城,所以怪物精灵是游戏的主体,为了实现怪物精灵的动态效果,开发了怪物的行走、辨别方向等模块。–精灵怪物的行走。–怪物精灵的行走方向判定。–不同状态下怪物精灵的图片刷新。–怪物精灵血量模块的开发1-16Android游戏开发箭塔SingleJianta类上述完成了游戏中的怪物精灵的开发,精灵可以行走、选择方向以及随着方向变化自动转身,下面介绍本游戏的另外一个主角箭塔,该游戏分为两种类型的箭塔,长相不同,攻击范围有所区别,自然要建造不同箭塔的金钱数也不同。1-17Android游戏开发箭Shell类•上面实现了游戏中最重要的两个主要角色精灵怪物和箭塔类得开发设计,下面要讲解的是连接两个角色的桥梁——箭Shell类。–箭Shell类的整体框架的介绍。–箭的行走过程开发。–箭追击怪物精灵过程中方向问题的开发。–箭与怪物精灵的碰撞检测。1-18Android游戏开发精灵怪物的出生——TargetNumThread线程调用上面实现了精灵怪物类Shell的开发,通过新建Shell类可以得到不同种类的不同血量的怪物精灵,本游戏作为一款塔防守城游戏,一定要有源源不断的怪物精灵侵袭直到守城失败游戏结束,本小节就将详细介绍怪物精灵的产生以及数量的控制。1-19Android游戏开发箭塔控制发射器——ShellNumThread线程上面解决了游戏中所涉及的怪物精灵的开发问题,接下来要讲解的问题是箭塔发射箭的开发过程,游戏过程中可能有相当数量的怪物精灵经过一个箭塔,这时摆在箭塔面前有一个问题,该射击哪一个怪物精灵呢?本游戏的解决方案是:在箭塔射程范围内总是射击走在最前面的怪物精灵。1-20Android游戏开发游戏地图矩阵模拟化前面已经完成了游戏中主要角色怪物精灵、箭塔以及箭的设计开发,本游戏对游戏界面的布局采取数学上的矩阵知识,将游戏界面类比成矩阵界面,根据矩阵中设置不同数字绘制不同的游戏场景,下面介绍本游戏中的矩阵界面。{3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3},{3,2,2,2,0,0,0,4,4,4,0,0,0,0,0,2,3,3,3,3},{3,4,4,4,0,0,1,1,1,1,1,0,0,0,0,2,3,3,3,3},{3,2,0,0,0,4,1,0,0,0,1,0,0,0,0,2,4,4,4,3},{1,1,1,1,0,0,1,0,0,0,1,0,3,0,0,0,0,0,0,0},{2,2,0,1,0,2,1,0,0,0,1,0,3,0,1,1,1,1,1,0},{2,0,0,1,0,2,1,0,3,3,1,0,2,2,1,0,0,0,0,3},{2,0,0,1,0,2,1,0,3,3,1,0,2,2,1,0,0,0,0,3},{2,0,0,1,0,0,1,0,2,3,1,0,0,0,1,0,0,0,0,3},{2,0,0,1,1,1,1,0,2,0,1,1,1,1,1,0,2,2,3,3},{3,3,0,0,0,0,0,0,2,0,0,0,0,0,0,2,2,3,3,3},{3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3}1-21Android游戏开发摆放箭塔守护城池•上面几个小节实现了怪物精灵、箭塔以及箭的开发,但是以一种什么样的形式去摆放箭塔就成了一个要解决的问题,本游戏采取用手拖动箭塔进行摆放,操作不但简便,玩法酷炫符合广大玩家的意愿,下面就分步骤详细讲解这方面的内容。–摆放箭塔的过程类SingleGoJianta。–触摸选定箭塔。–屏幕拖放箭塔。–摆放箭塔。1-22Android游戏开发弹指间怪物灰飞烟灭——游戏水晶•前面已经完成了本塔防游戏中的大部分开发工作,为了增加游戏的可玩性,本游戏增加了游戏水晶模块,通过击杀一定数量的怪物精灵,系统会奖励玩家一个游戏水晶,玩家触摸屏幕上的水晶模块便可轻松消灭游戏界面中的所有怪物,当然水晶技能不能连续使用,存在技能CD,效果与平时玩的英雄技能CD效果一致,下面就分步骤详细讲解其实现过程。–游戏水晶绘制。–游戏水晶技能释放。–游戏水晶技能效果开发。–2D纹理切割。1-23Android游戏开发游戏的优化与改进到此为止,塔防游戏——精灵塔防已经基本开发完成,也实现了最初设计的功能,但是通过开发后的试玩、测试发现游戏中仍然存在一些需要优化和改进的地方,下面列举需要改进的地方。增设适当不同地图,本游戏开发之初只设想了单地图,但和多关卡地图游戏相比功能是完全一致的,唯一不同的是可能游戏的可玩性降低了,读者可在本游戏基础上适当添加关卡地图。适当增加不同种类的箭塔,增设箭塔升级模块,本游戏中只设计了两种箭塔,并且都不能升级,这样的情况下可以适当增加不同种类的箭塔,同时增加同种箭塔的不同级别,这样就可以增加不少游戏的可玩性。Android游戏开发Android游戏开发易则易知,简则易从。易知则有亲,易从则有功。有亲则可久,有功则可大。可久则贤人之德,可大则贤人之业。——《易经》