基于C++语言编程格斗游戏毕业设计.docx

上传人:b****6 文档编号:8441989 上传时间:2023-01-31 格式:DOCX 页数:31 大小:811.88KB
下载 相关 举报
基于C++语言编程格斗游戏毕业设计.docx_第1页
第1页 / 共31页
基于C++语言编程格斗游戏毕业设计.docx_第2页
第2页 / 共31页
基于C++语言编程格斗游戏毕业设计.docx_第3页
第3页 / 共31页
基于C++语言编程格斗游戏毕业设计.docx_第4页
第4页 / 共31页
基于C++语言编程格斗游戏毕业设计.docx_第5页
第5页 / 共31页
点击查看更多>>
下载资源
资源描述

基于C++语言编程格斗游戏毕业设计.docx

《基于C++语言编程格斗游戏毕业设计.docx》由会员分享,可在线阅读,更多相关《基于C++语言编程格斗游戏毕业设计.docx(31页珍藏版)》请在冰豆网上搜索。

基于C++语言编程格斗游戏毕业设计.docx

基于C++语言编程格斗游戏毕业设计

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:

所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。

尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。

对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:

     日 期:

     

指导教师签名:

     日  期:

     

使用授权说明

本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:

按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:

     日 期:

     

学位论文原创性声明

本人郑重声明:

所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。

除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。

对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

本人完全意识到本声明的法律后果由本人承担。

作者签名:

日期:

年月日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。

本人授权    大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名:

日期:

年月日

导师签名:

日期:

年月日

注意事项

1.设计(论文)的内容包括:

1)封面(按教务处制定的标准封面格式制作)

2)原创性声明

3)中文摘要(300字左右)、关键词

4)外文摘要、关键词

5)目次页(附件不统一编入)

6)论文主体部分:

引言(或绪论)、正文、结论

7)参考文献

8)致谢

9)附录(对论文支持必要时)

2.论文字数要求:

理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。

3.附件包括:

任务书、开题报告、外文译文、译文原文(复印件)。

4.文字、图表要求:

1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写

2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。

图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画

3)毕业论文须用A4单面打印,论文50页以上的双面打印

4)图表应绘制于无格子的页面上

5)软件工程类课题应有程序清单,并提供电子文档

5.装订顺序

1)设计(论文)

2)附件:

按照任务书、开题报告、外文译文、译文原文(复印件)次序装订

指导教师评阅书

指导教师评价:

一、撰写(设计)过程

1、学生在论文(设计)过程中的治学态度、工作精神

□优□良□中□及格□不及格

2、学生掌握专业知识、技能的扎实程度

□优□良□中□及格□不及格

3、学生综合运用所学知识和专业技能分析和解决问题的能力

□优□良□中□及格□不及格

4、研究方法的科学性;技术线路的可行性;设计方案的合理性

□优□良□中□及格□不及格

5、完成毕业论文(设计)期间的出勤情况

□优□良□中□及格□不及格

二、论文(设计)质量

1、论文(设计)的整体结构是否符合撰写规范?

□优□良□中□及格□不及格

2、是否完成指定的论文(设计)任务(包括装订及附件)?

□优□良□中□及格□不及格

三、论文(设计)水平

1、论文(设计)的理论意义或对解决实际问题的指导意义

□优□良□中□及格□不及格

2、论文的观念是否有新意?

设计是否有创意?

□优□良□中□及格□不及格

3、论文(设计说明书)所体现的整体水平

□优□良□中□及格□不及格

建议成绩:

□优□良□中□及格□不及格

(在所选等级前的□内画“√”)

指导教师:

(签名)单位:

(盖章)

年月日

评阅教师评阅书

评阅教师评价:

一、论文(设计)质量

1、论文(设计)的整体结构是否符合撰写规范?

□优□良□中□及格□不及格

2、是否完成指定的论文(设计)任务(包括装订及附件)?

□优□良□中□及格□不及格

二、论文(设计)水平

1、论文(设计)的理论意义或对解决实际问题的指导意义

□优□良□中□及格□不及格

2、论文的观念是否有新意?

设计是否有创意?

□优□良□中□及格□不及格

3、论文(设计说明书)所体现的整体水平

□优□良□中□及格□不及格

建议成绩:

