下载此文档

第七章-游戏中的冲突检测.doc


文档分类:IT计算机 | 页数:约6页 举报非法文档有奖
1/6
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/6 下载此文档
文档列表 文档介绍
第七章游戏中的冲突检测教学提要冲突检测的方法介绍基于位图的冲突检测实例“战场生存记”中的冲突检测重点与难点 冲突检测的边际条件冲突检测技术与延迟循环的综合应用教学内容:冲突检测是指检测两个对象是否有重叠的部分或者某个对象是否覆盖了某个点。许多游戏必须使用到冲突检测,例如:格斗游戏,两个对战角色是否相碰是出招是否有效的前提。再比如台球游戏,如果台球在运动的过程中相碰,那么它应该有动量传递。正确地进行冲突检测,是这些游戏设计成败的关键点。冲突检测的方法介绍ActionScript给我们提供了三种冲突检测的方法。列表如下:名称描述提供者hitTestObject(目标显示对象)检测两个对象是否有重叠的部分DisplayObjecthitTestPoint(x,y[,形状标记])检测本对象是否覆盖了某个点DisplayObjecthitTest(参数列表)检测两个BitmapData是否有重叠的部分BitmapData现分别介绍如下:1、检测两个显示对象是否有重叠的部分使用显示对象的hitTestObject方法可以检测两个显示对象是否有重叠的部分。其语法如下:(目标显示对象); 它的返回值true表示有重叠,false表示没有重叠。但需要注意的是,这个函数以显示对象的外接矩形框作为评判是否重叠的依据。两个显示对象图像部分重叠当然好理解,但是如下图中的两个影片剪辑(矩形框是外接矩形区域示意图),在视觉上虽然没有重叠,但是由于它们的矩形框区域有交叉的部分,所以hitTestObject的返回值为true。外接矩形框示意图还有一个细节需要注意,如果影片剪辑在编辑过程中,或者是运行过程中有旋转,那么此时的情况会如何呢?例如上图中的五角星,如果旋转了一个某个角度,如下图所示:旋转后的外接矩形框示意图那么,进行冲突检测的时候,采用剪辑原有的方框(实线),还是大虚线方框,抑或是小虚线方框?实验结果表明,Flash采用的是大虚线方框作为冲突检测的矩形区域。2、检测显示对象与某一点是否重叠使用显示对象的hitTestPoint方法可以检测显示对象与某个坐标点是否重叠。形状标记为false(默认)时,使用显示对象的外接矩形框作为判断的依据,为true时,使用显示对象的实体像素作为判断的依据与坐标点进行检测。其语法如下:(x,y[,形状标记]);可选参数默认值是false,它表示使用边框作为判断的依据。参数x和参数y指出了场景中的一个坐标,当形状标记值为true的时候,则判断显示对象的实际形状与指定的作标点是否冲突,当形状标记为false的时候,则判断显示对象的矩形形状区域与指定的作标点是否冲突。如下图所示,显示对象的点冲突检测五角星剪辑和三个坐标点A、B、C在形状标记不同取值下hitTestPoint的返回值如下表:形状标记truefalseAfalsetrueBtruetrueCfalsefalse提示:大多数游戏中,将尺寸较小的剪辑简化为点,用hitTestPoint检测它与某个对象是否冲突。例如战斗机游戏中,所有的子弹都被简化成质点。这显著提高了游戏的性能,也使爆炸点更贴近战斗机的轮廓。例如“战场生存记”游戏中就采用点探测的方式实现冲突检测。3、对位图数据进行像素级别的冲突检测使用BitmapDat

第七章-游戏中的冲突检测 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数6
  • 收藏数0 收藏
  • 顶次数0
  • 上传人qiang19840906
  • 文件大小166 KB
  • 时间2019-09-19