针对存在大量运动物体的虚拟环境,提出一种基于空间八叉树剖分与流水线技术的并行碰撞检测算法。通过八叉树剖分,把虚拟空间剖分成一系列的子空间,然后只对同一空间中的结点进行碰撞检测。对空间内的每个物体构建包围盒树,同一空间中的任意两棵包围盒树遍历构成任务树,把任务树中的任务分配给不同的进程进行碰撞检测,并采用流水线与多线程技术,实现物体的并行碰撞检测。实验结果表明,与现有普通的基于八叉树的碰撞检测算法相比,碰撞检测效率得到明显提高。
In view of that virtual environment, where there are massive moving objects, a parallel collision detection algorithm based on oetree space division and pipeline is presented. The virtual environment is divided into a series of subspaees by octree division. Then it carries on the collision detection between the nodes in the same subspace. The bounding volumes trees are established for every object in the same subspace. The task trees are established by traversing the bounding trees. The tasks are assigned different processors to deal with. Pipelining and multi-threads are adopted, parallel collision detection is realized. Experiment results show that comparing with conventional collision detection based on octree, the efficiency of the algorithm is greatly improved.