毕业设计(论文)基于LabVIEW的贪吃蛇游戏设计.doc

上传人:土8路 文档编号:10029647 上传时间:2021-04-12 格式:DOC 页数:24 大小:525KB
返回 下载 相关 举报
毕业设计(论文)基于LabVIEW的贪吃蛇游戏设计.doc_第1页
第1页 / 共24页
毕业设计(论文)基于LabVIEW的贪吃蛇游戏设计.doc_第2页
第2页 / 共24页
毕业设计(论文)基于LabVIEW的贪吃蛇游戏设计.doc_第3页
第3页 / 共24页
毕业设计(论文)基于LabVIEW的贪吃蛇游戏设计.doc_第4页
第4页 / 共24页
毕业设计(论文)基于LabVIEW的贪吃蛇游戏设计.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《毕业设计(论文)基于LabVIEW的贪吃蛇游戏设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于LabVIEW的贪吃蛇游戏设计.doc(24页珍藏版)》请在三一文库上搜索。

1、本科毕业设计( 论文 )题 目:基于Lab VIEW的贪吃蛇游戏开发设计 学 号: 姓 名: 班 级:11光电A1 专 业: 信息显示与光电技术 学 院:工学部 入学时间:2011级 指导教师: 日 期: 2011年6月8日毕业设计(论文)独创性声明本人所呈交的毕业论文是在指导教师指导下进行的工作及取得的成果。除文中已经注明的内容外,本论文不包含其他个人已经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。作者签名:日期:基于Lab VIEW的贪吃蛇游戏开发设计摘要采用Lab VIEW软硬件平台,结合键盘的游戏操作。关键词: Lab VIEW软件平

2、台;键盘;贪吃蛇游戏操作方案。Dual mode snake game development designABSTRACTUsing LABVIEW software and hardware platform, can be achieved based on the PC screen and keyboard game operation and based on photoelectric diode and switch the snake game operation.Key words: LABVIEW software and hardware platform;Snake

3、game operation.目录1 绪论62 LABVIEW简介72.1 LABVIEW概念72.2 LABVIEW特点73 游戏软件设计方案93.1设计思路简介及框图93.2游戏界面103.3主要程序介绍103.3.1 初始设定103.3.2 蛇运动方向控制113.3.3 蛇头运动控制133.3.4蛇尾运动控制153.3.5蛇身加长和要吃部分产生163.3.6蛇自撞与撞墙183.3.7分数与最高分184调试结果与优化204.1调试结果204.2进一步优化205 结论与总结21致谢23参考文献231 绪论手机游戏在当今社会普遍流行,种类和玩法也很丰富。对于手机游戏发展大致可以分为四个时代。史

4、前时代:(1998 2003)对用户而言,这是手机作为通讯工具大放异彩的年代。不过,“使用手机玩游戏”这项需求呈现得并不清晰,手机中内置的游戏,通常由手机生产商直接提供,也谈不上任何商业模式,只是为了增添手机的销售卖点。石器时代:(2004 2007)随着手机性能的提高,一些具备了简单彩色图形像素的手游开始面向用户,这类游戏大多以JAVA语言编写,实现的效果相对上一个时代都提升了许多。启蒙时代:(2008 2011 )IPHONE的诞生,及其开创的触屏潮流,不仅革新了用户操作手机的体验,而且也使手游脱离了物理键盘的局限,有了除“上下左右”之外的新的玩法。如果说IPHONE居高不下的售价可能在一

