基于Java的愤怒的小鸟游戏的设计与实现.docx
《基于Java的愤怒的小鸟游戏的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于Java的愤怒的小鸟游戏的设计与实现.docx(82页珍藏版)》请在冰豆网上搜索。
毕业设计(论文)
论文题目 基于Java的愤怒的小鸟游戏的设计与实现
ThesisTopic
DesignandimplementationofangrybirdsgamebasedonJava
20XX年X月XX日
第3页
毕业设计(论文)任务 书
第1页
毕业设计(论文)题目:
基于Java的愤怒的小鸟游戏的设计与实现
毕业设计(论文)要求及原始数据(资料):
1.综述国内外物体碰撞、滚动、滑动和弹跳功能技术研究现状;2.深入了解Javaawt相关技术;
3.熟练掌握Javaawt的应用与分析,训练编写GUI的能力;
4.设计并实现愤怒的小鸟中针对物理碰撞效果的实现;
5.深入分析愤怒的小鸟中jbox2D物理引擎的关键技术与编写语言;
6.训练检索文献资料和利用文献资料的能力;
7.训练撰写技术文档与学位论文的能力。
毕业设计(论文)主要内容:
1.综述Javaawt在愤怒的小鸟游戏开发中的应用;
2.了解jbox2D物理引擎的相关技术;
3.熟悉Javaawt以及jbox2D物理引擎的开发环境;
4.设计Javaawt中针对外部输入对应在游戏中效果的体现;
5.深入分析Javaawt和jbox2D关键技术与编写语言Java的设计流程;6.熟练掌握基于java的愤怒的小鸟的游戏功能编写;
7.设计与实现愤怒的小鸟游戏功能处理程序。
学生应交出的设计文件(论文):
1.内容完整、层次清晰、叙述流畅、排版规范的毕业设计论文;
2.包括毕业设计论文、源程序等内容在内的毕业设计电子文档及其它相关材料。
日期
要求设计(论文)工作起止日期
指导教师签字
主要参考文献(资料):
[1]基于Box2D物理引擎的刚体运动和碰撞模拟[J].奚焱. 电脑编程技维护.2011(24)
巧与
[2]基于物理引擎三维物理仿真实验的实现方法[J].田超,张文俊,张小凤,刘东平. 微
型电脑应用.2010(02)
[3]虚拟现实环境中的物理模拟及物理引擎应用的研究[J].陈定方. 湖北工业大学学报.2008(02)
[4]游戏音效在物理引擎中的运用[J].魏婷,郑豪. 福建电脑.2008(01)
[5]探析JAVASwing工具包在图形用户界面设计中的应用[J].苏碧霞. 信息与电脑(理论版).2013(05)
[6]Swing可视化组件多线程操作机制研究[J].胡家芬. 电脑知识与技术.2012(31)
[7]一种Swing组件的动态国际化解决方案[J].肖荣. 软件导刊.2009(10)
[8]使用JavaSwing组件进行事件处理方法的分析与比较[J].张海越,范曦. 软件导刊.2013(06)
[9]BeginningJavaObjectsJacquieBarker2005-
[10]AportableAWT/SwingarchitectureforJavagamedevelopmentYi‐
HsienWangSoftw:
Pract.Exper.2007(07)
[11]Objectiveviewpoint:
JavaAWTlayoutmanagement101GeorgeCrawfordCrossroads1998(01)
专业班级
学生
教研室主任审查签字
日期
系主任批准签字
日期
基于Java的愤怒的小鸟游戏的设计与实现
摘要
Java语言是一门面向对象的编程语言,它不但汲取了C++语言的各种精髓,而且还抛弃了C++语言里晦涩难懂的多继承和指针等概念,所以Java语言具有的特征便是:
功能超强和易用实用。
Jbox2D中不仅集成了大量物理运动学和机械运动学计算,而且也将物理仿真包集成到类对象中,同时对象也应用在开发人员与用户的交互界面中。
所以我们只需要调用对象或者使用相应的功能,就可以模拟出现实生活中的速度、加速度、抛物线运动、重力、碰撞、反弹等各种各样真实的物理运动。
愤怒的小鸟游戏的视角是横向版本的水平视角。
背景是为了报复偷鸡蛋的猪,鸟将自己的身体作为武器,就像炮弹一样从弹弓上发射而出,撞向绿猪搭建的堡垒,以达到摧毁绿猪的目的。
游戏非常简单,小鸟跳上弹弓,发射角度和强度的改变导致小鸟的落点的不同,玩家需要良好的整体计算,适当的调节强度和角度,从而更准确地击中绿猪。
每次击中绿猪,便可获得一定的分数,积累足够的分数便可以通关,游戏设计的体现了放松的情调,乐观的风格。
本文将介绍使用Java语言实现经典的益智类游戏作品“愤怒的小鸟”的开发。
游戏将主要实现以下几个功能:
游戏玩法功能、页面管理功能、难度和级别功能、碰撞功能、鸟类管理功能、玩家管理功能和备份功能等。
此游戏不仅可以给玩家带来欢乐,也会使玩家对开发游戏产生极大地兴趣,让玩家切身体会到Java语言在生活方面的无处不在。
关键词Java;C++;Jbox2D;物理运动;愤怒的小鸟
ii
DesignandimplementationofangrybirdsgamebasedonJava
Abstract
Javalanguageisanobject-orientedprogramminglanguage,itnotonlydrawstheessenceoftheC++language,butalsoabandonedtheC++languageobscuremulti-inheritanceandpointerconcepts,sotheJavalanguagehasthefollowingcharacteristics:
Superandeasytousepractical.
Jbox2Dnotonlyintegratesalargenumberofphysicalkinematicsandmechanicalkinematicscalculations,butalsothephysicalsimulationpackageintotheclassobject,whiletheobjectisalsousedinthedeveloperanduserinterface.Soweonlyneedtocalltheobjectorusetheappropriatefunction,youcansimulatereallifeinthespeed,acceleration,parabolicmovement,gravity,collision,reboundandotherrealphysicalmovement.
Thetypeofgameishorizontalhorizontalviewoftheversion.Thebackgroundistoretaliatetostealtheeggsofthepig,thebirdswillbetheirownbodyasaweapon,likeshellsfromtheslingshotthrownintothegreenpigfortress.Thegameisverysimple,thebirdsontheslingshot,theangleofthepop-upandstrengthbytheplayer'sfingercontrol,payattentiontoagoodoverallcalculation,theappropriateadjustmentofstrengthandangle,andthusmoreaccuratelyhitthepig.Eachtimehitmoregreenpigs,willgetalotofscores,thegamestyleisfulloffunandhumor,thegamedesignreflectstherelaxedatmosphere,optimisticstyle.
ThisarticlewillintroducetheuseofJavalanguagetoachievetheclassicpuzzlegame"angrybird"development.Thegamewillmainlyachievethefollowingfunctions:
gameplayfunction,pagemanagementfunctions,difficultyandlevelfunction,collisionfunction,birdmanagementfunction,playermanagementfunctionandbackupfunction.Thisprogramisintendedtostimulatetheuseofthegametostimulatetheuseofplayersandlearninginterest,sothatplayersexperiencetheJavalanguageinthelifeofcountless.
Keywords:
Java;C++;Jbox2D;Physicalmovement;angrybirds
目录
摘要 i
Abstract ii
1绪论 1
1.1游戏开发的背景 1
1.2典型的Java游戏介绍 1
1.2.1Minecraft介绍 1
1.2.2SuperMarioBros介绍 2
1.2.3TheSims介绍 3
1.3游戏开发的意义 3
2开发环境 4
2.1开发语言 4
2.2开发工具 5
2.3JDK介绍 5
2.4JavaAwt介绍 6
2.5JavaSwing介绍 7
2.6Java语言开发平台搭建 9
3系统需求分析 11
3.1可行性分析 11
3.1.1技术可行性 11
3.1.2经济可行性 11
3.1.3操作可行性 11
3.1.4发展可行性 12
3.2性能需求分析 12
3.3功能需求分析 12
3.4系统UML分析 13
3.5界面需求分析 14
4系统设计 16
4.1系统流程设计 16
4.2系统架构设计 17
5详细设计 20
5.1主界面实现 20
5.2游戏玩