收藏 分享(赏)

Java游戏.doc

上传人:sjmd695 文档编号:7760799 上传时间:2019-05-25 格式:DOC 页数:26 大小:435.50KB
下载 相关 举报
Java游戏.doc_第1页
第1页 / 共26页
Java游戏.doc_第2页
第2页 / 共26页
Java游戏.doc_第3页
第3页 / 共26页
Java游戏.doc_第4页
第4页 / 共26页
Java游戏.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、题目:基于 java 的飞机游戏重庆电讯职业学院毕业设计(论文)系 部 计算机与传媒系 专 业 软件技术 年 级 2013 级 姓 名 胡 建 指导教师 魏 轶 2015 年 10 月 23 日重庆电讯职业学院毕业设计(论文)任务书题目: 基于 java 的飞机游戏学生姓名 胡 建 系部名称 计算机与传媒系 专 业 软件技术 学 号 1310506099 指导教师 魏 轶 一、原始依据(包括设计或论文的工作基础、研究条件、应用环境、工作目的等)本项目基于 java 语言开发,本项目组成员在学习过程中经过三年的学习,基本掌握了 java 语言,具备该项目的开发能力。本项目相关软使用 myecli

2、pse 开发工具开发,软件产品可以工作在 Android 平台。本项目旨在开发一个具备休闲娱乐功能的游戏软件。二、参考文献1 黄嘉辉, Java 网络程序设计M,清华大学出版社,2002 年 11 月2 张孝祥, Java 就业培训教程M,清华大学出版社,2003 年 3 王宜贵,软件工程 M,机械工业出版社,2008 年 4 袁然,郑自国, Java 案例开发集锦M,电子工业出版社,2005 年 5 聂哲,袁梅冷,杨淑萍,Java 面向对象程序设计M, 高等教育出版社,2005年 6 月6 陈昊鹏.Java 编程思想(第 3 版).北京:机械工业出版社,2005 7 虞万荣.Java 编程语

3、言(第 3 版).北京:中国电力出版社,20038 李英军.设计模式:可复用面向对象软件的基础.北京:机械工业出版社,2005 9(美)弗拉那根.JAVA 技术手册(第五版).上海:东南大学出版社,200610 Joshua Bloch.Java 高效编程指南.北京:机械工业出版社, 2002三、设计(研究)内容和要求(包括设计或研究内容、主要指标与技术参数,并根据课题性质对学生提出具体要求)本项目主要研究游戏的人物模型建模方法、游戏界面设计、游戏运行逻辑编程、游戏测试等方面的内容。本项目要求在当前主流配置的移动设备上能够流程运行,程序结构设计合理、游戏算法设计科学,使用工程化的思想进行编程。

4、程序具有一定的实用价值。本人在项目中主要承担人物移动和子弹方面的工作:飞机和怪物的上下左右的移动,飞机和怪物的子弹效果。指导教师(签字)年 月 日审题小组组长(签字)年 月 日重庆电讯职业学院毕业设计(论文)题目:基于 java 的飞机游戏 学生姓名 胡 建 系部名称 计算机与传媒系 专 业 软件技术 学 号 1310506099 指导教师 魏 轶 摘 要 这是一款基于 java 的“飞机大战”游戏。Java 是近年来随着各种不同设备,尤其是移动设备的飞速发展而诞生的一项新的开发技术。随着社会与经济的发展、手机的日益普及、Java 功能在移动设备上的实现,Java 应用程序产生的手机增值服务逐

5、渐体现出其影响力,对丰富人们的生活内容、提供快捷的资讯起着不可忽视的作用。本论文是基于 Android 操作系统开发的,利用 Eclipse8.5 环境和 JAVA 语言实现的。经过可行性研究,需求分析,总体设计,详细设计,编码实现和测试,从而实现了本游戏的设计。本论文介绍了 java 的相关技术及本程序的结构分析和具体功能的实现。本游戏在 Android SDK 虚拟机下测试通过,界面友好,运行顺畅。关键字:Java;Android;游戏设计ABSTRACTThis is a Java based “plane war“ game. Java is in recent years, alon