5、定程度上阻碍了智能手机的用户规模进一步扩大,Android伺机而动的补缺则完成了智能手机对功能手机的最后一击。青铜时代:(2012 ?)IPHONE 4发布之后,苹果在国内用户中的占有率开始飙升,以千元机主的智能手机市场价格下探,亦使Android大有用武之地。于网游之于PC互联网如出一辙,手游作为盈利能力最强的移动互联网产品,价值日趋显著,手游用户的突飞猛涨,带动了市场规模的不断扩大,醒悟过来的传统巨头纷纷通过投资并购来为错过的时间买单,资本市场也浮现出了手游概念股。以2013年为例,上千家手游创业公司在同一个市场里竞争,季度流水过亿元的移动游戏发行商超过5家(分别是中国手游、触控科技、飞流

6、、昆仑游戏和热酷游戏),产业链的发展愈来愈成熟,利益关系也愈来愈繁荣。作为最经典,也是最早的手机游戏贪吃蛇首次亮相于20世纪70年代,当时这款游戏名为Blockade,由Gremlin Industries设计。1984年该公司倒闭之后就再也没有恢复运转了,不过值得庆幸的是他们的游戏依然流传下来,并成为游戏界的经典。这个毕业设计是基于机屏幕、键盘及光电二极管、按键开关的贪吃蛇游戏。2 LABVIEW简介2.1 LAVIEW概念LABVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发,类似于C和BASIC开发环境,但是LABVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用

7、基于文本的语言产生代码,而LABVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。 LABVIEW软件是NI设计平台的核心,也是开发测量或控制系统的理想选择。 LABVIEW开发环境集成了工程师和科学家快速构建各种应用所需的所有工具,旨在帮助工程师和科学家解决问题、提高生产力和不断创新。2.2 LABVIEW特点与Visual C、Visual Basic等计算机编程语言相比,图形化编程工具LABVIEW有一个重要的不同点:不采用基于文本的语言产生代码行,而使用图形化编程语言G编写程序;产生的程序是框图的形式,用框图代替了传统的程序代码。LABVIEW中的 程序由三部分构成:前

8、面板、程序框图、图标、连线板。前面板是程序的用户操作界面,是 程序的交互式输入和输出端口,通常使用输入控件和显示控件来创建前面板。输入控件是指旋钮、按钮、转盘等输入装置,输入控件模拟仪器的输入装置,为的程序框图提供数据;显示控件是指图表、指示灯等显示装置,显示控件模拟仪器的输出装置,用以显示程序框图获取或生成的数据。 在LABVIEW中有3种不同外观的控件可供选择,分别是:Modern、System和Classic。其中Modern控件是NI专门为LABVIEW设计的具有3D效果的控件,它能够确保在不同的操作系统下显示始终是一样的;而System是采用系统控件,它的外观与操作系统有关,不同的操

9、作系统下控件的显示外观有所不同。大多数的程序员似乎更愿意选择System控件,理由是它可以让程序看起来不那么LABVIEW化。但是LABVIEW并不允许程序员任意自定义System控件的外观,这同时也限制了System控件的使用。 应用程序的界面是提供给使用者的第一印象,直接影响到应用程序的用户体验。因此,有效、合理的界面能够为程序增色不少。LABVIEW提供了丰富的界面控件供开发者选择,有经验的程序员往往能够利用这些控件做出令人称赞的界面效果。3 游戏软件设计方案3.1设计思路简介及框图选择难度、背景音乐通过布尔灯表示蛇身,键盘上、下、左、右键控制蛇身的运动,每一个亮着的小圆点代表蛇要吃的部

10、分,在蛇吃掉小圆点之后蛇身会加长,吃掉小圆点后,会自动出现下一个小圆点。在蛇头触碰边沿或者撞到自己的身体时游戏结束,在没有可吃的部分代表游戏胜利。辅助功能有:得分、难度、历史最高分、背景音乐。游戏失败开始游戏?否产生蛇身、蛋、初始方向是蛇不停运动,上下左右键控制运动是是否吃掉蛋?自撞或撞墙?还有要吃的蛋?否否产生新的蛋是是否是否为蛇身?否游戏失败游戏成功是3.2游戏界面游戏的界面是一个10*10的布尔灯矩阵,可根据自身需要,自行设定初始界面大小。设置蛇身长度是一个布尔灯长,随机产生的一个布尔灯作为蛇要吃的部分。游戏界面还包括分数记录、历史最高分、游戏难度选择、背景音乐选择、开始游戏、结束游戏。

