基于Android系统的坦克大战手机游戏的开发外文翻译资料

 2022-07-17 14:52:03

英语原文共 4 页,剩余内容已隐藏,支付完成后下载完整资料


基于Android系统的坦克大战手机游戏的开发

作者:石一平 电气与电子工程学院,上海工程技术大学,上海,中国

摘要:随着手机游戏的迅速发展和谷歌Android操作系统的普及,以娱乐、锻炼思维为目的而设计的Android手机游戏将越来越成为人们娱乐方式的主流。本文主要介绍了手机游戏的发展过程,结合基于android系统的坦克大战游戏开发的关键技术进行了分析

1 简介

随着android操作系统的普及和Android系统终端设备数量的增加,基于android应用系统的应用开发吸引了越来越多的开发者。移动游戏的发展一直是移动发展最重要的部分。Android应用层的开发是基于java开发的,所以它具有移植游戏利用J2ME开发快。但是移植游戏不能发挥Android操作系统的独特特性。基于android游戏开发的市场还不够成熟。在了解android应用开发的基础上,开发一款完全适应android的坦克大战移动游戏是很有必要的。

2 安卓系统的介绍[13]

Android是谷歌开发的基于Linux平台的智能手机开源操作系统。它是移动终端的第一个开放式操作系统,主要使用于移动设备,如智能手机和平板电脑。Android SDK提供了必要的开发工具和API,我们可以使用java语言开发可以运行在Android平台上的Android应用程序。 Android系统架构分为四层。它们分别是应用层、应用框架层、系统运行库层和Linux内核层。

2.1 应用层

应用层包含了Android平台的核心应用,如电子邮件客户端、浏览器等,这些应用程序是用java语言编程的程序。在虚拟机上运行的程序和所有应用软件都属于应用层。 Android会同一系列核心应用程序包一起发布,该应用程序包包括客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。

2.2 应用框架层.

应用框架层使用API框架开发核心应用程序。开发人员还可以使用框架来编写自己的应用程序。隐藏在每个应用后面的是一系列的服务和系统, 其中包括;丰富而又可扩展的视图,可以用来构建应用程序, 它包括列表,网格,文本框,按钮, 甚至可嵌入的web浏览器。内容提供器使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据资源管理器提供 非代码资源的访问,如本地字符串,图形,和布局文件。通知管理器使得应用程序可以在状态栏中显示自定义的提示信息。活动管理器用来管理应用程序生命周期并提供常用的导航回退功能。

2.3 系统运行库层.

系统运行库层:使用Android应用框架的时候,Android系统将使用C / C 库的单个部件,使其更好地为开发者服务。这些库能被Android系统中不同的组件使用。它们通过 Android 应用程序框架为开发者提供服务。以下是一些核心库:1.系统 C 库 - 一个从BSD继承来的标准C系统函数库 Libc , 它是专门为基于Embedded linux的设备定制的。2.媒体库 - 基于PacketVideo OpenCORE;该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。

2.4Linux内核层:.

Android系统的核心服务是基于Linux2.6内核。如安全性,内存管理,进程管理,网络协议栈和驱动模型,全部依靠Linux2.6内核。通常,一个完整的Android应用程序包括四个组件:活动、意图接收者、服务和内容提供者。活动组件是用户界面。应用程序通常会包含多个活动。它们存储在活动堆栈中,遵循“高级”的原则互相切换。下载Android源码之前,先要安装其构建工具 Repo来初始化源码。Repo 是 Android 用来辅助Git工作的一个工具。当决定使用上述组件构建Android应用程序,它需要在AndroidManifest.xml注册。这是一个XML配置文件,它可以在这个文件中声明应用程序组件及其特性和需求。此配置文件对每个Android应用程序都是必需的。

3坦克大战手机游戏的设计

3.1 游戏的计划

