计算机与现代化

• 算法设计与分析 • 上一篇    下一篇

一种快速的双重层次包围盒碰撞检测算法

  

  1. (南京航空航天大学计算机科学与技术学院,江苏南京211100)
  • 收稿日期:2017-11-28 出版日期:2018-06-13 发布日期:2018-06-13
  • 作者简介:刘超(1992-),男,湖北洪湖人,南京航空航天大学计算机科学与技术学院硕士研究生,研究方向:计算机仿真与虚拟环境中的碰撞检测; 蒋夏军(1973-),男,讲师,博士,研究方向:计算机仿真,数据库; 施慧彬(1966-),男,副教授,博士,研究方向:计算机体系结构,可重构计算。
  • 基金资助:
    江苏省自然科学基金资助项目(BK20140826)

A Fast Collision Detection Algorithm Based on Dual Bounding Volume Hierarchy

  1. (College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing 211100, China)
  • Received:2017-11-28 Online:2018-06-13 Published:2018-06-13

摘要: 传统的包含方向包围盒(OBB)的混合包围盒结构大多只是利用了OBB的紧密性特点,没有对OBB之间的相交测试进行改进,而OBB相交测试却占了这类算法的大部分运行时间。基于此,提出一种基于AABB-OBB双重包围盒的碰撞检测算法,外层的AABB可以快速排除分离距离较大的模型对,而当AABB相交时,与传统需要检测15条潜在分离轴的方法不同,内层的OBB之间的相交测试只需检测特定的5条分离轴。最后在算法的基本图元相交测试阶段,利用OBB之间相交测试所计算的中间值代替三角形的坐标值,省去不同模型中的三角形坐标变换,这一步骤进一步提升了整个算法的效率。

关键词: 碰撞检测, 轴向包围盒, 方向包围盒, 层次包围盒, 三角形相交测试, 坐标系变换

Abstract: The traditional OBB-based hybrid bounding box structures mostly only take advantage of the compactness of the OBB, and do not improve the overlap tests between the bounding boxes, but the tests between bounding boxes take up most of the time for such algorithms. So, a collision detection algorithm based on a dual bounding volume hierarchy is proposed, the outer AABB can quickly exclude far-off model pairs, and when the AABB intersects, unlike the traditional method of detecting 15 potential separation axes, the overlap test between the OBBs in the inner layer only needs to detect a particular five separate axis. In the basic element overlap test phase of the algorithm, the intermediate value calculated by the overlap test between OBBs is used to replace the values of the triangles, which eliminates the triangular coordinate transformation in different models. This step also improves the efficiency of the whole algorithm.

Key words: collision detection, aligned-axis bounding box, oriented bounding box, bounding volume hierarchy, triangle-triangle overlap test, coordinate transformation

中图分类号: