论文部分内容阅读
快速精确的碰撞检测对于提高虚拟环境的真实感和沉浸感有着非常重要的作用。碰撞检测的研究目标是如何在很高的实时交互要求下完成大量复杂物体的碰撞检测。层次包围盒是广泛使用的一种方法。常见类型有Sphere、AABB、OBB和FDH等,就刚体而言,基于OBB的碰撞检测算法性能最好。本文是大型复杂环境中的刚体为研究对象,对基于OBB碰撞检测方法进行了研究、分析。主要做了以下工作。在研究OBB层次包围盒固有特性的基础上,实现构建OBB和OBB层次包围盒树、包围盒问重叠测试等技术。并结合对象模型的层次结构特点,提出了新的OBB树的构建和更新。当OBB数进行更新时,该方法减少了重新计算OBB包围盒的数目,加快了OBB树的更新速度,使基于OBB碰撞检测方法适合于有多个刚体模块组成的会发生变形的对象,如机器人、虚拟人。针对OBB碰撞检测算法,研究利用包围盒与基本几何元素相交测试的优化方法,消除叶子节点包围盒,精简OBB层次结构,减少了OBB树的存储空间。研究了虚拟环境的时空相关性,提出了基于时空相关性的遍历跟踪策略,有效地减少了包围盒相交测试次数,提高了碰撞检测的运行效率。提出混合包围盒方法,通过简单的包围盒可以快速分离两个不相交的物体,减少物体相交测试的代价。试验结果表明,新的OBB层次包围盒构造方法,减少了OBB包围盒树更新时重新计算包围盒的数量,提高了OBB包围盒树的更新速度,很好地适合由刚体模块组成的对象发生变形时的情况。基于OBB的碰撞检测方法能很好的解决复杂环境中刚体的碰撞检测问题。