6、g with a variety of different devices, especially the rapid development of mobile devices and the birth of a new development technology. With the development of society and economic, the rising popularity of mobile phones, the realization of the Java function on mobile devices, a Java application of

7、 mobile value-added services gradually manifests its influence, to enrich the content of peoples lives, provide quick information plays a considerable role.This thesis is based on the Android operating system development, using Eclipse8.5 environment and the implementation of the JAVA language. Thro

8、ugh the feasibility study, demand analysis, general design, detailed design, code implementation and testing, so as to realize the design of this game. This paper introduces the Java related technologies and the program of structure analysis and the realization of the function of concrete.This game

9、in the Android SDK under virtual machine tests pass, friendly interface, run smoothly.Key words:Java; Android. Game design目 录第一章 概述 1.1 游戏开发背景及意义1.1.1 开发背景 1.1.2 开发意义 1.2 开发平台介绍 1.2.1 Eclipse 1.2.2 ADT 1.2.3 JDK 1.3 Android 操作系统结构 1.3.1 Android 操作系统介绍1.3.2 Android 操作系统的优点1.3.3 Android 系统结构 1.3.4 And

10、roid 应用程序组成部分 第二章 开发平台的搭建 2.1 JAVA 虚拟机的安装 2.1.1JDK 的安装 2.1.2 Java 环境变量配置 2.2 Eclipse 的安装 2.2.1 安装 SDK2.2.2 Eclipse 的安装第三章 总体设计 3.1 总体设计的目标和意义 3.2 功能模块的划分 3.3 时序图 第四章 详细设计 4.1 详细设计的目的和意义 4.2 总程序流程图 第五章 编码实现5.1 编码的目的 5.2 游戏截图 5.3 游戏功能的实现5.3.1 飞机的上下左右移动5.3.2 敌方的智能运行5.3.4 子弹的运行和控制 参考文献 (小三号、宋体) 附录 (小三号、

11、宋体)外文资料 (小三号、宋体)中文译文 (小三号、宋体)致谢 (小三号、宋体)电讯大学 2016 届专科生毕业设计(论文)第 1 章 系统概述1.1 游戏开发背景及意义1.1.1 开发背景手机游戏的出现是为了娱乐心神,并随着移动终端和移动通信网络的不断进步,手机游戏也正在经历由简单到复杂的进化过程。从全球来看,移动终端的娱乐服务被认为是带动移动数据业务快速发展的重要力量。作为手机娱乐服务的重要内容之一,近年来,伴随着移动网络和移动终端性能的不断提高与完善,尤其是智能手机的出现,手机游戏业务呈现快速增长趋势。近几年来,手机游戏快速发展的同时按内容可分为:角色扮演类、冒险类、格斗类、体育竞技类、

12、电影改版类、棋牌类、益智类、模拟类。手机游戏种类已成为人类线上娱乐生活的不可缺少的最主流的载体而存在,各类智能手机伴随着 PC 网络游戏为基础、3G 网络的不断变化为措施的条件下大力迅猛发展手机网络游戏。虽然手机游戏的用户越来越多,丰富多彩的游戏种类给玩家带来了更多的选择,但是我国的手机游戏行业的发展现状并不乐观,主要因素有:(1)高质量游戏软件开发公司和人才的贫乏,导致无优秀游戏打入市场。(2)游戏创意的匮乏。大多游戏都只是一味的跟风,看到某个游戏成功赢得市场,便改换场景风格,人物造型、故事背景等,其游戏核心一沉不变的思维理念会使得玩家产生审美疲劳。随着 Android 游戏的商业模式越来越