□优□良□中□及格□不及格

(在所选等级前的□内画“√”)

评阅教师:

(签名)单位:

(盖章)

年月日

教研室(或答辩小组)及教学系意见

教研室(或答辩小组)评价:

一、答辩过程

1、毕业论文(设计)的基本要点和见解的叙述情况

□优□良□中□及格□不及格

2、对答辩问题的反应、理解、表达情况

□优□良□中□及格□不及格

3、学生答辩过程中的精神状态

□优□良□中□及格□不及格

二、论文(设计)质量

1、论文(设计)的整体结构是否符合撰写规范?

□优□良□中□及格□不及格

2、是否完成指定的论文(设计)任务(包括装订及附件)?

□优□良□中□及格□不及格

三、论文(设计)水平

1、论文(设计)的理论意义或对解决实际问题的指导意义

□优□良□中□及格□不及格

2、论文的观念是否有新意?

设计是否有创意?

□优□良□中□及格□不及格

3、论文(设计说明书)所体现的整体水平

□优□良□中□及格□不及格

评定成绩:

□优□良□中□及格□不及格

教研室主任(或答辩小组组长):

(签名)

年月日

教学系意见:

系主任:

(签名)

年月日

摘要

游戏自古至今都伴随并影响着人们的生活。

截至2013年,中国游戏用户达3.45亿人,游戏产业链的发展给游戏开发带来了无限的商机,是未来信息产品的重要深化方向之一。

格斗游戏是出现的比较早的游戏。

其中涉及到人物动作、血量检测、模拟重力下落等效果。

掌握格斗游戏的开发是从事更高层次游戏开发的基础。

本论文就是学习和使用基于C++的编程和基于EasyX的图像处理操作,EasyX绘图库支持VisualC++6.0/2010/2013,基于Windows图形编程,是将Windows下的复杂图形编程过程进行封装,将Windows下的编程过程隐藏起来,给用户提供一个简单熟悉的接口。

用户对于图形库中函数的调用,最终都会由Windows的底层API实现。

通过学习EasyX对进一步学习Windows编程是很有帮助的。

本毕业设计中要学习和使用声音特效的加载和播放。

包括:

游戏运行是用report重复播放实现背景音乐的加载,用户操作时通过角色动作函数配合播放特效音乐,产生攻击音效的效果。

人物技能的设计与实现,通过图形的加载和覆盖、音效的配合播放、对方角色的血量减少实现人物攻击技能的实现。

以及实现人物的技能的加载和双人对打等效果。

在实际的游戏开发中,一般不会用本毕业设计中所用的工具,但这确是培养编程兴趣很好的方法。

除此之外,在讲授图形学时,老师也可以借助EasyX进行讲解。

关键词:

游戏;编程;EasyX

 

ABSTRACT

Sinceancienttimesgamehaveaccompaniedandaffectedpeople'slives,Upto2013,Chinesegameusershavereached345millionpeople,thedevelopmentofthegameindustrychainhasbroughtunlimitedbusinessopportunities.Itisanimportantfuturedirectionofthedeepenedinformationproducts.Fightinggamesareoneofthefirstemerginggametypes.Whichinvolvesactionfigures,bloodtesting,simulategravityfallandsoon.Masterfightinggamedevelopmentisthebasisforthehigherlevel’sgamedevelopment.

ThisthesisistostudyandusebasedonC++programmingandbasedEasyXimageprocessingoperations.EasyXgraphicslibrarysupportsVisualC++6.0/2010/2013,theWindowsgraphicalprogrammingbasedonthecomplexproceduresofWindowsunderthepackage,theWindowsunderHidetheprogrammingprocess,toprovideuserswithasimple,familiarinterface.UsersForgraphicslibraryfunctioncall,willeventuallybetheunderlyingWindowsAPIimplementation.BylearningEasyXfurtherlearningWindowsprogrammingishelpful.Thegraduationdesigntolearnandusesoundeffectstoloadandplay,includingthegamerunswithreportrepeat,backgroundmusicloadedbytheuseroperatesthecharactermotionfunctionwithplayingmusiceffects,soundeffectsgeneratedattack.Designandimplementationofcharacterskillsthroughpatternloadingandcoveredwithsoundplayback,theothertheroleofbloodvolumereductionAchievedcharacterattackskills.Andtherealizationofpeople'sskillsanddoublerallyloadingeffects.

