嵌入式大炮打飞机游戏设计课程研究

来源 :知识力量·教育理论与教学研究 | 被引量 : 0次 | 上传用户:hyp88_down
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要]随着嵌入式技术及手机互联网技术的发展,手机游戏业也进入了一个新的网络游戏时代。好多大学设置了嵌入式游戏设计课程,在嵌入式平台上设计了大炮打飞机游戏,介绍了该游戏的设计思路及设计算法,物体的变速运动算法和碰撞检测算法。对培养适应社会需求的嵌入式技术人才有着重要意义。
  [关键词]嵌入式技术手机游戏课程研究
  [中图分类号]G434 [文献标识码]A一、引言
  现在随着彩屏智能手机及掌上电脑的普及才使嵌入式游戏真正产业化,嵌入式游戏的表现力已经不输于大型机,不再是几种色彩的几何图形变化,而嵌入式设备本身与网络的优良结合势必将使嵌入式游戏进一步扩大市场。同样由于移动网络技术的发展,手机游戏业也进入了一个新的网络游戏时代[1]。嵌入式系统的技术到达一定水平后,多媒体的进入已不可避免,在图像、音效上更出色的表现对于嵌入式设备使用者来说是一个莫大的诱惑。为了传输多媒体文件和运行复杂的嵌入式软件及游戏,嵌入式产品要求更高的处理器和存储器。按照现在技术革新的速度,嵌入式系统的运算能力很快可以达到五年前的大型机[2]。无线通信设备是嵌入式游戏最主要的载体,便于携带和与网络完美结合使无线通信设备成为潜在的网络游戏最大平台。
  二、嵌入式游戏设计关键技术概述
  游戏设计主要就是在嵌入式系统上实现游戏,也就是如何使一个游戏和嵌入式系统有机的结合起来。
  首先游戏是画面和操作的结合体。在游戏设计中,一个是有漂亮的界面,一个是有简单的操作系统,不应该有繁琐的操作风格。界面的设计是游戏设计的主要难点。在手机等电子设备上实现图形比在PC上实现图形难上许多[3]。
  其次是控件的设计,如窗口显示控件、按钮控件设计,同时的还有触摸屏的机制。由于是嵌入式产品上的游戏,应该尽量的减少对键盘的依赖,通过触摸屏实现操作。所以我们要充分的学习触摸屏消息机制和按钮的消息机制。这是嵌入式系统的设计问题,利用C语言可以实现。
  最后是算法的设计,利用数学建模的思想和运动仿真处理、运动的物理过程数字化、物理学中的力学和运动学公式等方法设计程序算法。
  游戏的存在肯定有它的输赢。玩游戏的目的一是为了消磨时光,一是为了在游戏中取得娱乐同时还有一种竞争。为了实现在这些功能,游戏中应该有计分功能、计步数功能、计时功能等。
  三、嵌入式大炮打飞机游戏设计课程研究
  了解多种游戏软件开发思路和算法,并能在嵌入式平台上实现多种游戏软件,并初步掌握如何运用已有知识构造一个完整的嵌入式系统。下面介绍大炮打飞机游戏的设计方法。
  1.游戏设计思路
  大炮打飞机游戏设计是一个人机对战游戏,人控制炮台,计算机控制飞机。飞机可以根据炮台的位置进行投弹。飞机在屏幕的上方水平匀速运动,所以打出的子弹也具有一定初速度,加上重力加速度,飞机打出的子弹的运动路径应该是一个向下加速的抛物线。玩家可以控制炮台左右移动,并发射炮弹。玩家有3次机会,如果炮台被第三次击中,则游戏结束。如果炮台打中飞机,每打中一次加10分,飞机显示为爆炸,并从屏幕的左端重新飞出一架。为了提高对抗性,本游戏将借鉴掌上游戏机的分数规则,即达到一定分数,飞机的移动速度将增加[4]。
  总体设计思路:玩家通过键盘按键来控制炮台的移动和开炮,也就是响应按键消息。飞机是由机器自动控制,飞机的行为有两个——移动和投弹。移动采用平移贴图实现。什么时候投弹,是通过飞机和炮台的当前位置计算出来的,具体说,就是要计算导弹的落点是否在当前炮台范围内,如果在当前炮台范围内则投弹。在游戏运行过程中,飞机和炮台的子弹每次移动(即每一帧)都要计算是否击中对方,若飞机击中炮台,则玩家命数减一(初始有3条命)。若炮台击中飞机,则加10分,每过100分飞机将加快速度。当飞机3次击中玩家,即玩家命数为0,则结束游戏。飞机和炮台每次只能发射一发炮弹,当炮弹在屏幕上消失后,才能发射第2发。
  大炮打飞机游戏设计流程图如图1所示:
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  图1:大炮打飞机游戏设计流程图
  2.游戏设计算法
  随着游戏产业的发展与游戏开发技术的提高,游戏引擎日趋完善,主要的物理算法、智能算法以及动画制作也形成了一定的标准[5]。在本次设计中,主要使用了两种物理算法:
  ● 物体的变速运动算法
  ● 碰撞检测算法
  (1)物体的变速运动算法
  飞机打出的子弹的轨迹是一条向下的抛物线,它要受到重力加速度和飞机的水平初速度的影响。飞机在投弹前要计算大炮的位置,如果投弹的落点正好是当时大炮所在的位置,则进行投弹。加速度与速度的关系如下:
  V = Vo + at
  在传统的Windows游戏设计中,通常我们会以程序中定时器的时间间隔为t的单位,但是在嵌入式操作系统的环境下,我们采用“帧”为单位,距离采用“像素”为单位,所以速度的单位就位“像素/帧”。每一帧都要处理子弹的移动,所以,子弹每一帧在竖直方向上的速度变化就为:
  V = Vo + a
  在水平方向上,将按飞机的移动速度进行匀速运动。所以在程序中处理子弹位置的代码如下:
  pB->x+=plane->PlaneSpeed;
  pB->y+=pB->v;
  pB->v+=2;
  其中pB为飞机子弹结构变量,plane->PlaneSpeed 为飞机速度,pB->v+=2中所加的“2”为模拟重力加速度值,这个数值是通过实验得来的。最初采用真实重力加速度的近似值10,但是由
  S = 1/2(gt2)
  可以得出,第1帧子弹移动10个像素,第2帧移动40个像素,第3帧移动90个像素……,子弹从44(屏幕纵坐标点)开始下落,地面水平线纵坐标为200,也就是说子弹在屏幕上只能显示3帧,几乎看不见,所以通过实验得出,取2为重力加速度值较为理想。
  (2)碰撞检测算法
  如今在游戏设计中,主要使用3种碰撞检测的方法:
  ● 范围检测
  ● 颜色检测
  ● 路线检测
  这3种检测方法各有利弊。范围检测算法简单,只要判断位图是否相交即可,运算量小,但误差较大。
  颜色检测判断精确,但是算法复杂,运算量大,每次移动都必须重新做镂空处理,并读取位图所有像素的色彩值,然后进行AND运算,判断是否发生了碰撞。如果通过运算结果,发现有相同的像素,说明物体发生了碰撞。但是从效果看,颜色碰撞检测会更好一些,但是由于现在的设备要求,CPU负载会很重,这种检测方法比较适用于不规则图形的碰撞检测。
  路线检测是通过已知的物体运动路线判断两运动物体是否会有交点,此种算法相对精准,但运算量也较大。它的作用是用来进行以后的行为智能做判断的。这里所提到的行为智能,是飞机(由计算机控制)躲避子弹的能力,如果通过路线碰撞检测发现飞机会和子弹发生碰撞,那么飞机将在碰撞前改变飞行路线,避免被击中。路线检测通过物体的运动路线,来判断物体是否会发生碰撞,比较适用于人工智能。
  本次设计采用的是范围检测,虽然颜色检测和路线检测判断精准,但是运算量过大,会影响游戏的速度。范围检测相对于其他两种检测方法来说,误差较大,但是在游戏设计中所采用的位图小,位图周边空白像素少,产生的最大误差也就只有3个像素,所以不会有什么影响。
  四、总结
  随着技术的进步,当嵌入式设备的表现力足够强大,人们必将选择其作为网络游戏的新平台。大型嵌入式系统在将来的普及,嵌入式游戏复杂性的提高,使将来嵌入式系统开发商无暇顾及嵌入式游戏,未来必定出现大量的嵌入式游戏开发商,从而彻底改变当今电子游戏业的格局。嵌入式游戏的成熟将是电子游戏业的竞争更加激烈。
  基金项目:北京信息科技大学《嵌入式系统及应用》课程建设项目
  [参考文献]
  [1]胡昭民.游戏设计概论(第3版).北京:清华大学出版社,2011
  [2]王小妮.基于嵌入式系列课程的教学改革与探索[J].教育理论与教学研究,2013.5
  [3](美)Scott Jacobs.游戏编程精粹7[M].北京:北人民邮电出版社,2010
  [4]王小妮、魏桂英、杨根兴.嵌入式组件设计[M].北京航空航天大学出版社,2012
  [5](美)Andrew Binstock. 程序员实用算法[M].北京:机械工业出版社,2009
  