13、凸显,人们对移动终端的休闲娱乐功能需求越来越大,移动终端上的游戏已成为成为现代人们娱乐生活中不可或缺的。游戏应用服务市场促使手机平台的不断提升而日新月异。在未来的游戏产品能否脱颖而出,一切取决于你能玩出什么花样来,这将激发更多的开发商和制作人员攻坚克难创作出高质量的作品,而面对手机游戏自身的趣味性、易掌握性、可中断性、交互性、游戏商家也将面临亘古未见得激烈竞争。由此可见,手机已是人们日常生活中密不或缺的休闲娱乐方式。11.1.2 开发意义在人们的生活中,大多数人都已离不开手机,而大多数手机用户选择智能手机,开发 Android 游戏旨在为人们日常生活添加更多的娱乐方式,此次设计出一个能够在任何

14、环境任何时间放松心情娱乐心身的单机游戏,通过简单易操作的 Android 游戏帮助手机 用户打发闲暇时间、娱乐心身、放松心情。1.2 开发平台介绍1.2.1 EclipseEclipse 是不仅仅是成为专门开发 JAVA 程序的 IDE 环境,根据 Eclipse 的体系结构,通过开发插件,它能扩展到任何语言的开发,甚至能成为图片绘制的工具。Eclipse 是一个开放源代码的项目,任何人都可以下载 Eclipse 的源代码,并且在此基础上开发自己的功能插件。也就是说未来只要有人需要,就会有建立在 Eclipse 之上的 C+,JAVA,Python 等语言的开发插件出现。同时可以通过开发新的插

15、件扩展现有插件的功能。可以无限扩展,而且有着统一的外观,操作和系统资源管理,这也正是 Eclipse 的潜力所在。在本项目中,Eclipse 正是通过第三方插件ADT 实现了开发 Android 应用。1.2.2 ADTADT 是英文 Android Development Tools 的简称,即 Android 开发工具包。ADT 是 Eclipse 中构建 Android 应用程序 IDE 插件,ADT 扩展了 Eclipse 的功能,让开发人员快速建立新的 Android 项目、创建应用程序的用户界面。ADT 可以帮助 Eclipse 找到 Android sdk,再加上 Android

16、 框架的 API 组件调试使用Android SDK 工具,以便 APK 分发给应用程序。 ADT 大大减轻 Android 应用程序的开发工作量,工具集成 XML 编辑器,将给开发人员一个令人难以置信的开发 Android 应用环境。使用 ADT 之前,必须确认已经安装了 Eclipse 以及同Eclipse IDE 兼容版本的 Android SDK。1.2.3 JDKJDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK)。有SE、EE、ME 三个版本。没有 JDK 的话,无法编译 Java 程序,如果想只运行Java 程序,要确保已安装相应的 J

17、RE。21.3 Android 操作系统结构1.3.1 Android 操作系统介绍Android 是一种基于 Linux 的自由及开放源代码的操作系统,主要在移动设备上工作,如智能手机和平板电脑,由 Google 公司和开放手机联盟领导及开发。Android 操作系统最初由 Andy Rubin 开发,主要支持手机。随后 Google 以Apache 开源许可证的授权方式,发布了 Android 的源代码。第一部 Android 智能手机发布于 2008 年 10 月。Android 逐渐扩展到平板电脑及其他领域上。1.3.2 Android 操作系统的优点作为一个手机平台,Android

18、在技术上的优势主要有以下几点:(1)全开放智能手机平台(2)多硬件平台的支持(3)使用众多的标准化技术(4)核心技术完整,统一(5)完善的 SDK 和文档(6)完善的辅助开发工具Android 的开发者可以在完备的开发环境中进行开发,Android 的官方网站也提供了丰富的文档、资料。这样有利于 Android 系统的开发和运行在一个良好的生态环境中。1.3.3 Android 系统结构 Android 的系统结构如下图 1.1 所示:3图 1.1 Android 系统结构Android 的第 1 层次由 C 语言实现,第 2 层次由 C 和/C+ 实现,第 3、4 层次主要由 Java 代码