Intheactualgamedevelopmentingeneralwillnotusethisgraduationdesigntools,butitisreallyagoodwaytocultivateinterestprogramming.Inaddition,intheteachingofcomputergraphics,theteachercanalsouseEasyXtoexplain.

Keywords:

game;program;EasyX

 

 

1前言

1.1研究背景和现实意义

目前,游戏产业发展越来越快,根据国外著名统计机构StrategyAnalytics近日发表一份名为《全球游戏市场预测》的分析报告,游戏产业每年产值超过600亿美元,已成为世界上最大的娱乐产业,继美国、日本、韩国之后,越来越多的国家逐渐开始重视游戏产业的所带来的重大商机,并以国家力量为主导发展电子游戏产业。

现在,北美的电子游戏产业的收入已经超过了整个电影产业的收入。

美国拳头公司制作的《英雄联盟》更是风靡全球,其注册人数超过数亿人,同时在线人数超过数百万人,2015年MSI季中赛的决赛直播,超过一亿人观看,这足以证明游戏产业的巨大潜力与商机,一种新形式的竞技-电子竞技正在悄然崛起。

我国的游戏行业起步相对国外来说比较晚,但其发展速度非常快,据年会期间发布的《2014年中国游戏产业报告》显示,2014中国游戏产业总体收入达到1144.8亿元,主要来自客户端游戏(端游)、网页游戏(页游)、移动游戏(手游)、社交游戏以及单机游戏五个部分,总体收入相比2013年增长了69.02%。

游戏用户达到数亿人,尤其是智能手机的普及进一步促进了移动游戏的发展。

目前我国游戏软件开发人才缺口很大,特别是复合型游戏开发人才,更是成为各大游戏公司互相争夺的人才。

这样的人才缺口还不包括许多与其相关的其他行业的人才,比如游戏中角色人物的玩具制作、广告等相关行业的人才等,企业管理人员平均月收入在7500元以上,游戏开发、设计人员平均月收入在15000元以上,游戏制作人员平均月收入在9000元以上。

游戏产业已成为经济增长中的重要部分,而我国的人才缺口特别大,这与游戏产业的飞速增长明显不符。

1.2研究内容

1、学习和使用基于C++的编程和基于EasyX的图像处理操作。

包括:

通过载入图像背景绘制图形模拟选人的人机交互操作;通过图像的绘制与覆盖,实现人物技能的设置。

2、学习和使用声音特效的加载和播放。

包括:

游戏运行是用report重复播放实现背景音乐的加载;用户操作时通过角色动作函数配合播放特效音乐,产生攻击音效的效果。

3、人物技能的设计与实现,通过图形的加载和覆盖、音效的配合播放、对方角色的血量减少实现人物攻击技能的实现。

4、获取玩家的输入配合相应的人物技能实现完整的人机交互,完成玩家对游戏角色的控制。

1.3组织结构

第一部分是前言,叙述了游戏开的研究背景及国内外的研究现状,接着叙述了本论文的研究内容。

第二部分是游戏设计的构成与特性,简要叙述了游戏的构成要素以及交互性、开放性、虚拟现实性的游戏特点。

第三部分是基于EasyX的格斗游戏设计与开发,对开发工具进行了说明,从软件工程的角度,对游戏开发进行了较为详尽的叙述,以及总体设计和详细设计,这是论文的重点,并对部分主要代码进行了说明。

也对各类之间的结构进行了说明,并对各类的实现作了简单的介绍,最后是结论部分,对整个毕业设计的心得体会作了总结。

 

 

2游戏设计的构成与特性

2.1游戏的构成要素

说到游戏,大家会有各种各样的想法,那么什么是电子游戏呢?

它与传统的游戏有什么不同呢?

电子游戏是随着计算机技术的出现及快速发展而出现的,它是借助编程语言来实现的,以此来模拟一个虚拟的世界,比较流行的有C、C++、Java。

一个大型的游戏开发会经历比较长的周期,包括策划,即游戏类型的设定和游戏情节的编排;原画设计,包括角色模型、动作等,一般一个动作的完成要五、六帧,单是绘制这些帧就会耗费相当多的时间。

