CN102663825A - 一种三维碰撞检测方法 - Google Patents
一种三维碰撞检测方法 Download PDFInfo
- Publication number
- CN102663825A CN102663825A CN201210049318XA CN201210049318A CN102663825A CN 102663825 A CN102663825 A CN 102663825A CN 201210049318X A CN201210049318X A CN 201210049318XA CN 201210049318 A CN201210049318 A CN 201210049318A CN 102663825 A CN102663825 A CN 102663825A
- Authority
- CN
- China
- Prior art keywords
- bounding box
- tree
- node
- changes
- balance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 59
- 238000000034 method Methods 0.000 claims abstract description 72
- 241000208199 Buxus sempervirens Species 0.000 claims abstract description 34
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 6
- 230000000694 effects Effects 0.000 abstract description 5
- 230000001133 acceleration Effects 0.000 abstract 2
- 238000005192 partition Methods 0.000 abstract 1
- 238000007781 pre-processing Methods 0.000 abstract 1
- 238000012360 testing method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种三维碰撞检测方法。采用分治策略自上而下的方法构建游戏场景的包围盒树,进行碰撞检测,引进流水线技术对检测进行加速。采用分治策略建立平衡包围盒树,使用的是两路分治即二叉树。其数据结构在预处理阶段一次性建好。由于建立的包围盒树大致平衡,故并行遍历包围盒树可极大提高碰撞检测的效率。采用多级并行处理加速技术,不仅在单处理器而且在多处理器机器中都有很好的加速作用,引入多线程节省资源,并且能够根据状态智能地调整线程数量使得资源利效率最高。
Description
技术领域
本发明涉及计算机数据处理领域,尤其涉及一种三维碰撞检测方法。
背景技术
碰撞检测是计算机游戏中需要解决的问题之一,它的核心任务是检测游戏场景中两个或多个物体彼此之间是否发生接触或进入。当前,三维几何模型越来越复杂,画面效果越来越逼真,同时人们对交互的实时性、场景的真实性的期望越来越高,这些都对碰撞检测方法提出了较高的要求。
近二十多年来,研究人员在碰撞检测领域中做了相当多有意的工作,提出了一些较成熟的算法,并开发了相应的软件。研究人员根据不同的研究对象,采用了不同的研究方法,由此提出多种多样的碰撞检测算法。下面先对碰撞检测算法从时间和空间的角度对它们做一个划分:(1)基于时间域,可以分为离散和连续的碰撞检测算法。离散碰撞检测算法是指在每一离散的时间点上进行碰撞检测,其优势在于检测速度上,但可能会漏测本该发生的碰撞或者发生物体互相进入的情形;连续碰撞检测算法是指在连续的时间间隔内进行碰撞检测,它的正确性有保证,但计算开销过大,容易在速度方面拖后腿,致使实时性得不到很好满足。(2)基于空间域,可以分为基于物体空间和图像空间的碰撞检测算法。基于物体空间的碰撞检测算法又可以进一步划分为采用一般表示模型的碰撞检测算法和采用空间结构的碰撞检测算法,其中采用空间结构的碰撞检测算法又分空间剖分法(space decomposition)和层次包围体树法(hierarchicalbounding volume trees),这两类方法都是通过尽可能减少进行精确求交的物体对或基本几何元素的个数来提高算法效率的。不同的是,空间剖分法(如BSP树)采用对整个场景的层次剖分技术来实现,而层次包围体树法则是对场景中每个物体建构合理的层次包围体树来实现。
目前现有的专利文献中关于碰撞检测方法很多,其中一种在服务器端实现三维游戏碰撞检测的方法,主要包括以下步骤:在三维游戏场景中的物体外面预置一个包围体,所述包围体包围该物体或者物体的主要部分,而且包围体采用的是球状包围体;在游戏玩家的外面预置一个球状包围体,所述包围体包围玩家或者玩家的主要部分,表示包围体的面的数值存储于游戏地图文件中;当玩家移动要与物体进行碰撞时,对玩家包围体的面与物体的包围体的面进行碰撞检测。具体参见图1。
针对目前的现有技术,其存在的缺点是:采用包围球来作为物体和玩家的包围体,适合于长宽高相差不多的物体,而对与长条形的物体,包围球的紧密型不好,这会让游戏不逼真,效果很差,这会出现实际没有碰撞而程序却检测到了碰撞的情况。碰撞检测算法的并行性不足,没有充分挖掘检测算法中可以采用流水线技术进行加速处理。
发明内容
本发明的目的是为了克服现有技术的缺陷,提供一种三维碰撞检测方法。
一种三维碰撞检测方法,需要先建立场景的一个数据表示结构,即场景树;场景树是由平衡包围树来实现,对游戏场景中的所有物体进行自上而下的构建AABB平衡包围树;包围树中每一个结点是一个包围盒;其特征在于,a.首先建立模型的包围盒,作为包围盒树的根结点;b.其次按照一定的规则将模型分成两个或者多个部分,建立每个部分的包围盒和相应的结点,将这些新结点作为根结点的子结点;然后按照步骤b的方法分裂与每个子结点对应的模型,递归地建立包围盒树。
优选的,本发明采用分治策略自上而下的方法构建游戏场景的包围盒树,进行碰撞检测,引进流水线技术对检测进行加速。
在流水线技术中,问题被分成一系列必须是一个接一个完成的任务,每个任务由独立的进程或处理器执行,采用下列3种计算类型,用流水线方法进行加速:
(1)执行整个问题的多个实例;
(2)必须处理一系列的数据项,而每个数据项需要多次操作;
(3)进程在完成自己的所有内部操作之前能够把下一个进程启动所需的信息向前传送;
将上述三种情况分别定义为类型1、类型2、类型3。
本发明采用AABB平衡包围树的构建过程如下:
(1)对每个物体建立其整体的包围盒,将其作为该物体平衡包围盒树的根结点,此结点包含了组成此物体的所有多边形;
(2)由于使用的是AABB包围盒,采用基于分裂平面的方法将根结点的包围盒划分成左右两个子结点;
分裂平面的选择是使包围盒树平衡的关键,首先确定分裂轴,使用最长轴方法,即选择的方向轴是包围盒在此方向上最长的;而后确定分裂点,选择根结点集合中所有基本几何元素的中心点在分裂轴上的投影,以最小点和最大点为两个中心点,按距离将所有投影点分为两组;将距两中心点等距的点归入含投影点少的一组。
具体的三维碰撞检测方法的流程如下:Step1:输入物体A和B,分别建立A,B的平衡包围盒树,转Step2;
Step2:将(a0,b0)加入到任务树节点存储队列LiveSet中,转Step3;
Step3:判断LiveSet是否为空,若不为空则转Step4,否则转Step11;
Step4:从LiveSet中弹出(a0,b0),转Step5;
Step5:判断(a0,b0)是否相交,若不相交则转Step3,否则转Step6;
Step6:判断a0,b0的结点状态,a0,b0均为叶子结点,则转Step7;a0,b0均不是叶子结点转Step8;a0是叶子结点,b0不是则转Step9;a0不是叶子结点b0是则转Step10;
Step7:用基本几何元素对a0,b0进行碰撞检测,若碰撞则返回True,否则返回False;
Step8:将(a1,b1),(a1,b2),(a2,b1),(a2,b2)加入到LiveSet中,转Step3;
Step9:将(a0,b1),(a0,b2)加入到LiveSet中,转Step3;
Step10:将(a1,b0),(a2,b0)加入到LiveSet中,转Step3;
Step11:返回False,结束。
本发明技术方案带来的有益效果:1)包围体的选取有很多种,本发明选用AABB包围盒作为物体的包围体具有简单快速和检测精确的特点;
2)采用多级并行处理加速技术,不仅在单处理器而且在多处理器机器中都有很好的加速作用,引入多线程节省资源,并且能够根据状态智能地调整线程数量使得资源利效率最高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是现有技术中碰撞检测流程图;
图2是本发明中碰撞检测系统流程图;
图3是本发明中流水化进程图;
图4是本发明中碰撞检测过程中简单任务树图;
图5是本发明碰撞检测流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的提供一种基于AABB(Axis-Aligned Bounding Boxes)包围体的三维碰撞检测方法,采用分治策略自上而下的方法构建游戏场景的包围盒树,进行碰撞检测,引进流水线技术对检测进行加速。
假设三维空间中有N个运动模型,它们随着时间改变位置和状态,设三维几何空间为R,用三维几何坐标系统Fw表示,在Fw中用FA表示模型A所占的集合,显然FA是Fw的子集。那么Fw随着时间的变化构成了一个四维空间坐标系统Cw,模型A沿着一定轨迹运动就形成了Cw的子集,该子集表示为CA。碰撞检测就是判断C1∩C2∩...∩Cn≠Φ是否成立。
三维物体之间的碰撞检测通常需要先建立场景的一个数据表示结构,即场景树。在本发明中场景树是由平衡包围树来实现,对游戏场景中的所有物体进行自上而下的构建平衡包围树。包围树中每一个结点是一个包围盒,采用AABB包围盒具有简单快速等优点。
对游戏玩家和物体之间的碰撞检测以及物体与物体之间的碰撞检测,其本质上是对场景中树的一种遍历过程。检测过程中的可重复性使得可以采用流水线技术对检测过程进行加速处理,系统图参见图2:
包围盒树可以按照自下而上的方式或者自上而下的方式构造,这要取决于包围盒的种类和算法的意图。大多数层次结构都采用自上而下的方式,即首先建立模型的包围盒,作为包围盒树的根结点;其次按照一定的规则将模型分成两个或者多个部分,建立每个部分的包围盒和相应的结点,将这些新结点作为根结点的子结点;然后按照第二步的方法分裂与每个子结点对应的模型,递归地建立包围盒树。
对于二叉树而言,当且仅当包围盒树中的每一个叶结点对应于S的一个单元素子集,即只包含一个基本几何元素时则称一棵包围盒树为完全的。由以上描述可知,包围盒树最多有2n-1个结点,其中有n个叶结点,并且要求两个子包围盒内的多边形个数大致相等;一棵完全的包围盒树的高度至少为logn,此时称为树是平衡的。
分治策略的特点是将一个问题分为与原来的较大问题有相同形式的子问题,进一步分为较小的问题,通常是通过递归的方法,直到不需要再分解为止。接着就完成这些简单的任务并把结果合并,然后按更大的任务继续合并,直到获得最后的结果。分治策略将一个任务在每一步分为M(M>2)个部分,称为M路分治,通常有二叉树(M=2)和四叉树(M=4)。
在流水线技术中,问题被分成一系列必须是一个接一个完成的任务,每个任务由独立的进程或处理器执行,如图3所示:
假设一个问题能够被分解成一系列的顺序任务,那么采用下列3种计算类型,可以用流水线方法进行加速:
(1)执行整个问题的多个实例。
(2)必须处理一系列的数据项,而每个数据项需要多次操作。
(3)进程在完成自己的所有内部操作之前能够把下一个进程启动所需的信息向前传送。
将上述三种情况分别定义为类型1、类型2、类型3。
应用上述所介绍的理论提出了一种并行碰撞检测算法,本算法主要采用分治策略建立平衡包围盒树,使用的是两路分治即二叉树。其数据结构在预处理阶段一次性建好。由于建立的包围盒树大致平衡,故并行遍历包围盒树可极大提高碰撞检测的效率。包围盒树的遍历实质是一个基于分治或树搜索的过程,将此过程实行并行化;应用流水线技术将整个环境中所有物体的碰撞检测划分为m个任务,每个任务由p个进程执行;每个进程采用多线程进行处理。从而使碰撞检测得到加速。
包围盒间相交测试的速度直接影响到碰撞检测的速度。AABB包围盒间的相交测试是所有包围盒类型中最简单、速度最快的一种。由于AABB包围盒可以由3对与坐标轴正交的平行平面对来定义,故AABB包围盒间的相交测试可以通过它在X、Y、Z三个坐标轴上的投影区间之间的重叠测试来完成,如果两AABB包围盒在任何一个坐标轴上的投影区间是不重叠的,则可判定它们不相交;只有当它们在3个坐标轴上的投影区间都重叠,它们才是相交的。因此,AABB包围盒间的相交测试最多只需要6次比较运算,所以本发明使用此包围盒。
平衡包围树的构建过程如下:
(1)对每个物体建立其整体的包围盒,将其作为该物体平衡包围盒树的根结点,此结点包含了组成此物体的所有多边形。
(2)由于使用的是AABB包围盒,采用基于分裂平面的方法将根结点的包围盒划分成左右两个子结点。
分裂平面的选择是使包围盒树平衡的关键,首先确定分裂轴,使用最长轴方法,即选择的方向轴是包围盒在此方向上最长的;而后确定分裂点,选择根结点集合中所有基本几何元素的中心点在分裂轴上的投影,以最小点和最大点为两个中心点,按距离将所有投影点分为两组。将距两中心点等距的点归入含投影点少的一组。
对每个结点采用如上的方法递归,建立每个物体的包围盒树。适当的递归终止条件采用如下简单的线性判别函数
p(x)=ATB (1)
式中:A=(a1,a2,...,an),B=(b1,b2,...,bn);b1,b2,...,bn为递归终止的各种因素,常取为:包围盒树要求的高度,叶子结点中要求所含基本几何元素的最多数;a1,a2,...,an分别为与b1,b2,...,bn对应的加权值。
将遍历两个物体的平衡包围盒树的过程定义成一棵任务树的遍历。简单地表示如图4所示,将任务树的结点采用队列(LiveSet)存储。
进行碰撞检测的流程可参见图5,具体如下:
Step1:输入物体A和B,分别建立A,B的平衡包围盒树,转Step2;
Step2:将(a0,b0)加入到任务树节点存储队列LiveSet中,转Step3;
Step3:判断LiveSet是否为空,若不为空则转Step4,否则转Step11;
Step4:从LiveSet中弹出(a0,b0),转Step5;
Step5:判断(a0,b0)是否相交,若不相交则转Step3,否则转Step6;
Step6:判断a0,b0的结点状态,a0,b0均为叶子结点,则转Step7;a0,b0均不是叶子结点转Step8;a0是叶子结点,b0不是则转Step9;a0不是叶子结点b0是则转Step10;
Step7:用基本几何元素对a0,b0进行碰撞检测,若碰撞则返回True,否则返回False;
Step8:将(a1,b1),(a1,b2),(a2,b1),(a2,b2)加入到LiveSet中,转Step3;
Step9:将(a0,b1),(a0,b2)加入到LiveSet中,转Step3;
Step10:将(a1,b0),(a2,b0)加入到LiveSet中,转Step3;
Step11:返回False,结束。
本发明中一个重要的并行化处理是在上述的Step4中,将LiveSet中所有的任务结点同时弹出,多个任务结点间进行并行的碰撞检测。
本发明的另一个并行化加速是利用流水线技术进行加速处理。将采用前面提到的类型1,其流水线可以用时空图来说明。假设每一个进程完成的时间是相同的。每一个时间段就是一个流水线周期。因此问题的每一个实例都需要经历6个顺序进程:p0,p1,p2,p3,p4和p5。经过起始阶段的阶梯效果之后,每一个流水线周期就可以完成问题的一个实例。
有p个进程构成的流水线完成m个问题的执行需要(m+p-1)个流水线周期,执行每个问题的平均周期数为(m+p-1)/m。当m很大时,每个问题实例趋近于一个流水线周期。在任何情况下,流水线过了开始的(p-1)个周期(流水线延迟)后的每个周期将完成问题的一个实例。其加速比为p∶1。
如有n个物体,则形成n*n棵任务树,由所有物体的平衡包围盒树通过两两组成多棵任务树,将每棵任务树的遍历看作一个任务,然后将每个任务划分成p个进程,其中p不宜大于32。
进程数p的确定可以采取以下方法:
方法采用的流水线技术属于类型1,每个任务结点的执行算法是相同的,所用的时间定为一个流水线周期。
由前面规定的b1为平衡树的高度,则每棵任务树的高度也为b1,所以结点树为:(4b1-1)/3。如果将p的个数定为任务结点的个数,则总的计算执行时间为ttotal:
ttotal=(tcomp+tcomm)(m+p-1)。其中,m为任务实例数;p为进程数;tcomp和tcomm分别为计算时间和通信时间。
由于每个进程占用的资源太多,应选择合适的进程数p。考虑每个流水线周期处理d个结点,则进程数p’=p/d,tcomp=d,且ttotal=(d+tcomm)(m+p’-1)。所以d和p的选择需要找到平衡点才能提高效率。d个结点可以应用线程并行技术。一个进程中可以同时执行的线程数是由处理器的操作系统决定的。提出p以及对应总时间量的计算公式如下:
ttotal=(d+tcomm)(m+p′-1) (3)
总之,本发明提出了一种快速的可多层次并行化的三维碰撞检测方法,且在三维游戏中能够得到很好的应用。采用AABB包围盒的方法比包围球更为精确和快速,并且对一些长宽高比例相差比较大的物体有着很好的处理。采用自上而下的建立场景的包围盒树,并且能够达到很好的近似平衡,使得遍历树更为快速。将碰撞检测进行多级并行化处理,大大的提高了检测效率。
本发明技术方案带来的有益效果:
1)包围体的选取有很多种,本发明选用AABB包围盒作为物体的包围体具有简单快速和检测精确的特点;
2)采用多级并行处理加速技术,不仅在单处理器而且在多处理器机器中都有很好的加速作用,引入多线程节省资源,并且能够根据状态智能地调整线程数量使得资源利效率最高。
以上对本发明实施例所提供的一种三维碰撞检测方法,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (5)
1.一种三维碰撞检测方法,需要先建立场景的一个数据表示结构,即场景树;场景树是由平衡包围树来实现,对游戏场景中的所有物体进行自上而下的构建AABB平衡包围树;包围树中每一个结点是一个包围盒;其特征在于,a.首先建立模型的包围盒,作为包围盒树的根结点;b.其次按照一定的规则将模型分成两个或者多个部分,建立每个部分的包围盒和相应的结点,将这些新结点作为根结点的子结点;然后按照步骤b的方法分裂与每个子结点对应的模型,递归地建立包围盒树。
2.如权利要求1所述的方法,其特征在于,采用分治策略自上而下的方法构建游戏场景的包围盒树,进行碰撞检测,引进流水线技术对检测进行加速。
3.如权利要求1或2所述的方法,其特征在于,在流水线技术中,问题被分成一系列必须是一个接一个完成的任务,每个任务由独立的进程或处理器执行,采用下列3种计算类型,用流水线方法进行加速:
(1)执行整个问题的多个实例;
(2)必须处理一系列的数据项,而每个数据项需要多次操作;
(3)进程在完成自己的所有内部操作之前能够把下一个进程启动所需的信息向前传送;
将上述三种情况分别定义为类型1、类型2、类型3。
4.如权利要求1所述的方法,其特征在于,AABB平衡包围树的构建过程如下:
(1)对每个物体建立其整体的包围盒,将其作为该物体平衡包围盒树的根结点,此结点包含了组成此物体的所有多边形;
(2)由于使用的是AABB包围盒,采用基于分裂平面的方法将根结点的包围盒划分成左右两个子结点;
分裂平面的选择是使包围盒树平衡的关键,首先确定分裂轴,使用最长轴方法,即选择的方向轴是包围盒在此方向上最长的;而后确定分裂点,选择根结点集合中所有基本几何元素的中心点在分裂轴上的投影,以最小点和最大点为两个中心点,按距离将所有投影点分为两组;将距两中心点等距的点归入含投影点少的一组。
5.如权利要求1所述的方法,其特征在于,具体的三维碰撞检测方法的流程如下:Step1:输入物体A和B,分别建立A,B的平衡包围盒树,转Step2;
Step2:将(a0,b0)加入到任务树节点存储队列LiveSet中,转Step3;
Step3:判断LiveSet是否为空,若不为空则转Step4,否则转Step11;
Step4:从LiveSet中弹出(a0,b0),转Step5;
Step5:判断(a0,b0)是否相交,若不相交则转Step3,否则转Step6;
Step6:判断a0,b0的结点状态,a0,b0均为叶子结点,则转Step7;a0,b0均不是叶子结点转Step8;a0是叶子结点,b0不是则转Step9;a0不是叶子结点b0是则转Step10;
Step7:用基本几何元素对a0,b0进行碰撞检测,若碰撞则返回True,否则返回False;
Step8:将(a1,b1),(a1,b2),(a2,b1),(a2,b2)加入到LiveSet中,转Step3;
Step9:将(a0,b1),(a0,b2)加入到LiveSet中,转Step3;
Step10:将(a1,b0),(a2,b0)加入到LiveSet中,转Step3;
Step11:返回False,结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210049318XA CN102663825A (zh) | 2012-02-29 | 2012-02-29 | 一种三维碰撞检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210049318XA CN102663825A (zh) | 2012-02-29 | 2012-02-29 | 一种三维碰撞检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102663825A true CN102663825A (zh) | 2012-09-12 |
Family
ID=46773301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210049318XA Pending CN102663825A (zh) | 2012-02-29 | 2012-02-29 | 一种三维碰撞检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102663825A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104408685A (zh) * | 2014-11-28 | 2015-03-11 | 华南理工大学 | 一种混合cpu和gpu的大规模物体群的碰撞剔除方法 |
CN104699946A (zh) * | 2014-12-30 | 2015-06-10 | 北京像素软件科技股份有限公司 | 一种游戏场景的管理方法及装置 |
CN106096082A (zh) * | 2016-05-24 | 2016-11-09 | 国网安徽省电力公司宿州供电公司 | 一种基于数据分块及并行处理的碰撞检测方法 |
WO2017092252A1 (zh) * | 2015-11-30 | 2017-06-08 | 腾讯科技(深圳)有限公司 | 实时虚拟场景中碰撞体之间碰撞探测的方法、终端和存储介质 |
CN108615262A (zh) * | 2018-04-28 | 2018-10-02 | 重庆大学 | 一种基于gpu的海量模型并行碰撞检测方法 |
CN112667648A (zh) * | 2020-12-21 | 2021-04-16 | 北京像素软件科技股份有限公司 | 地形动态更新方法、装置、电子设备和可读存储介质 |
US11922574B2 (en) | 2019-06-17 | 2024-03-05 | Tencent Technology (Shenzhen) Company Limited | Method and device for determining plurality of layers of bounding boxes, collision detection method and device, and motion control method and device |
-
2012
- 2012-02-29 CN CN201210049318XA patent/CN102663825A/zh active Pending
Non-Patent Citations (1)
Title |
---|
涂超: "虚拟空间中的碰撞检测", 《武汉理工大学学报》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104408685A (zh) * | 2014-11-28 | 2015-03-11 | 华南理工大学 | 一种混合cpu和gpu的大规模物体群的碰撞剔除方法 |
CN104699946A (zh) * | 2014-12-30 | 2015-06-10 | 北京像素软件科技股份有限公司 | 一种游戏场景的管理方法及装置 |
CN104699946B (zh) * | 2014-12-30 | 2018-10-30 | 北京像素软件科技股份有限公司 | 一种游戏场景的管理方法及装置 |
WO2017092252A1 (zh) * | 2015-11-30 | 2017-06-08 | 腾讯科技(深圳)有限公司 | 实时虚拟场景中碰撞体之间碰撞探测的方法、终端和存储介质 |
US10235764B2 (en) | 2015-11-30 | 2019-03-19 | Tencent Technology (Shenzhen) Company Limited | Method, terminal, and storage medium for detecting collision between colliders in real-time virtual scene |
CN106096082A (zh) * | 2016-05-24 | 2016-11-09 | 国网安徽省电力公司宿州供电公司 | 一种基于数据分块及并行处理的碰撞检测方法 |
CN108615262A (zh) * | 2018-04-28 | 2018-10-02 | 重庆大学 | 一种基于gpu的海量模型并行碰撞检测方法 |
US11922574B2 (en) | 2019-06-17 | 2024-03-05 | Tencent Technology (Shenzhen) Company Limited | Method and device for determining plurality of layers of bounding boxes, collision detection method and device, and motion control method and device |
CN112667648A (zh) * | 2020-12-21 | 2021-04-16 | 北京像素软件科技股份有限公司 | 地形动态更新方法、装置、电子设备和可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102663825A (zh) | 一种三维碰撞检测方法 | |
CN109839935B (zh) | 多agv的路径规划方法及设备 | |
Guy et al. | Clearpath: highly parallel collision avoidance for multi-agent simulation | |
CN103593817A (zh) | 用于使用并行管道的图形处理的方法和设备 | |
Pan et al. | GPU-based parallel collision detection for fast motion planning | |
CN112862874B (zh) | 点云数据匹配方法、装置、电子设备及计算机存储介质 | |
US9984327B2 (en) | System and method for parallel graph searching utilizing parallel edge partitioning | |
CN104050710A (zh) | 用隐式几何体进行3d图形渲染 | |
Pan et al. | GPU-based parallel collision detection for real-time motion planning | |
CN104699946A (zh) | 一种游戏场景的管理方法及装置 | |
Luo et al. | A* guiding DQN algorithm for automated guided vehicle pathfinding problem of robotic mobile fulfillment systems | |
RU2019145092A (ru) | Способ и система для предсказания будущего события в беспилотном автомобиле (sdc) | |
CN102193837A (zh) | 一种基于前线的包围盒碰撞检测方法 | |
Rahmani et al. | Multi-agent parallel hierarchical path finding in navigation meshes (MA-HNA*) | |
Guo et al. | Sub-1.5 time-optimal multi-robot path planning on grids in polynomial time | |
Bleiweiss | Multi agent navigation on the gpu | |
Ma et al. | Research on the application of visual SLAM in embedded GPU | |
Nakib et al. | Parallel fractal decomposition based algorithm for big continuous optimization problems | |
Zhao et al. | TDLE: 2-D LiDAR Exploration With Hierarchical Planning Using Regional Division | |
CN101795275B (zh) | 一种多人在线网络游戏服务器的并行优化技术 | |
CN108171785B (zh) | 用于光线跟踪的sah-kd树设计方法 | |
Machado et al. | Real time pathfinding with genetic algorithm | |
Wenzel et al. | Accelerating navigation in the VecGeom geometry modeller | |
US12045939B2 (en) | Multi-agent path planning method and device, and storage medium | |
Zhang et al. | Solving the traveling thief problem based on item selection weight and reverse-order allocation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120912 |