其他文献
[摘要]教师心理素质发展有利于学生人格的健全发展。影响教师心理健康状况的因素是多方面的。对教师的心理问题决不能掉以轻心,这不仅需要教师个人的努力,同时也需要学校的大力配合。  [关键词]心理健康心理调节研究材料已证实,教师有心理障碍的人数比社会平均值要高得多。教师的人格在师生相互交往过程中对学生产生巨大的影响,如果教师的人格不健全,心理不健康,又怎能培养出身心健康的学生?现代社会是竞争激烈的社会,
期刊
[摘要]所谓高效课堂是指在常态的课堂教学中,通过教师的引领和学生积极主动的学习思维过程,在单位时间内(一般是一节课)高效率、高质量地完成教学任务、促进学生获得高效发展。小学语文教学是小学教育教学的重中之重。创设小学语文高效课堂,则显得尤为重要。“高效课堂”中教师既是学生学习的组织者、引导者、促进者、服务者,也是一个学者。高效课堂教学表现为学生思维活跃、节奏紧密,导致思维能力的长足发展。高效课堂让学
期刊
“煨”在现代汉语中的解释是:动词,用微火慢慢地煮。语文教学也需“慢慢”地品味,慢慢地吸收。因为我们面对的学生,就如我们的十根指头——不一般齐。每个学生来自不同的家庭,不同的地方。不同的环境,不同的家庭氛围造就了个性鲜明的孩子。面对这些不同品性的孩子,任何急功近利的行为只会欲速不达。所以,让我们放平心态,在教学的各个环节,充分发挥“煨”的精神。  一、识字教学中的“煨”  人教版小学语文第一册在第三
期刊
[摘要]《社会调查方法》是我国各类高等学校统计学、社会学及各种法学类专业普遍开设的重点课程。本文从实践教学和实证研究需要的两个角度,对我国《社会调查方法》课程的实践教学进行了专门研究和论述。指出了实践教学过程中经常采用的教学方法和教学质量控制的一般措施,以期对开设本课程的各类高等学校相关专业的教学质量控制与提高,给出具有实际操作性的建议和意见。  [关键词]高等学校社会调查方法实践教学一、问题的提
期刊
“小组合作学习”这一教学模式的应用给课堂教学注入了活力,它不仅充分发挥了师生间、生生间的相互交流,协作功能;而且还可以培养学生的合作意识、团队精神,让学生由被动变为主动,把个人自学、小组交流、全班讨论、教师指点等有机地结合起来,进而促使小组之间合作、竞争,激发了学习热情,挖掘了个体学习潜能,增大了信息量,使学生在互补促进中共同提高。下面是我在具体实践过程中的几点收获:  一、明确小组成员的分工  
期刊
[摘要]毕业论文题目的选定不是一下子就能够确定的,越南语专业学生在进行毕业论文选题的时候应掌握以下原则:一是选题应和自己所学专业有关;二是选题要难易适中,大小适度;三是选题要结合自身水平;四是选题最好建立在平时比较注意探索或感兴趣的问题的基础上;五是选题要具有创新性;六是选题要和查找文献资料同时进行;掌握这六个原则有利于越南语专业学生选择合适的题目进行写作。  [关键词]越南语毕业论文选题毕业论文
期刊
Q 本来是因为看世界杯而安装了CNTV的插件,现在想将其卸载掉,但是在添加或删除程序列表中找不到相应的项目了。请问如何才能将其卸载掉?
期刊
Q 购买索尼VPCCW28EC笔记本用于游戏和图片设计,发现使用不了多久就会感觉腕托处发烫,极大降低了操作舒适度,加散热底座、调低室内空调温度都不管用,这是否与独立显卡有关呢?可否解决?
期刊
[摘要]微课是一种新型的教学资源和学习方式。本文结合微课应用和发展现状,采用SWOT分析法,分析微课的教学优势、劣势、机会与威胁,并对其进行详细阐述。  [关键词]微课SWOT微学习一、概述  微课又叫活化课程的催化剂,它是指以视频为主要载体,记录教师在课堂内外教育教学过程中围绕某个重点、难点、疑点或教学环节而开展的精彩教与学活动全过程。时代呼唤微学习,片段化、专题化的微课给学生提供了更好的学习机
期刊
[摘要]古诗文教学要重视课堂诵读,要让学生尝试吟咏。教师要勇于率先示范诵读、读讲结合;进而让学生模仿着读,最后能够美读。诵读有助于形成优美的文言语感。  [关键词]古诗文诵读语感中国传统语文教育十分重视诵读,而诵读包括了吟咏、朗读和背诵三个基本因素。自现代以来,“诵读”一词在语文教育界淡出,取而代之的是“熟读背诵”、“朗读”“背诵”等词语。故而,在现代的语文课堂教学活动中对古典文学文本的理解接受过
期刊