坦克战游戏是一种移动娱乐游戏,能给人们的生活带来乐趣。它是一款非常经典的游戏,伴随我们很多人度过了一个快乐的童年,相信我们很多人小时候都玩过一个叫做“坦克世界”的游戏,他给我们带来了很多的欢乐。游戏规则很简单,当游戏开始时,玩家控制自己的坦克,并使用上下左右这四个方向键来控制坦克的移动。当敌人坦克开始出现时,玩家可以操作自己的坦克瞄准,再按“OK”按钮发射子弹。所有敌人坦克被摧毁后,玩家获胜,游戏结束。敌方的坦克会一直不停的向我方坦克发射子弹,给玩家一定的危机感。当玩家的坦克被子弹击中或者我们的家被敌方坦克的子弹摧毁时,显示玩家游戏失败,游戏随之就结束了。

3.2 系统模型的设计.

根据坦克大战游戏的功能需求分析,坦克战游戏需要完成以下功能:游戏界面布局、控制功能和其他辅助功能。

坦克战游戏总体的模块结构包括主界面模块和控制模块这两个模块。主界面模块主要是在玩家进入游戏后,系统能够主动把游戏场景展现在玩家面前,玩家继而能够通过手指点击来开始游戏,主界面是玩家首先看到的系统界面。它包括游戏图形区域界面、玩家和敌人坦克号的显示、玩家所得分数显示、更新界面等功能区的显示和障碍物和大本营的初始化显示。

玩家通过点击“OK”键来开始游戏。游戏开始后,将进入一个初始界面。界面上有玩家所控制的坦克、墙壁和玩家所要保护的家。刚开始时玩家是无法控制坦克移动的。当按下“OK”键时,游戏正式开始,玩家坦克开始接受由玩家按下的上、下、左、右键命令来移动。按“确定”按钮可以发射子弹。当玩家被敌人的子弹或家园摧毁时,玩家便对游戏失去了控制,提示玩家游戏失败,随之游戏结束。在游戏结束时,它会自动弹出一个对话框。对话框内容是“哦!你失败了!”

3.3 设计中所用到的关键技术

3.3.1 游戏界面的构建技术

为了建立游戏的界面,它包括我们的坦克和敌人坦克,子弹,挡土墙和仓库等等一系列的绘制。在坦克大战游戏的GamePanel类从视图类继承而来。视图类主要是用来显示视图,装饰桌布(游戏场景布置的画板类东西),提供按钮触摸屏事件和函数等功能的部署,GamePanel类负责处理主界面的初始化和接受子弹的碰撞事件并对其进行处理。根据子弹撞击的目标,其可以分别调用坦克类、炮弹类或墙类的相应功能函数来完成相应功能的响应和实现。

3.3.2 坦克行为的控制技术.

为了能够移动坦克,我们可以采用以下两种实现方式:一种是利用一个线程来实现多个坦克的移动。该方法具有性能稳定、操作方便等优点。这需要我们对线程有一定的了解。另一种方法是使用迭代器实现多个坦克的移动。它使用迭代器能够访问容器对象中的各种元素的特点,所以我们不需要对外公开对象的内部结构。在本文中,使用的是第二种方法。

玩家通过上、下、左、右这四个方向键来控制坦克的移动。当敌人坦克开始出现时,玩家可以操作自己的坦克瞄准,再按“OK”按钮发射子弹。所有敌人坦克被摧毁后,玩家获胜,游戏结束。敌方的坦克会一直不停的向我方坦克发射子弹,给玩家一定的危机感。当玩家的坦克被子弹击中或者我们的家被敌方坦克的子弹摧毁时,显示玩家游戏失败,游戏随之就结束了。视图类封装了触摸屏监控功能的函数onTouchEvent(MotionEvent event)来持续监控玩家队触摸屏的操作。通过getAction这个函数可以得到玩家发出的按下或移动方向键的操作,从而可以控制坦克移动。

3.3.3 游戏控制机制

每一场游戏都需要一个引擎来促进游戏的运作。坦克大战游戏的引擎使用迭代器容器的一个线程来使相应的元素执行相应的动作,直到我们的坦克被敌方的坦克摧毁或者我们的大本营被摧毁。通过继续移除和绘制障碍物、坦克和子弹,它保持主屏幕中的内容的持续更新,直到玩家坦克或家被摧毁。