11、如图3-1 图3-1 游戏界面3.3主要程序介绍3.3.1 初始设定初始蛇头的设定用的是两组随机数产生一个二维数组定义蛇头位置。相同的方法定义蛇要吃部分的位置。蛇头默认运动方向向右。3.3.2 蛇运动方向控制通过一个事件结构捕捉键盘按键对蛇运动方向的控制。并通过循环结构的移位寄存器记录上一次蛇的运动方向。当在规定时间内没有方向键指令或者错误指令,则蛇按照上一次运动方向运动(图3-2,图3-5)。设定规定时间就可以控制这个游戏的难易程度,时间越大,游戏越容易。时间越短,游戏越困难。(图3-4)两组相反方向键(左右、上下)存在,蛇身不可能往一个方向运动时,还可以往相反方向运动。所以要阻止逆向操作。

12、用条件结构判断上一次操作与本次操作运动方向是否相反。若相反,则按原方向运动。(图3-3) 图3-2没有按键指令图3-3防止逆方向运动 图3-4难度选择图3-5错误按键指令在规定时间内有方向键按下,则传给下一步新的方向键指令。图3-6图3-6新的方向指令3.3.3 蛇头运动控制由于蛇头的运动方向和蛇运动方向一致,所以由前面蛇的运动方向加上一个条件结构来确定下一步蛇头的运动方向。通过替换数组元素使下一个位置布尔灯变亮,即蛇往下一个方向运动一格。(图3-7,图3-8,图3-9,图3-10)图3-7上运动图3-8下运动图3-9左运动图3-10右运动3.3.4蛇尾运动控制蛇尾消失,说明蛇向前运动(图3-

13、11)。由于蛇尾和蛇头不是同步方向运动,蛇尾运动方向是重复蛇头的运动方向,并滞后蛇头运动。滞后几个单位根据蛇身长度决定。如蛇身长度为5,则蛇尾滞后蛇头5个单位。所以需要一个一维数组来记录蛇头每一步的运动方向(图3-12)。当蛇身加长的时候,蛇尾需要增加滞后1个单位。(图3-13)图3-11蛇尾消失控制图3-12记录运动方向图3-13增加滞后单位3.3.5蛇身加长和要吃部分产生通过一个条件结构判断蛇头运动的下一个位置是否有要吃的部分。有,蛇身长度加1,即蛇尾消失运动滞后单位加1(图3-14、图3-15)。两组随机数产生下一个要吃的部分位置,这个要吃的部分不能是蛇身。循环结构产生要吃部分位置,条件

14、结构判断是否属于蛇身,不是则跳出循环,是则继续循环直到跳出循环。(图3-16)图3-14有要吃掉的部分图3-15没有要吃掉的部分图3-16产生新的要吃的部分3.3.6蛇自撞与撞墙由于蛇在撞到自己的身体或者撞到墙壁的时候,会导致游戏结束。自撞是要判断蛇头的下一个运动位置是否是自身身体的位置,即下一运动位置的另外三个方向的相邻位置若有一个布尔灯亮,则游戏失败图(图3-17)。撞墙是要判断蛇头运动的下一个位置是不是游戏界面的边沿,即运动范围在(09)*(09)的矩阵内,如果蛇头的坐标超过了这个范围则判断游戏失败。(图3-18) 图3-17自撞图3-18撞墙3.3.7分数与最高分每当蛇尾滞后加1,说明

15、蛇身边长,分数加1。当然也可以通过记录要吃部分产生了几个来计数。将每一局产生的分数与上一记录比较大小,大的保留。就是历史最高分了。(图3-19)图3-19分数与最高分4调试结果与优化4.1调试结果实现了设定初期的全部设定,设计最初,只是实现了最基础的功能,后来在导师的指导下,又分别加入了分数,最高分,修复了由于反向操作带来的BUG。 4.2进一步优化可以添加音乐库作为背景音乐,让玩家自己选择喜欢的音乐,一边享受玩游戏的乐趣,还可以享受音乐的快乐。美化游戏的操作界面,让操作界面跟美观。显示每一局玩家所获得的分数,并记录每一局的分数,进行比较。在游戏界面上显示最高的分数。取玩家所玩的分数中的前十作

