共查询到20条相似文献,搜索用时 46 毫秒
1.
碰撞检测是虚拟现实世界的一个关键问题。该文对常用的碰撞检测算法进行分析比较,针对普遍采用的两步算法,综合运用AABB树和规则空间划分算法,提出一种用于复杂的虚拟空间三维运动物体的碰撞检测改进算法。算法分成三步,每一步都排除不可能碰撞的元素。实验结果表明:该算法提高了碰撞检测性能,能满足复杂3D物体碰撞检测准确、快速的要求。 相似文献
2.
3.
目的 碰撞检测是虚拟现实,特别是虚拟装配中的关键技术。针对基于包围盒的碰撞检测算法的准确性和检测效率不足的问题,提出一种结合AABB轴对齐包围盒和空间划分的碰撞检测算法。方法 本文算法采用分步检测的方法,利用AABB算法来确定两包围盒的相交区域后,结合模型移动方向和运动趋势进行空间划分,利用碰撞检测的时空相关性,对时空相关的部分进行相交测试,通过将包围盒还原成三角面以及点的方式来保证检测的准确性。结果 本文算法与AABB层次包围盒二叉树算法、k-Dops包围盒算法以及BPS空间分割树算法进行对比实验分析。在碰撞的几何精度上,本文算法在大部分情况下与AABB算法和k-Dops算法的距离差超过阈值0.02,证明本文算法在碰撞几何精度上有明显的提高。在碰撞检测时耗上,随着碰撞检测难度的不断增加,本文算法在平移自由度下比AABB算法和BSP算法、在旋转自由度下比AABB算法和k-Dops算法的检测时间均降低了50%以上。在三角面数对算法碰撞检测时耗的影响上,当运动模型的三角面数较多时,本文算法表现出更高的稳定性。结论 结合AABB包围盒和空间划分方法的碰撞检测算法,在减少碰撞检测所需时间的同时提高了碰撞检测的准确性,可以满足虚拟装配技术中对碰撞检测算法准确性的要求,同时也能满足使用者实时性的交互习惯。 相似文献
4.
陶阳 《电脑编程技巧与维护》2010,(21):71-74
针对Vega中现有碰撞检测算法存在逼真度不足的现象,基于Segment类型的碰撞检测体,提出了一种自定义的AABB碰撞检测算法。通过定义12个Segment类型的碰撞检测体,构造出一个包围运动体的AABB盒,实现该运动体对场景的较为精确的碰撞检测。在该AABB盒的每条边的碰撞响应函数里面进行碰撞结果处理,提出了一种基于运动体的碰撞响应算法,用以提高视景仿真的逼真度。 相似文献
5.
基于层次包围盒的碰撞检测算法的存储优化 总被引:3,自引:0,他引:3
介绍了基于层次包围盒的碰撞检测算法的存储优化方法。该方法从存储空间的角度来改进基于AABB树的碰撞检测算法。根据AABB树的构造过程,减少内部节点的AABB包围盒的存储字节数;基于快速三角形相交测试算法,从叶节点结构里去掉包围盒信息,将叶节点从存储结构中删除。实验表明,利用AABB包围盒和叶节点的存储优化,既减少了算法的存储空间又加快了算法的执行时间。 相似文献
6.
针对Android手持终端中复杂游戏场景的碰撞检测需求,提出了一种基于包围球和AABB的实时碰撞检测算法。该算法针对不同的虚拟对象构建不同的包围盒,并将改进后的包围盒投影排序分组方法应用其中。将该算法与使用包围盒投影排序分组方法的包围球算法与AABB算法比较,实验表明,该算法在保持更高精度的前提下仍能满足复杂场景中实时碰撞检测的要求。 相似文献
7.
8.
9.
尽管JAVA3D在虚拟制造中得到广泛的应用,但是在基于JAVA3D的虚拟切削系统中,由于JA-VA3D原有的碰撞检测算法不完善,存在误判和误差较大的缺点。针对这些不足,提出了基于多视角的动态八叉树碰撞检测算法,分别从正前方、正上方、正左方和45°等轴测4个视角同时检测物体的碰撞情况,每个视角中采用动态八叉树算法对物体进行检测,只有当4个视角同时检测到碰撞时才认为发生碰撞。算法成功地避免了误判,减小原来的误差,实现了对JAVA3D碰撞检测算法的改进。 相似文献
10.
11.
对于碰撞检测算法,使用传统的AABB包围盒来构建包围盒层次树时,其包围盒层次树的层数、叶子结点的个数和各结点的存储字节数是影响碰撞检测效率的主要因素.为了减少结点存储容量对碰撞检测效率的影响,提高碰撞检测的效率,文中采取B+树的存储结构来存储包围盒等信息.在包围盒相交测试之前,使得各结点存储索引有序,不需要再对各结点进行额外的排序,减少了内存开销,并且避免了不必要的包围盒测试.此外B+树的非叶子结点不存储具体的数据信息,从而减少了整棵树的存储空间.实验表明,在检测环境和检测对象相同的条件下,使用B+树存储的AABB包围盒碰撞检测算法的检测时间明显比传统的AABB算法短. 相似文献
12.
虚拟环境中优化的OBB碰撞检测算法研究 总被引:4,自引:0,他引:4
碰撞检测是计算机图形学的研究热点之一,基于包围盒的碰撞检测算法是一种比较有效的碰撞检测算法.OBB紧密性较好,能有效提高系统的检测效率,但是相交测试的代价太大,根据AABB易于构造、计算简单但紧密性差的特点,提出并实现了优化的OBB碰撞检测算法.实验结果证明:优化算法能够较大幅度地提高了碰撞检测的实时性能,取得较好的效果. 相似文献
13.
胡咏梅 《计算机工程与科学》2012,34(6):127-130
针对碰撞检测算法实时性较差的缺点,本文提出基于AABB包围盒与OBB包围盒相结合的混合碰撞检测算法,首先由对象投影来判断是否相交,检测出不可能相交对象;然后对可能相交的对象投影反向构建AABB包围盒,快速地测试对象;再用OBB包围盒进行精确地检测,以实现虚拟环境对象间高效的碰撞检测。本文还针对传统的基元相交测试效率不高的缺点进行了一定的改进。实验结果表明,与另外两种算法对比,该方法在相同环境前提下能够有效的提高碰撞检测的效率。 相似文献
14.
为实现虚拟环境中可变形物体与刚体间实时的碰撞检测,提出了一种快速的基于混合包围盒层次结构的并行碰撞检测算法。算法充分利用包围盒在检测速度和精度上的不同侧重,对可变形物体建立Sphere和AABB混合包围盒层次树,对刚体建立Sphere和OBB混合包围盒层次树;每个物体的混合包围盒层次树又分成上层、中层和下层,每层使用不同的包围盒;在碰撞检测遍历时,上层使用Sphere和Sphere相交检测快速排除不相交物体,在中层使用Sphere和OBB的相交检测进一步排除物体相交的可能性,在下层使用AABB和OBB的相交检测较精确地确定物体是否相交;采用多线程技术,在多核设备上实现并行碰撞检测算法。实验结果表明,与经典的AABB算法相比较,该算法在效率方面具有明显优势,能够满足可变形物体与刚体的碰撞检测要求。 相似文献
15.
16.
游戏引擎是游戏开发的技术核心。为了更好地理解游戏引擎,根据游戏引擎的特点,介绍3D游戏引擎,并从实时渲染、交互性、多人参与、碰撞检测四个方面简要阐述了3D游戏引擎的特点。为理解3D游戏引擎技术提供了一个理论支持。下一步将对3D游戏引擎的关键技术进行研究。 相似文献
17.
在虚拟现实环境下,基于包围盒算法是一类重要碰撞检测算法,该文在比较了层次包围盒下的几种常用的包围盒技术,具体阐述了实时性好且较容易程序实现的轴一致包围盒(AABB)的定义、重叠测试和碰撞检测算法,并把该包围盒技术应用到虚拟现实系统的碰撞检测过程中,最终在VC++和OpenGL平台上实现了三维场景漫游过程中物体之间的精确碰撞检测。 相似文献
18.
19.
改进的基于AABB包围盒的碰撞检测算法 总被引:2,自引:0,他引:2
介绍了一种改进的基于AABB包围盒的碰撞检测算法,通过对对象不断的分割逐步构造出贴近对象的层次包围盒,在碰撞检测阶段对其逐层遍历以实现精确而快速的碰撞检测.实验结果表明,与层次包围球算法相比,该方法在构造二叉树和进行精确的碰撞检测时,性能都有较为明显的提高. 相似文献