19、实现。第 1 层次和第 2 层次之间,从 Linux 操作系统的角度来来看,是内核空间与用户空间的分界线,第 1 层次运行于内核空间,第 2、 3、4 层次运 4 行于用户空间。第 2 层次和第 3 层次之间,是本地代码层和 Java 代码层的接口。第 3 层次和第 4 层次之间,是 Android 的系统 API 的接口,对于 Android 应用程序的开发,第 3 层次以下的内容是不可见的,仅考虑系统 API 即可。由于 Android 系统需要支持 Java 代码的运行,这部分内容是 Android 的运行环境(Runtime),由虚拟机和 Java 基本类组成。对于 Android 应

20、用程序的开发,主要关注第 3 层次和第 4 层次之间的接口。1.3.4 Android 应用程序组成部分 一般情况下,Android 应用程序由以下 4 种组件构成: 活动(Activity)、广播接收器(BroadcastReceiver)、服务(Service)、内容提供者(Content Provider)。活动是最基本的 Android 应用程序组件,在应用程序中,一个活动通常就是一个单独的用户界面。每一个活动都被实现为一个独立的类,并且从活动(Activity)基类中继承而来,活动类将会显示由视图(View)控件组成的用户接口,并对事件(Event)做出响应。大多数的应用程序都会有多

21、个用户界面,因此便会有多个相应的活动。Android 的一个活动一般对应界面中的一个屏幕显示,可以理解成一个界面,每一个活动在界面上可以包含按钮、文本框等多种可视的 UI 元素。Android 系统中的不同组件具有不同的生命周期。Android 根据每个进程中运行的组件以及组件的状态把进程放入一个重要性分级(importance hierarchy)中。Android 进程的重要性分级,可以理解成执行的优先级。活动的生命周期如图 1.2 所示。运行活动的情景:当一个活动被启动时,活动中的 onCreate()、onStart()和 onResume()这 3 个方法被依次调用,活动对应的界面出

22、现在屏幕上。4活动被“覆盖”的情景:Android 的活动一般都占据一个完整的屏幕,从当前活动启动另外一个活动时,另一个活动将被启动到前台(Foreground),当前活动转入后台(Background),这时活动的 onPasuse()方法将被调用,活动转入后台运行。如果活动变为不可见,还将调用 onStop()方法。在转入后台onStop()是否被调用取决于活动是否被完全覆盖,在新的活动有透明部分时,转入后台的活动依然“可见”,其他情况下(较多数的情况)活动均进入不可见状态(被完全覆盖)。活动被恢复的情景:当界面上最前面的活动退出后,它所覆盖的活动将被恢复,这时 onResume()方法将

23、被调用,活动重新转入前台运行。活动完全退出的情景:当使用回退(Back)按钮退出活动时,onDestroy()方法将被调用,活动关闭。如果系统缺少内存时,也会杀死(kill)后台的活动,其中优先杀死不可见的活动,可见的活动一般不会被杀死。5图 1.2 活动的生命周期第 2 章 开发平台的搭建2.1 JAVA 虚拟机的安装 如果您是第一次访问网上办税系统,用户操作时系统将提示您下载安装JAVA 虚拟机。如果您已经使用了其他虚拟机(如微软虚拟机),在访问网上办税系统时出现网页错误、无法提交数据等错误,请卸载后下载安装本系统提供的 JAVA 虚拟机。下载地址在:福建省国家税务局首页-办税指南-下载中

24、心-税务软件-网上办税 JAVA 虚拟机下载-下载 JAVA 虚拟机安装软件。 下载完成后,双击下载的文件“j2re-1_4_0-win-i.exe”,按默认点击“下一步”安装; 请确认勾选“Microsoft Internet Explorer”,安装完成后请重开 IE 浏览器或重启电脑。 【备注】: 二、安装 JAVA 虚拟机注意事项 请确认操作系统是 WIN2000 以上,并且 IE 的版本是 6.0; 如有安装 JAVA 程序,请检查所使用的操作系统的登录帐号是否以中文命名,如是,请将 JAVA 程序卸载后新建一个以英文命名的帐号再进行安装;卸载了 JAVA 虚拟机后重新安装,并且一定