除此之外还有灯光、游戏引擎等。

由此可知,电子游戏主要是由两部分组成的,一是游戏艺术,包括游戏策划、原画设计、场景、角色模型设计等,二是游戏技术,比如游戏引擎的设计、游戏的运行速度以及所占用的系统资源等。

游戏艺术和游戏技术是不可分离的,一个好的游戏体验需要两者密切配合。

只有游戏艺术和游戏技术都做好,才能赢得众多玩家的青睐。

2.2电子游戏技术

电子游戏的艺术需要内在的技术支撑,即需要游戏技术支持。

电子游戏通过各种硬件设备、编程语言和游戏引擎等技术的支持,创造出一个虚拟的世界,让玩家在游戏中娱乐,这表现出电子游戏所具有的游戏性、娱乐性。

良好的游戏设计会引人入胜,给玩家视觉、听觉等上的享受。

电子游戏是建立在计算机硬件技术之上的,通过程序语言如:

汇编语言、C语言、C++语言地编写以呈现游戏的效果。

而程序语言是解决某个问题或是想达到某个目标用计算机语言或是借助其他语言而编写的若干指令序列的集合。

每一种程序语言有自己的特点,应用范围也不尽相同,有面向过程的,如C语言;随着软件规模的扩大,逐渐出现了面向对象的编程语言,如C++、Java等。

这些语言是为实现预期目的而进行操作的一系列语句和指令。

在程序中要定义变量、类和各种函数,这些是和现实世界中的事物或动作相对应的。

“类”、“变量”对应事物的属性,比如桌子有长、宽、高或是游戏中角色的名字、场景的颜色等。

程序语言是游戏制作的工具,是基本条件,把游戏中的事物和角色联系到一起,按照一定的逻辑表现某种效果,玩家可以通过一定的外部设备指挥游戏的角色按照自己的意愿行动,来体验游戏所带来的乐趣。

比如现在非常流行的游戏《英雄联盟》,玩家就是通过键盘和鼠标控制游戏的。

2.3游戏的特性

2.3.1交互性

在虚拟的游戏环境中,玩家通过传感装置(如鼠标、键盘等)对游戏直接进行操作,实时获得游戏的体验信息(如语音、特效、视觉等)。

简单理解就是当我们通过传感设备和内部反馈回路的系统配置,玩家和虚拟环境之间产生交互作用,通过反馈我们得到相应的图片和互动。

每个人都是通过电子游戏互动平台,开展与其他玩家在虚拟环境中的交互,如格斗、交流、协作等,同时在显示器上显示实时信息。

电子游戏技术使人机交互,人机交互成为可能,每种艺术形式都是一种情感的交流和体验,传统艺术的限于技术条件的束缚,交换的形式是单方面的。

那些艺术家把自己的思想,观念、感受灌输给读者,读者则是被性的接受,是单方向的,艺术家主宰了我们。

电子游戏技术创建了一个庞大和复杂虚拟世界,在这个虚拟的世界中我们可以扮演各种角色,按照自己的意愿与想法去完成任何事情,这种交互形式是有选择性的,我们可以选择做什么,也可以放弃些什么。

在这虚拟的环境中我们可以打开自己的情感世界,可以做一些在现实世界中不能做的事情。

比如在电影、文学作品中我们恨透了某个坏人,但是我们不能参与其中,只能暗暗地诅咒这个坏人,我们是不能做任何改变的。

游戏也具有故事情节,也有善与恶之分,如果我们恨透了某一个坏蛋,那么游戏玩家可以选择某个角色痛打这个恶人,当然这是在你虚拟人物能力达到范围之内。

电子游戏中的PK模式是很多人沉迷热爱的,这种PK机制激发了游戏玩家潜意识的竞争力,为了炫耀自己的技术或者游戏操作的能力以及角色的装备属性等等,有目的与对手进行PK。

这些交互形式其实在完善人对于艺术的追求,也就是在完善电子游戏艺术。

2.3.2开放性

开放性是计算机网络最本质的特征,在计算机网络中大家畅所欲言,无拘无束,尽情地表达着自己的观点。

游戏的开放性,可以把世界各地的游戏玩家紧密联系起来。

