一种基于obb 包围盒算法的改进

一种基于obb 包围盒算法的改进

ID:19449075

大小:205.00 KB

页数:7页

时间:2018-10-02

一种基于obb 包围盒算法的改进_第1页
一种基于obb 包围盒算法的改进_第2页
一种基于obb 包围盒算法的改进_第3页
一种基于obb 包围盒算法的改进_第4页
一种基于obb 包围盒算法的改进_第5页
资源描述:

《一种基于obb 包围盒算法的改进》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、一种基于OBB包围盒算法的改进作者:耿朝阳刘敏邮政编码:710032陕西省西安市新城区金花北路四号西安工业大学计算机科学与工程学院为了提高碰撞检测的速度,对虚拟环境中的物体进行了假设,提出了方向圆柱包围盒检测方法,并结合各类包围盒的特点,分析了不同类型包围盒之间算法,实现了层次包围盒碰撞检测算法的优化,提高了碰撞检测的速度,增强了系统的实时性。关键词:碰撞检测;虚拟环境;检测算法;方向圆柱包围盒Inordertoimprovetheefficiencyofcollisiondetectionofthevirtualobjectsintheenvironment

2、thehypothesis,andputforwardthedirectionofcylindricalboundingboxtestingmethod,combiningwiththecharacteristicsofallkindsoftheboundingbox,analyzesthedifferenttypebetweentheboundingboxalgorithm,achievestheboundingboxofcollisiondetectionalgorithmoptimizationtoimprovetheefficiencyofcollis

3、iondetection,andenhancethesystemofreal-time.Keywords:Collisiondetection;virtualenvironment;detectionalgorithms;boundingboxofdirectioncylindrical;1碰撞检测的基本原理虚拟场景中的碰撞问题包括碰撞检测和碰撞响应两部分,碰撞检测的目标就是发现碰撞并报告,为进一步的碰撞响应提供必要的信息;碰撞响应是在碰撞发生后,根据碰撞点和其他参数使发生碰撞的对象做出正确的动作,动态反映真实的效果。检测要求可按具体应用对精确性德要求分为精确

4、检测和近似检测两类,通常为加快速度,首先利用近似检测将多数明显不相交的物体对进行快速排除,然后再对可能相交的物体进行一步检测。1)检测是否有碰撞发生2)检测碰撞发生的位置3)检测物体间的距离4)预测下一次碰撞的时间2碰撞检测算法分类及其比较碰撞检测领域中的算法种类繁多,各有侧重,不存在统一的分类标准。这里从两个角度对碰撞检测算法进行分类:一是从时间域的角度来分;二是从空间域的角度来分。2.1基于时间域的检测算法从时间域的角度来分,碰撞检测算法可分为离散碰撞检测算法和连续碰撞检测算法两类。离散碰撞检测算法是指在时间轴的每个离散时刻t0,t1,……tn上不断地检测

5、场景中所有之间是否发生碰撞算法。由于算法的时间离散特性,这类算法至少存在以下两个问题:1)存在刺穿现象。当时间步长过大时,两个物体可能已发生了一定深度的刺穿才被检测到已发生碰撞,因此无法保证物体的运动真实性;2)会遗漏发生碰撞的情况。对于较狭窄的物体,当运动物体在相邻时间离散点的两个位置恰好处于该狭窄物体两侧时,离散算法将无法正确地检测出物体所发生的碰撞。2.2基于空间域的碰撞检测算法分类基于空间域的碰撞检测算法一直是人们研究的重点,目前已有相当多的研究成果。根据所采用结构的不同可将它们分为两类:空间剖分法和层次包围体法。其中,空间剖分法是采用对整个场景的层次

6、剖分技术来实现,而层次包围体法则是对场景中每个物体构建合理的层次包围体来实现。物体的层次包围盒检测方法是碰撞检测算法中广泛使用的一种方法。常见的包围体主要包括包围球、AABB、OBB包围盒。2.2.1基于球形包围盒检测法的碰撞检测在虚拟场景中,两个不规则的运动物体之间将要发生碰撞时,可以采用球形包围盒检测法来进行检测,当碰撞发生时,采取相应措施,避免碰撞。其实现如图2.1首先动态拾取虚拟物体,然后根据实际需要,为涉及到的每个虚拟对象创建球形包围盒。针对两个物体,获取两个球心之间的距离,同时获取两个球体各自的半径。当检测条件具备时,根据球形包围盒碰撞检测算法,判

7、断两个物体是否发生了碰撞。如果发生了碰撞,将进行碰撞响应,根据当前虚拟对象的特性,采取不同的响应方式。图2.1球形包围盒2.2.2基于坐标轴的包围盒轴向包围盒AABB是被定义为包含该对象各边平行于坐标轴的最小的六面体,是应用最早的包围盒。AABB可表示为:(2.1)其中,,,,,分别是该AABB在X,Y,Z坐标轴上的投影的最小和最大坐标值。分别计算组成对象的图元集合中各个元素顶点的x坐标、y坐标和z坐标的最小值和最大值即可确定,因此描述一个AABB仅需六个标量。AABB间的相交测试相对比较简单,相交测试采用区间测试的方法。AABB包围盒分别是在三个分离轴上投影

8、之后,在每个坐标轴采用区间测试,可以确

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。