网站大量收购独家精品文档,联系QQ:2885784924

嵌入式高尔夫球游戏课程设计.docVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式高尔夫球游戏课程设计   [摘要]随着嵌入式技术及手机互联网技术的发展,手机游戏业也进入了一个新的网络游戏时代。好多大学设置了嵌入式游戏设计课程,高尔夫球游戏设计是在嵌入式系统环境下,使用标准C语言编程实现高尔夫球或类似的击球入洞游戏。游戏将模拟高尔夫球的抛物线及滚动运动,地面的阻尼变化和进洞。对培养适应社会需求的嵌入式技术人才有着重要意义。   [关键词]嵌入式技术 高尔夫球游戏 课程设计   [中图分类号]G434 [文献标识码]A   一、引言   作为一种时尚或某种身份的隐约暗示,高尔夫球已逐渐渗透到我们的都市生活之中,但高尔夫球训练场成本高及对自然环境的破坏,使得现在国家队高尔夫球场用地的批复尤为慎重。嵌入式系统设计的高尔夫球游戏使得玩家可以随时随地不受场地限制玩游戏,使得嵌入式游戏市场进一步扩大[1]。高尔夫球起源于苏格兰,后成为苏格兰的一项传统项目,然后传入英格兰。“高尔夫”,本是英语golf的译音。在英语中,golf一词是由绿(green)、氧气(oxygen)、阳光 (light)和友谊(friendship)这四个单词的打头字母所组成的。一项运动,能兼有上述四项诱人的内容,在崇尚休闲的现代社会中,使它成为人们的宠儿。   二、嵌入式沙壶球游戏概述   在游戏中,游戏者的目标是将小球击入洞内,左侧操作区内将显示游戏者的杆数和标准杆数,左下角则在提示信息区显示提示信息,左中部有方向圈和力度槽,方向圈控制小球运动的方向,力度槽控制小球运动的距离,按下两次确定键选择方向和力度后小球开始运动;运动的实际方向和长度将受到地形和阻力的影响,最终小球将进洞或者由于阻力停下。如果进洞,游戏者将返回上层菜单或开始下一局;如果没有进洞,游戏者将继续击球直至进洞。小球进洞后可以重新开始游戏[2]。   在游戏设计中,主要的流程控制方法是事件响应控制,包括状态值控制、键盘响应控制、满足条件的特殊事件控制。状态值控制是在程序中定义不重复的状态值,在游戏运行的每一个阶段,都有相对应的状态值;键盘响应控制主要在键盘响应函数中,根据输入不同的键值,在不同的状态,触发不同事件;满足条件的特殊事件控制是指由于游戏者的操作达到某些事件发生条件时(例如球出界或进洞等),触发不同事件[3]。   整个游戏流程图如图1所示:   图1:高尔夫球游戏设计的流程图   (1)初始化及部分游戏系统提示模块详细设计   包括:进入游戏时,程序将进行初始化,包括初始化三角函数表,将资源读入缓冲区以及将系统数据定义为初始状态;每关开始时,程序进行关卡初始化,包括读入地图,将游戏数据定义为指定值,显示方向圈、力度槽、进入关卡。   (2)球的运动及状况判断模块   包括:处理运动受地形和阻力影响速度和方向的改变;判断球是否出界和进洞。   (3)键盘响应及流程控制模块   包括:键盘响应;控制游戏流程、菜单选择。   三、高尔夫球游戏算法部分   1.动画原理   动画效果实际上是“欺骗”眼睛的结果,由于人的眼睛处理信息的数量有限,每次看到的景象会在大脑中残留0.1秒左右,由此,只要在一个景象显示0.1秒内显示下一个景象,看上起就好像动起来了一样;如果在一秒内连续显示24个以上的景象,人眼就会看成是流畅的运动。所以,所有的动画都是反复显示图像的结果。例如在本游戏中,小球的运动就是通过在每秒钟显示30次以上的不同位置的小球图像来实现的。   2.地面的阻尼变化   地表阻力fric是声明在程序中的全局变量,并通过测试被定义为0.8。只要小球运动,就有相反方向的阻力,如图2所示i。根据勾股定理:   fricx=fric*(-(theball.speedx))/sqrt((theball.speedx*theball.speedx)+(theball.speedy*theball.speedy));   fricy=fric*(-(theball.speedy))/sqrt((theball.speedx*theball.speedx)+(theball.speedy*theball.speedy));   图2:地表阻力分析图   fircx和fricy是小球水平和垂直方向受阻力影响改变的速度:   addspeedx+=fricx;   addspeedy+=fricy;   斜坡受力braefric也是声明在程序中的全局变量,并通过测试被定义为0.15。根据局数不同,在小球运动中取小球坐标然后在速度变化函数中取得斜坡受力[4]。   小球如果处于朝向游戏者的斜坡上,所以应受到垂直正方向上的斜坡受力。   addspeedy+=braefri;   经过处理地表阻力和斜坡受力,最后,水平速度

文档评论(0)

jingpinwedang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档