在一个游戏中,你可能会遇到各种人,不同地区,不同国家,不同信仰的人聚在一起,共同体验游戏所带来的乐趣。

2.3.3虚拟现实性

电子游戏中的虚拟实现性是指在游戏的世界是虚拟的,在现实中不存在的。

电子游戏把我们带入到虚拟的世界中,在这个世界中有他们的规则、故事,而这个世界是不存在的。

比如《英雄联盟》故事描述的是在符文之地-瓦罗然无止境的战争和纷争导致魔法滥用,军队用法术和符文武装自己,英雄们打造出大部分魔法物品率领部队彼此厮杀,因而出现了很多英雄,这些都是虚无缥缈的东西,现实世界中是不存在的。

而通过电子游戏技术把整个《英雄联盟》这款游戏的世界观完全的构架起来。

如果这是一本书那么可能每个人的银河都是不一样的,而作为一个游戏创建出这样的世界观让你可以直视它,这是一件很伟大的工程。

电子游戏技术把人的艺术观念创建、展示出来。

这个过程在完善人的艺术追求,那么我们也可以认为电子游戏技术在完善电子游戏艺术。

 

3基于EasyX的格斗游戏设计与开发

3.1需求分析

3.1.1功能分析

本论文开发的游戏是基于经典游戏《拳皇》思想设计的的游戏实例。

游戏的具体功能可以分解为以下几个模块:

1.进度条功能:

在进行游戏是显示进度条,进度条包括自己的生命值和敌人的数量。

2.主角设计:

游戏中由玩家控制的角色。

游戏模式分为单人模式和双人模式两种。

单人模式由W、A、S、D、J、K键进行控制,其中W、A、S、D控制前后左右移动,J、K控制跳跃和技由能释放;双人模式由W、A、S、D、J、K和方向键以及数字键1、2进行控制。

当角色吃到鸡腿后会增加生命值,吃到子弹后可以发射子弹等。

3.怪物设计:

游戏中设计了不同的敌人类型,以及终极boss,不同的敌人对角色的伤害不同,并且不同类型的敌人出现的时间和数量也不同。

游戏会随着关卡的升高而增加敌人的数量。

4.地图设计:

地图设计就是加载一些简单明快图片,使游戏的体验效果更好一些。

5.声音功能:

游戏运行后会加载背景音乐,选择角色后会加载游戏中的音乐。

另外,游戏中还增加了泡泡语效果,就是把敌人击杀后,角色头像旁边会出现一些字。

3.1.2性能需求

本游戏对计算机的要求很低,WindowsXP及以上的版本都可以运行。

3.2游戏中使用的相关技术

1.C++编程。

C++语言是面向对象的编程语言,与面向过程的语言不同,用C++编写程序是从现实世界的角度出发,从现实中抽象出事物的共性,作为基类,再根据事物各自的特点,从基类中派生出具体事物的类。

这对编写大型的程序非常便利,实现了代码的重用,也易于程序的维护。

2.EasyX的图像处理操作。

EasyX LibraryforC++是针对VC的一套绘图库,接口简单易用,用起来很像TC的graphics.h绘图。

EasyX绘图库支持VisualC++6.0/2010/2013,基于Windows图形编程,是将Windows下的复杂图形编程过程进行封装,将Windows下的编程过程隐藏起来,给用户提供一个简单熟悉的接口。

用户对于图形库中函数的调用,最终都会由Windows的底层API实现。

对于初学编程并且想要绘图的人来说,选择EasyX的绘图库是非常合适不过的了。

利用EasyX可以熟练掌握编程,尤其是面向对象,培养编写程序的热情与兴趣。

在对这个库有了较为熟练的运用之后,再学Windows编程,OpenGL,MFC等等,会感觉比较轻松。

3.声音特效的加载和播放。

包括:

游戏运行是用report重复播放实现背景音乐的加载;用户操作时通过角色动作函数配合播放特效音乐,产生攻击音效的效果。

4.人物技能的设计与实现,通过图形的加载和覆盖、音效的配合播放、对方角色的血量减少实现人物攻击技能的实现。

3.3总体设计

1.主界面:

包括选择单人模式和双人模式。

2.单人模式:

人和计算机对打。

3.双人模式:

人和人对打。

 

 

退出游戏

图3.1总体设计

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

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1