4基于android的坦克大战手机游戏的实现[4-6]

4.1. 系统开发环境介绍

Android虚拟设备用于开发者调试他们开发的Android应用程序。它可以在PC机上运行,为手机用户提供真实的界面和操作方式。它与底层硬件驱动程序有所不同。开发人员在Android虚拟设备中可以使用鼠标来代替手机的AVD点。

为了实现这一点,开发人员首先需要建立一个Android开发环境。坦克大战的游戏开发环境使用的是微软Windows 7操作系统 JDK Eclipse Android SDK开发环境。android游戏开发环境主要包括以下三个部分:

4.1.1 JDK.

JDK(java开发工具包)是Sun微系统公司针对java开发者所开发的产品。JDK是java的核心。它包括java运行环境,java工具和java类库。JDK主要用于开发在移动设备和嵌入式设备运行的java应用程序。它包含一些基本组件和通用包,是Java 语言的软件开发工具包。

4.1.2 Eclipse.

Eclipse是一个开源的、可扩展的开发平台,基于java。它只是一个框架和一组服务。它可以通过插件组件构建开发环境。Eclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成。Eclipse提供了一套标准的插件,包括java开发工具(java开发工具包)。Eclipse主要有以下特点:它是开放的、可扩展的集成开发环境,具有强大的图形界面应用程序接口(SWT/JFace)。Eclipse 还包括插件开发环境,这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所,最后,它还具有开源的性质。

4.1.3 Android SDK Tool.

Android SDK工具是一个软件开发工具包。它为软件开发工程师提供了一套应用软件开发工具,用于建立一个特定的软件包、软件框架、硬件平台以及操作系统。它不包括Android软件开发工具包。Android SDK工具包括Android模拟器,针对Eclipse IDE的Android开发工具插件,调试监控服务,Android调试桥,Android资产打包工具,Android的界面描述语言,SQLite数据库,Android虚拟设备等,是Android专属的软件开发工具包。

4.2类模块的设计.

坦克大战游戏的源目录如图1所示.

图片.1 资源目录

gamefactory.java能够创建子弹类,子弹类实现坦克发射子弹的功能。gamepanel.java是游戏的控制类的主要接口的类。point.java是协调类。shells.java是子弹类,它包含子弹运动的方法。tank.java是坦克类,它包括坦克图像读取的方法和移动控制的方法。wall.java是障碍类,它主要包含障碍物的绘制方法。

4.3 游戏界面的实现

主窗口实现人机交互的主要功能。在程序中,它可以创建一个从视图类继承而来的窗口。

4.3.1 游戏主界面的创建

创建GamePanel类,它主要用于初始化、添加和存储坦克大战游戏中的各部件。二维数组map [][]用于记录每个点的当前状态。它采用初始map()函数初始化坦克大战游戏的墙壁和营地。

4.3.2 子弹类方法的绘制

创建shellclass类的public void drawshells()方法来实现子弹的绘制。

4.3.3 单面墙的绘制和实现

墙的一个单元是由一个蓝色的矩形和一个白色的边界组成的。它调用drawwall()方法来绘制单面墙。

4.3.4 坦克模型的绘制

它使用外部图片素材。绘图首先是读取外部图像。它使用坦克加载函数功能在游戏过程中绘制最初的玩家坦克和敌方坦克。

4.4 控制模块的实现.

在游戏的主窗口中,游戏可以输入和输出数据。坦克需要得到玩家的向上、下、左、右的命令来移动。使用“OK”键控制坦克发射子弹。

4.4.1 坦克的移动 的实现

游戏必须能够在同一时间支持多个坦克移动。它使用迭代器和列表的方法操纵容器中的每个元素。它实现了坦克的随机移动,以及当子弹碰到坦克时的行为判断(即坦克爆炸消失)。

4.4.2 产生坦克的实现

玩家坦克是在游戏开始时在固定位置产生的。敌方坦克是在游戏过程中在一定坐标范

全文共6557字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[9242],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。