基于labview的贪吃蛇游戏设计

上传人:小** 文档编号:89520011 上传时间:2019-05-26 格式:DOC 页数:24 大小:544KB
返回 下载 相关 举报
基于labview的贪吃蛇游戏设计_第1页
第1页 / 共24页
基于labview的贪吃蛇游戏设计_第2页
第2页 / 共24页
基于labview的贪吃蛇游戏设计_第3页
第3页 / 共24页
基于labview的贪吃蛇游戏设计_第4页
第4页 / 共24页
基于labview的贪吃蛇游戏设计_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《基于labview的贪吃蛇游戏设计》由会员分享,可在线阅读,更多相关《基于labview的贪吃蛇游戏设计(24页珍藏版)》请在金锄头文库上搜索。

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

2、IEW软硬件平台,结合键盘的游戏操作。关键词: Lab VIEW软件平台;键盘;贪吃蛇游戏操作方案。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 so

3、ftware and hardware platform;Snake 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的诞生,及其开创的触屏潮流,不仅革新了用户操作手机的体验,而且也使手游脱离了物理键盘的局限,有了

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

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

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

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

9、一样的;而System是采用系统控件,它的外观与操作系统有关,不同的操作系统下控件的显示外观有所不同。大多数的程序员似乎更愿意选择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左运动

13、图3-10右运动3.3.4蛇尾运动控制蛇尾消失,说明蛇向前运动(图3-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,说明蛇身边长,分数加1。当然也可以通过记录要吃部分产生了几个来计数。将每一局产生的分数与上一记录比较大小,大的保留。就是历史最高分了。(图3-19)图3-19分数与最高分4调试结果与优化4.1调试结果实现

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号