16、为历史记录分数。玩家可选择游戏界面的大小,也可以选择游戏的难易程度。方便高手玩家有根大的空间发挥。5 结论与总结通过自己的努力和坚持,以及毕业设计老师的帮助下,实现了这个游戏设计。作为一种图形编程工具,LABVIEW让我们对编程的印象耳目一新。通过这学期的学习,我们不仅了解了LABVIEW的基本使用方法,还对以前学习过的编程思想用了更深刻的理解。其实不管是C,还是图形编程,本质上都是一样的,只是具体操作时各有优劣。首先,这个毕业设计的课题是我自己确定的。因为在接触LABVIEW这门课程,对这门课程产生浓厚的兴趣。在上这门课程期间,接触了一些关于布尔灯矩阵的例题,脑海灵光一闪,我们小时候玩的贪吃

17、蛇游戏的界面很类似,而且玩法操作相似。于是就上网查了资料,并且询问了授课老师。知道通过LABVIEW程序可以实现这款游戏。当然其他的语言如:C、VB等都是可以实现的。并且授课老师就是毕设导师,也没有考虑其他就确定了这个课题。但当我真正要去编写这个游戏程序时,才发现事情不是我想象的那么简单,也不是课程所学的那些只是就能够解决的。要去思考和解决的问题太多。游戏界面的设置与美观、蛇身的控制、蛇身的运动、游戏进行的流畅性、游戏胜利、蛇自撞与撞墙、蛇要吃掉的部分如何产生、蛇身的加长等等面对一系列的问题。面对这些问题时,我没有选择放弃。是自己选择的,就要去完成。我先设计了游戏的结构框图,列出所要解决的问题

18、。从简单的一个布尔灯上下左右操作控制,到一连串布尔灯的上下左右操作控制。在一个个加上游戏所需要的程序结构。在遇到不会结构时,我尝试着在网上研究其他语言做这款游戏设计思路和运用的结构,也看了一些其他人运用LABVIEW设计这款游戏所用的方法,进行学习和改进。并把我的想法与毕设导师交流,确定其可行性。再去不断地尝试。虽然这款游戏设计是在贪吃蛇游戏里面是最简单的,在实际生活中也没有用武之地。但是,在设计这款游戏时,运用了很多LABVIEW程序结构和原件,促进了我去学习,也加深了我对这个语言的了解。对以后的程序设计思路有了帮助,或多或少能从中的到启示。致谢由于没有珍惜时间,因为自身懈怠等原因迟迟没有完

19、成毕业设计。是您给了我支持,给予我机会和时间,是您对我的不放弃和宽容,才使我能够完成这次毕业设计。感谢秦琴老师在这次毕业设计中对我不厌其烦和不辞辛劳的指导和帮助,感谢您为学生的付出。感谢您在LABVIEW这门课程上的讲解,使学生有机会学习了解这门语言。用这门语言去完成毕业设计算是我对您的感恩,真的非常感谢您!参考文献1陈锡辉,张银鸿.LABVIEW8.20程序设计入门到精通.北京:清华大学出版社,2007.2吴成东,孙秋野,盛科. LABVIEW虚拟仪器程序设计及应用M.北京:人民邮电出版社,2008.3 Jeffrey Travis,Jim Kring美.LABVIEW大学使用教程.北京:电

20、子工业出版社,2008.4光电信息系.光电信息测控技术应用.上海第二工业大学,20115光电信息系.光电信息测控技术应用实验指导书.上海第二工业大学,20116贾永红编著.数字图像处理.武汉大学出版社,2012.17宋文绪主编.自动检测技术.冶金工业出版社,20108胡仁喜等著. LabVIEW8.2.1虚拟仪器实例指导教程. 机械工业出版社,20099钱难能等著. 当代测试技术.华东化工学院出版社,200510 Measurement Ready DAQ - Developer Zone - National Instruments.National Instruments Application . 11National Instruments Corporation.Signal Processing Toolset User Manual,200112National Instruments Corporation.The Measurement and Automation Catalog,2002

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

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1