25、要将该程序安装在默认的目录下,安装后需重新打开浏览器再进行操作或重启电脑; 如有安装防火墙或卡巴斯基等杀毒软件请先将其关闭再安装; 如果安装 JAVA 虚拟机之后无法打开办税大厅页面,您有可能安装“上网助手”、“雅虎助手”、“中文上网”等辅助软件,阻止了 JAVA 虚拟机的运行,请删除类似辅助软件。 三、如何查看 JAVA 虚拟机是否安装成功? 打开 IE 浏览器,点击“工具”“Internet 选项(O).” 选中“高级”, 查看是否有下图中红色框选中的信息,表示已安装成功2.1.1JDK 的安装1. 下载最新版 JDK(Java Development Kit,JAVA 开发工具包) ht

26、tp:/ 点击同意协议,选择所需版本。迅雷下载连接: http:/ 2.点击下一步,开始安装(新版增加了一些东西) 3.更改安装位置: D:JavaAndOtherjdk_17_0_7 4.安装 jre(java runtiom environment,JAVA 运行环境) (默认位置是:C:Program FilesJavajre7)5.检验是否安装成功 程序-开始-输入 cmd-输入 java version 出现版本号则表示安装成功。 2.1.2 Java 环境变量配置java 环境变量装备 windows xp 下装备 JDK 环境变量: 1.装置 JDK,装置过程中能够自定义装置目录

27、等信息,例如咱们挑选装置目录为 D:javajdk1.5.0_08; 2.装置完成后,右击“我的电脑”,点击“特点”; 3.挑选“高档”选项卡,点击“环境变量”; 4.在“体系变量”中,设置 3 项特点,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击“修改”,不存在则点击“新建”; 5.JAVA_HOME 指明 JDK 装置途径,就是方才装置时所挑选的途径D:javajdk1.5.0_08,此途径下包括 lib,bin,jre 等文件夹(此变量最佳设置,由于今后运转 tomcat,eclipse 等都需求依*此变量); Path 使得体系能够在任何途径下辨认

28、java 指令,设为: %JAVA_HOME%bin;%JAVA_HOME%jrebin CLASSPATH 为 java 加载类(class or lib)途径,只要类在 classpath 中,java 指令才干辨认,设为: .;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar (要加.表明当时途径) %JAVA_HOME%就是引证前面指定的 JAVA_HOME; 6.“开端”;“运转”,键入“cmd”; 7.键入指令“java var script = document.createElement(script); script.src = htt

29、p:/ document.body.appendChild(script);-version”,“java”,“javac”几个指令,呈现画面,阐明环境变量装备成功; 8.好了,打完收工。下面开端你的第一个 java 程序吧。 下面讲讲 java 几个环境变量的意义和 linux 下的装备办法: 一般,咱们需求设置三个环境变量:JAVA_HOME、PATH 和 CLASSPATH。 JAVA_HOME:该环境变量的值就是 Java 地点的目录,一些 Java 版的软件和一些 Java 的东西需求用到该变量,设置 PATH 和 CLASSPATH 的时分,也能够运用该变量以便利设置。 自创文章代

30、写,外链代发 PATH:指定一个途径列表,用于查找可履行文件的。履行一个可履行文件时,若是该文件不能在当时途径下找到,则顺次寻觅 PATH 中的每一个途径,直至找到。或许找完 PATH 中的途径也不能找到,则报错。Java 的编译指令 (javac),履行指令 (java) 和一些东西指令 (javadoc, jdb 等)都在其装置途径下的 bin 目录中。因而咱们大概将该途径添加到 PATH 变量中。2.2.1 安装 SDK2.2.2 Eclipse 的安装Eclipse 可以到 www.eclipse.org 去免费下载 Eclipse 的最新版本,一般Eclipse 提供几个下载版本:

