- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于分类遍历碰撞检测优化算法
基于分类遍历碰撞检测优化算法
摘要:针对现有层次树遍历方法的低效率问题,提出了一种基于分类遍历的碰撞检测算法。首先根据两个物体树中节点的平衡因子差值来将所有的物体对进行分类:结构相似的,采用同步下降遍历方法;结构不相似的,采用交换下降遍历方法,这减少了相交测试的次数。然后加入时空相关性和优先级策略优化遍历过程。最后通过实验结果表明,相比基于统一遍历的碰撞检测算法,该算法缩短了相交测试的时间,物体数目越多,快速性优势越显著,大约可以缩减所需时间的1/5。
关键词:碰撞检测;层次包围盒;分类遍历;深度优先;物体结构;时空相关性
中图分类号: TP391.9; TP301.6
文献标志码:A
0 引言
在虚拟环境中,会有多个物体发生运动,它们不可能相互穿越。碰撞检测就是用来检测各物体在某一时刻是否占据了同一空间从而避免它们相互穿越的。这项技术多年来一直备受国内外专家学者的关注,现已形成了两类经典的算法:空间分割法和层次包围盒法。空间分割法[1]是将虚拟空间划分成一个个小区域,只对同处于一个区域的物体进行碰撞检测;而层次包围盒法实现起来更简单,并且检测更精准,所以更常用。它的核心思想是用体积略大而几何特性简单的包围盒来代替复杂的几何对象,通过构造层次树并对其进行遍历来确定物体的相交状态。现已经形成了包围球(sphere)层次树[2]、轴对齐包围盒(Axis Aligned Bounding Box, AABB)层次树[3]、任意方向包围盒(Oriented Bounding Box, OBB)层次树[4-5]、离散有向多面体(K-Discrete Orientation Polytopes, K-DOP)层次树[6]等经典的层次包围盒树。
在层次包围盒算法中,需要按某一下降规则遍历来确定两个包围盒层次树的相交状态。下降规则是相交测试的核心部分,它的好坏直接影响了相交测试的效率。早期,算法大多采用单一下降的规则[7],虽然实现简单,但是相交测试的次数却很多;后期,出现了同时下降规则[8-9],它一定程度上减少了节点间的相交测试次数,但有时却不能有效地缩减搜索空间。这两种遍历方法都没有考虑到物体对间结构的不同,而统一采用一种下降规则,这可能会降低相交测试的效率。
本文考虑待检测的物体对间结构的差异,提出了一种基于分类的深度优先遍历方法。算法将物体对分为两类:第一类为结构相似的,采用同步下降深度优先遍历方法;第二类为结构相差大的,采用交换下降深度优先遍历方法。此外,引入时间相关性的思想,使用优先级策略,对遍历过程进行优化,从而整体提高遍历的效率。
1 基于统一遍历的包围盒碰撞检测算法
基于统一遍历的包围盒碰撞检测算法,就是对所有待检测的物体对采用同一种遍历方法。常用的遍历方法有单一下降深度优先遍历和同步下降深度优先遍历方法。前者是先下降其中一棵树至叶节点,然后再下降另外一棵树;后者是同时下降两棵树。
现假设有两棵包含n个叶节点的层次树a和b,它们的叶节点相交了,但是2个物体却未真正地碰撞。那么采用单一下降深度优先遍历方法将会执行2n-1-1次内部节点与节点间的相交测试和(2n-1)2n-1次叶子节点与节点、节点与叶节点、叶节点与叶节点间的相交测试,累计共22n-1-1次相交测试;而同步下降深度优先遍历将会执行(22(n-1)-1)/3次内部节点间的相交测试和22(n-1)次叶节点与节点、节点与叶节点、叶节点与叶节点间的相交测试,累计共(22n-1)/3次相交测试。当n趋近于无穷大,后者的测试量仅为前者的2/3;并且单一下降规则并不太好,若先下降a(或b)的叶子节点几乎都与b(或a)相交,将导致b(或a)的递归次数为a(或b)的叶子节点数,那么结构a(或b)的设计就没有太大意义了。同步下降规则也有其局限性,它虽然能够快速地下降到叶节点;但是对于尺寸和结构相差大的a和b而言,同步下降遍历却不能有效地缩减搜索空间。
综上所述,物体的结构对遍历方法的有效性是有一定影响的。所以本文根据物体对间结构的差别,采用不同的深度优先遍历方法,避免上述下降规则所产生的问题,使得遍历更高效,碰撞检测的实时性更高。
2 基于分类遍历的包围盒碰撞检测算法
2.1 树的度数
在包围盒碰撞检测算法中,为了确定物体间的相交状态就会构造物体的层次树结构,这就会涉及树度数的选择问题。树的深度和度数是成反比的。较高度数的树的深度一般较小,从树根遍历到叶节点的步数会少,而深度大的树的度数一般较高,当前访问节点的子节点数就会增多。考虑两者之间的关系,本文选择二叉树层次结构。因为二叉树优于d叉树[10-11]。当给定n个叶子节点的平衡d叉树,采用单一下降与同步下降遍历方法的消耗分别与f1(d)=
您可能关注的文档
最近下载
- 浙江省七彩阳光新高考研究联盟2024-2025学年高二上学期11月期中考试语文试题 含解析.docx VIP
- 《企业内部控制问题研究—以天方医药为例(论文)》11000字.docx VIP
- 双特变速器培训.pptx
- 助产技术平产接生教案.pdf VIP
- 浙江省七彩阳光新高考研究联盟2024-2025学年高二上学期11月期中联考数学试题含解析.docx VIP
- 青岛地铁笔试历年真题.pdf
- 从农业大国到农业强国.doc VIP
- 上海市虹口区新复兴中学2024—2025学年上学期期中考试九年级数学试卷.docx VIP
- 浙江省七彩阳光新高考研究联盟2024-2025学年高二上学期11月期中联考化学试题含解析.pdf VIP
- 浙江省七彩阳光新高考研究联盟2024-2025学年高二上学期11月期中物理试题含解析.docx VIP
原创力文档


文档评论(0)