资源预览内容
第1页 / 共74页
第2页 / 共74页
第3页 / 共74页
第4页 / 共74页
第5页 / 共74页
亲,该文档总共74页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
基于Java的飞机大战游戏的设计与实现摘 要现如今,随着智能手机的兴起与普及,加上4G(the 4th Generation mobile communication,第四代移动通信技术)网络的深入,越来越多的IT行业开始向手机行业转移重心。而手机行业中游戏方面的利润所占比重较大,并且手机游戏大多数则是由Java语言开发研制的。所以我想顺应时代发展,用学到的Java知识对游戏进行一次深入的了解与创作。Java语言在我们大学学习中占了很大的比重,其优点甚多:面向对象,可靠,安全,多平台可移植,高性能,多线程等。面向对象是相对于c语言的面向过程来说的,在面向对象编程中,我们用Java去新建一个对象,调用其方法就能实现我们的目标,并不需要了解这个对象的方法的具体实现过程;Java的可靠安全特点体现Java不支持指针,禁止第三方访问,杜绝了外部风险。所以使用Java开发游戏,是一个正确的选择。大学学习即将结束,在毕业之际,我想用我4年里学习的知识为自己编写一个属于自己的游戏飞机大战游戏,为我的大学生活画上圆满的句号。关键词:Java游戏;面向对象;可靠安全;多线程Design And Implementation Of Airplane Wargame Based On JavaAbstractNowadays, with the emergence and popularization of smart phones, plus 4 g (the 4 th Generation mobile communication, the fourth Generation mobile communication technology) the development of the Internet, more and more in the IT industry began to shift to the mobile phone industry center of gravity. Aspect of the game of the mobile phone industry profits account for a large proportion, and most mobile game is developed by Java language. So I want to keep up with the development of The Times, use Java knowledge for an in-depth understanding of the game and creation.Java language learning in our universities accounted for a large proportion of its many advantages: Object-oriented, reliable, secure, multi-platform portable, high-performance, multi-threading. Object-oriented process-oriented with respect to the terms of the c language, object-oriented programming, specifically we use Java to create a new object, call its methods will be able to achieve our goal, we do not need to know the objects method of implementation ; reliable safety features reflect Java Java does not support pointers to prohibit third-party access, to eliminate the external risk. Therefore, the use of Java development aircraft war game, is the right choice.University coming to an end, on the occasion of the graduation, I want to use my four years studying knowledge and made themselves a game of their own - Aircraft war game for my college life painting satisfactory conclusion.Keywords: Java game; object oriented; reliable and secure; multi thread目 录1 引言11.1 项目背景11. 2 国内外研究现状31.3 项目主要工作41.4 本文组织结构62 开发平台与开发技术72. 1 IntelliJ IDEA简介7 2. 2 IntelliJ IDEA与Eclipse 、MyEclipse的比较82. 3 Java103 可行性研究133. 1 技术可行性133. 2 经济可行性133. 3 操作可行性143. 4 用户使用可行性143. 5 法律可行性144 需求分析154. 1 系统需求概述164. 2 功能模块设计174.2.1 游戏状态控制功能模块174.2.2 游戏难度的调整模块174.2.3 游戏界面绘画功能模块174.2.4 玩家游戏控制功能模块174. 3 游戏难点分析184.3.1 绘图美化184.3.2 多线程技术的实现184.3.3 防碰撞问题的解决184.3.4 动画的实现185 飞机大战功能实现195.1 模型图195.2 软件功能模块195.3 游戏首页的实现205.3.1 界面实现205.3.2 流程图215.3.3 核心代码225.4 游戏开始模块的实现245.4.1 界面实现245.4.2 流程图255.4.3 核心代码255.5 发射子弹模块的实现275.5.1 界面实现275.5.2 流程图285.5.3 核心代码295.6 积分模块的实现335.6.1 界面的实现335.6.2 核心代码345.7 防碰撞逻辑375.7.1 核心代码375.8 游戏操作的实现395.8.1 核心代码395.9 特殊NPC蜜蜂416 系统测试426.1 测试的定义及其重要性436.1.1 测试的定义436.1.2 测试的重要性446.2 测试方法466.3 测试结果507 结论51参考文献52致谢54外文文献55中文翻译631 引言1.1 项目背景90后的我们,童年最开始接触电子游戏是在游戏厅,那时候的飞机大战游戏机前,往往人山人海,绚丽多彩的画面,带感操作让人沉醉不能自拔。再后来,珍珠港(Pearl Harbor),虎虎虎(Tora! Tora! Tora!)等空战电影中激烈的空战和飞机在天空中的英姿让我彻底爱上了空战,所以毕业设计我选择了与飞机战斗有关基于Java的飞机大战游戏的设计与实现的毕业设计。而选基于Java的飞机大战游戏的设计与实现为题,是对大学期间学到知识的一次实践运用,也是对自己大学四年学习成果的一次检验。柏拉图:“游戏是一切幼子生活和能力跳跃需要而产生的有意识的模拟活动。”亚里士多德给游戏的定义是:“游戏是劳作后的休息和消遣,本身并带有任何目的性的一种行为活动。”可以说,游戏是一种一直存在的社会现象,有了人类就有了游戏,人类与游戏息息相关。游戏也随着人类的进步有了新的发展。PC机刚开始普及的时候,游戏并不能被广泛接受。最主要的原因就是不能充分发挥PC机的性能,即游戏程序不能最大化使用PC机的硬件资源,导致PC机的早起游戏画面差,操作感僵硬,可玩度不高,所以不被人们所接受。但是随着切硅的技术的提升导致CPU性能的飞跃及Java语言的开发,游戏程序对硬件资源的利用率的提高,现在游戏的各个方面都有了质的飞跃。比如20世纪末,暴雪公司下的星际争霸1掀起全球星际流,其操作感和画面打击感及游戏可玩性都有很大的提升。当然,除了游戏本身的优秀质量以外,可以较广的支持不同的硬件设备的功能也不容忽视,高中低端PC机都有不错的流畅度。而飞机大战类游戏中起步较早的还要数由日本公司Cyber Front研制并发行的雷电系列,该系列操作简单,节奏明快,因此,可以说成是飞机大战游戏类的经典之作。该系列下的雷电3在2016年中旬从PS2平台移植到PC机平台上后,更成为当时风靡一时的游戏。雷电3一共有8个关卡,分别是病变的森林,玄武岩城市。岩石港湾,金色的沙漠,原子核工厂,小行星带,大型宇宙舰和地方总部。雷电3的关卡不多,而且流程比较短,所以主要还是以刷新分数上限,挑战操作极限的目的为主,考验玩家的手速和反应能力,是一款极为经典的游戏,即使过去了十几年,雷电3仍然广受欢迎,各大应用商店的点击下载量还是很高,衍生出来的游戏更是数不胜数。1.2 国内外研究现状Java语言经过多年的发展,已经十分成熟。Java语言称霸企业级应用这门多年的事实证明了这门语言适合开发各种项目。当Java语言的运行效率随着发展再次提升了一大截后,Java语言的一系列优势就更加明显的体现出来了,比如:语言严谨,高抽象,可读性强等。对于游戏开发,由于涉及到各种复杂的问题情况,经常遇到新的问题,所以在开发过程中,需要进行对代码进行不断的修改添加,这就需要可以随时随地的修改代码。而Java具有虚拟机特性,Java游戏本身也可以用Java来写,例如,目前的BeanShell,Groovy和其他脚本语言可以很容易地,无缝地与Java语言的互动,我们可以通过脚本随时对游戏进行添加与删除,不必要重新开发某个模块。这是大大方便了Java游戏编程。在游戏的发展中涉及到了大量的Java技术,某些技术现在已经淘汰,但是也有些技术一直在使用。如Sun公司较早推出了3D技术- Java3D,是一个高度封装的API,OpenGL和Direct 3D都是基于Java3D的,可以说是最有名的3D Java技术;Jogl函数则是opengl接口对Java的实现;lwjgl函数(light weight Java game library)是将游戏图形(opengl)、音效(openal)、控制输入集合为一,以成为Java界的directx(不是direct3d)而努力;joal函数则是Java对openal的一个绑定,是Java音效的一个解决方案;jinput函数是Java对非标准输入设备(游戏手柄,操纵杆)的解决方案;Project Wonderland是Sun开发的一个3d虚拟世界构建工具等。由于VR(Virtual Reality)虚拟现实的发展,对游戏的发展影响巨大。科幻电影小说中的科幻游戏玩法有可能成为现实,未来游戏也许不需要鼠标键盘,只需要一个类似VRBox的头盔设备即可完成指令的输入与输出。1.3 项目主要工作本次项目的题目基于Java的飞
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号