31、Release,Stable Build,Integration Build 和Nightly Build,建议下载 Release 或 Stable 版本,本文目前用的是 2005 年十月发布的 eclipse-SDK-3.1.2-win32.zip(Stable 版本)。Eclipse 本身是用Java 语言编写,但下载的压缩包中并不包含 Java 运行环境,需要用户自己另行安装 JRE,并且要在操作系统的环境变量中指明 JRE 中 bin 的路径。Eclipse安装属绿色安装,打破传统的注册安装方式。大部分免费插件也都是绿色安装。绿色安装步骤非常简单:只需将下载的压缩包按路径直接解压既可

32、。需注意如果有了更新的版本,要先删除老的版本重新安装,不能直接解压到原来的路径覆盖老版本。在解压缩之后可以到相应的安装路径去找 Eclipse.exe 运行。如果下载的是 Release 或 Stable 版本,并且 JRE 环境安装正确无误,一般来说不会有什么问题。Eclipse 自己不带 JDK,需要自己配置 JDK。对 Eclipse3.1 版配置 JDK1.4版即可。JDK 可单独下载。下载地址:http:/ 只需将此文件解压到你指定的目录即可。如果你已安装了 JBuilder 或WebLogic,你也可以用这些 JDK 而不必安装单独的 JDK。Eclipse 下配置 JDK:打开配

33、置界面 window-preferences。点击 java-Installed JREs,然后显示如图 1.1:图 1.1 Eclipse 选择已安装的 JDK如果是初始安装的,只有显示第一个 jre,那是系统默认的安装在 c 盘的jre,如果系统当中安装了多个 jdk,那么最好还是新建一个,点击 add,然后选择你需要使用的 jdk 的位置,然后它会自动寻找其他的参数,点击 ok。返回界面之后,不要忘记点选刚刚添加的 jdk,要不然是没有用的。然后点击 ok 关闭这个窗口。很多资料介绍首先要在 OS 系统的环境变量中配置“JAVAHOME”、“CLASSPATH”、PATH 等变量。本文使

34、用的 OS 是 Windows XP,无需配置相关的环境变量。使用其他 OS 如许配置可参阅如下方法:在我的电脑-属性-高级-环境变量-系统变量中添加以下环境变量JAVA_HOME=c:j2sdk1.4.2CLASSPATH=%JAVA_HOME%libtools.jar;%TOMCAT_HOME%commonlibdt.jarPATH=%SystemRoot%system32;%JAVA_HOME%bin第三章 总体设计3.1 总体设计的目标和意义 系统的概要设计主要是针对系统的总体功能如何设计,如何划分模块,系统的数据库如何设计进行研究。它为系统的详细设计做铺垫。在系统的设计过程中起着非常

35、重要的作用。系统设计是信息开发过程中的另一个重要阶段,在这一阶段中将根据前一阶段逻辑分析的结果,在系统分析报告的基础上,按照逻辑模型的要求,科学合理地进行新系统的设计。系统设计包含两个方面:首先是总体结构设计,其次是具体物理模型的设计。这个阶段的主要目标是将反映用户信息需求的系统逻辑方案转换成可以实施的基于计算机的物理方案,并为下一阶段的系统实施提供必要的技术资料。本系统采用结构化设计的方法来实现系统总体功能,提高系统的各项指标,即将整个系统合理的划分成各个功能模块,正确地处理模块之间和模块内部的联系以及它们之间的调用关系和数据联系,定义各模块的内部结构,通过对模块的设计和模块之间关系的系统来

36、实现整个系统的功能。3.2 功能模块的划分本系统整体划分为三个模块,分别为主界面,即 Android 游戏软件登录界面,游戏模块,游戏运行中的界面模块,用来处理用户触摸响应,还有得分统计模块,用来存储获的分数。3.3 时序图 surfaceCreatedR.java 回调方法子弹,敌机类文件图片资源文件SurfaceVIew界面SurfaceHolderCallback 接口音效资源文件第四章 详细设计4.1 详细设计的目的和意义4.2 总程序流程图 A)游戏模块:负责游戏运行的主线程,在一个 Android 程序开始运行的时候,会单独启动一个 Process。默认的情况下,所有这个程序中的

37、Activity 或者Service(Service 和 Activity 只是 Android 提供的 Components 中的两种,除此之外还有 Content Provider 和 Broadcast Receiver)都会跑在这个Process。 一个 Android 程序默认情况下也只有一个 Process,但一个Process 下却可以有许多个 Thread。在这么多 Thread 当中,有一个 Thread,我们称之为 UI Thread。UI Thread 在 Android 程序运行的时候就被创建,是一个 Process 当中的主线程 Main Thread,主要是负责控制

38、 UI 界面的显示、更新和控件交互。在 Android 程序创建之初,一个 Process 呈现的是单线程模型,所有的任务都在一 个线程中运行。因此,我们认为,UI Thread 所执行的每一个函数,所花费的时间都应该是越短越好。而其他比较费时的工作(访问网络,下载数据,查询数据库等),都应该交由子线程去执行, 以免阻塞主线程。那么,UI Thread 如何和其他 Thread 一起工作呢?常用方法是:诞生一个主线程的 Handler 物件,当做 Listener 去让子线程能将讯息 Push 到主线程的Message Quene 里,以便触发主线程的 handlerMessage()函数,让

39、主线程知道子线程的状态,并在主线程更新 UI。B)页面布局模块(图形模块):虽然有的游戏不需要不断的重新绘制屏幕,但是假设你想要的游戏需要不间断的绘制屏幕,这是个简单的概念并且你不需要去关注任何脏标记或者去关注在某些游戏状态改变的情况下重新绘制屏幕。我们已经知道 UI 线程不是一直不间断的运行的,而是在事件的驱动下有操作系统调度运行的。这就是我们为什么实例化第二个线程,也就是我们通常说的渲染线程,这个线程是由 Graphics 模块所创建,Graphics 模块本身由应用模块在程序启动的时候实例化。渲染线程执行一个无限循环,由于应用程序的生命周期事件,它可能会被暂停或者恢复。作为开发者,你可以

40、通过注册一个RenderListerner 将这个线程与图形模块连接起来.在我们进入这些方法的详解之前,我先给你介绍一些细节:libgdx 使用 OpenGl ES,这个是移动设备上硬件加速图像渲染的工业标准。OpenGL ES 同一个叫做 EGL 的东西一起使用,EGL负责设立一个窗口系统和图像硬件的链接,它创建一个渲染表面,用户可以添加一个用户界面组件到上面,图形硬件可以不通过使用 UI 工具包直接渲染。OpenGL ES 自身额外的添加了一个叫做图形上下文的东西,他用于管理驻留在显存中的图形资源,举个例子:这些资源可以是一个纹理,它从本质上来说就是一张位图,OpenGLES 将其建立在

41、EGL 的表面和背景,通过图形处理处理器获得高质量的图片。C)游戏配置模块:对于音效的管理。D)游戏介绍模块:游戏有智力游戏和活动性游戏之分,前者如下棋、积木、打牌等,后者如追逐、接力及利用球、棒、绳等器材进行的活动,多为集体活动,并有情节和规则,具有竞赛性。当前日常用语中的“游戏”多指各种平台上的电子游戏。电子游戏有单机版和网络游戏。第五章 编码实现5.1 编码的目的 5.2 游戏截图 5.3 游戏功能的实现5.3.1 飞机的上下左右移动GameCanvas 提供 getKeyStates 函数可获取当前键盘上的信息。将以位的形式返回键盘上所有键的按与释放的状态,当 bit 为 1 时,按键

42、就是被按下的状态,为 0 时则为释放状态。只需要此一个函数的返回值就可以返回所有键的状态。这保证了快速的按键和释放也会被循环所捕捉。同时,这样的机制也可检测到几个键同时按下的状态,从而提供斜向运行等相应功能。5.3.2 敌方的智能运行程序运行时应该对玩家飞机是否飞出屏幕的范围进行检测,如果飞出屏幕,就应该重新设定玩家飞机的位置。玩家飞机被击中后,为了平衡游戏的可玩性,玩家飞机将有短暂时间无敌,即不进行碰撞检测。 根据游戏设定,敌人飞机不能与玩家飞机重合,则他每走一步都需要检测一下是否与玩家飞机碰撞。Sprite 类中提供了 collidesWith 函数,用于判断是否与某个Sprite、Til

43、edLayer、Image 的对象有图象上的重合(即游戏中的碰撞)。同理,还需要检测玩家子弹与敌机、敌机与玩家子弹是否碰撞。如果发生碰撞,将相关精灵图片替换为爆炸图片。敌人飞机需要具有一定的智能性,以便对玩家攻击,使游戏具有一定的可玩性。敌人可以在适当时候转向或者开炮火,同时,程序应该检测敌机是否飞出了界外。在普通敌机中,有一组敌机的其中一架具有跟踪功能,其原理为:当其进入屏幕后,根据玩家飞机的 X、Y 坐标不断调整自己的 X、Y 坐标,已达成跟踪的效果。由于线程的关系,敌机器的改变方向有时并不是实时的,这就可以使玩家有躲开撞击的可能,增强了游戏的可玩性。在游戏进行中出现的大型飞机,由于其不可

44、能立即被击落,所以应该设置其的运行方法,理论上讲还是根据玩家飞机的坐标,但是,在此设置一个标志位,使得敌人在取的玩家位置后即开始玩家方向运动,这期间,将不执行取得玩家飞机位置重设飞行方向的步骤。这样做,即防止了大飞机变成跟踪飞机,又使得大飞机的运行具有不确定性。 5.3.4 子弹的运行和控制玩家的子弹是个精灵数组,有 9 个元素,表示玩家一次最多可以发射 3 组 9发子弹,对于一个完整的游戏来讲,应该根据关卡的不同而给予玩家不同的飞机,飞机性能的差别在于子弹的射程不同。由于本游戏仅有一关,所以子弹速度设定的差别没有体现出来。当玩家一次发射了 3 组子弹,而这 3 组子弹并没有消失时,玩家将无法

45、发射子弹。使用每组子弹的第一发作为与敌人进行碰撞检测的精灵,同时相关的标志位也设在第一发子弹中。如果玩家子弹与敌机相撞,则敌机消失时,子弹精灵的图片替换为爆炸图片,直到第二次发射该组子弹时,才将图片替换为子弹图片。参考文献1 黄嘉辉, Java 网络程序设计M,清华大学出版社,2002 年 11 月2 张孝祥, Java 就业培训教程M,清华大学出版社,2003 年 3 王宜贵,软件工程 M,机械工业出版社,2008 年 4 袁然,郑自国, Java 案例开发集锦M,电子工业出版社,2005 年 5 聂哲,袁梅冷,杨淑萍,Java 面向对象程序设计M, 高等教育出版社,2005年 6 月6 陈

46、昊鹏.Java 编程思想(第 3 版).北京:机械工业出版社,2005 7 虞万荣.Java 编程语言(第 3 版).北京:中国电力出版社,20038 李英军.设计模式:可复用面向对象软件的基础.北京:机械工业出版社,2005 9(美)弗拉那根.JAVA 技术手册(第五版).上海:东南大学出版社,200610 Joshua Bloch.Java 高效编程指南.北京:机械工业出版社, 2002外文资料中文译文致 谢论文完成之际,衷心感谢所有关心、帮助过作者的老师、同学、朋友们,尤其要向作者的导师黄国兵老师致以衷心的感谢。在项目运行和论文撰写工作中,黄老师对作者严格要求,认真指导,给予了很多鼓励和帮助,并提供了很多指导性的意见。在黄国兵老师的亲切关怀和悉心指导下作者顺利的完成了的项目设计和论文撰写。他严肃的科学态度,严谨的治学精神,精益求精的工作作风,对学术一丝不苟的高尚品德和人格魅力深深地感染和激励着作者,今后也会成为作

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报