CN101840565B - 一种基于gpu的八叉树并行构建方法 - Google Patents

一种基于gpu的八叉树并行构建方法 Download PDF

Info

Publication number
CN101840565B
CN101840565B CN2010101505471A CN201010150547A CN101840565B CN 101840565 B CN101840565 B CN 101840565B CN 2010101505471 A CN2010101505471 A CN 2010101505471A CN 201010150547 A CN201010150547 A CN 201010150547A CN 101840565 B CN101840565 B CN 101840565B
Authority
CN
China
Prior art keywords
node
formation
scenario
point
scenario node
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.)
Expired - Fee Related
Application number
CN2010101505471A
Other languages
English (en)
Other versions
CN101840565A (zh
Inventor
许端清
杨鑫
赵磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN2010101505471A priority Critical patent/CN101840565B/zh
Publication of CN101840565A publication Critical patent/CN101840565A/zh
Application granted granted Critical
Publication of CN101840565B publication Critical patent/CN101840565B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种基于GPU的八叉树并行构建方法,在需要进行渲染的模型空间的三个坐标轴上分别选取若干个采样分割点,计算每个采样分割点的SAH花费,然后选取每个坐标轴上SAH花费最小的分割点,将选取的这三个分割点作为分割平面,对模型空间中的场景数据逐级进行划分,直至划分到每个节点所含面片数不多于10个。本发明由于在三个维度上同步进行基于SAH的选择划分,使得这个改良后的八叉树结构质量更高,大大减少了无效的遍历和相交操作,尤其适合大光线包的遍历。

Description

一种基于GPU的八叉树并行构建方法
技术领域
本发明涉及图形实时渲染技术领域,尤其涉及一种基于GPU的八叉树并行构建方法。
背景技术
在过去的二十年时间里,显卡性能的巨大提高,尤其是其可编程性的出现,大大促进了图形学研究领域的进步。光线跟踪技术是一种在图形绘制领域广泛应用的技术。相比光栅化技术,光线跟踪技术有很多优势,包括物体可见性的自动计算,时间复杂度与场景中图元数量呈次线性关系,更适合并行架构处理等。但是,由于光线跟踪技术模拟的是真实世界中光的物理路径,因此它最大的优势是产生高质量的图像,绘制出高真实感的平滑的反射、折射、软影(soft shadow)等全局光照效果。Whitted最早使用光线跟踪技术来模拟全局光照效果。由于光线跟踪技术需要花费很高的计算量,因此以往这种技术只能应用在非实时绘制领域中。
当前,计算机硬件的计算能力呈指数形式的增长速度已经使交互式的实时光线跟踪成为可能。越来越多的研究开始关注光线跟踪的实时计算,已经出现了一些优秀的研究成果。然而,尽管这些研究很多都是基于GPU架构设计的,但这些实现仍然未能充分利用当前GPU强大的并行计算能力。
近年来已经出现了一些基于GPU实现的编程方法,例如NVIDIA公司的CUDA(Compute Unified Device Architecture)编程模型、苹果公司的OpenCL,以及一些底层的框架结构。这些模型允许程序员自己定义合适的数据结构,为编程提供很大的灵活性和可操作性,包括创建、调度、同步等线程管理操作可以完全由硬件来完成。例如在CUDA编程模型里,我们可以根据程序的并行特征将程序划分成几个顺序执行的被称为kernel的代码段,使其在GPU中执行。为了有效地管理大量的线程,kernel使用标量形式的SIMT(Single Instruction,Multiple Thread)操作,线程以一种被称作warps的分组形式根据kernel中的指令来执行。程序员将线程组织成线程块(block),这些线程块本质上可以看成是虚拟的SM多处理器,拥有独立的寄存器和共享内存(shared memory),各线程块间相对独立的乱序执行。
为了获得GPU的最大计算性能,有两个问题需要考虑:第一,每个线程应该使用尽量少的硬件寄存器和存储资源,以保证GPU内部同一时刻运行更多的活动线程,Popov等的光线跟踪实现消耗了过多的寄存器,导致GPU利用率还不到33%;第二,线程的SIMD(Single Instruction,Multiple Data)操作对程序员来说是透明的,而SIMD的操作方式对程序的分支执行非常敏感,同一warp的线程只有执行程序的同一分支才能获得最大效益。
最近,一些研究开始关注动态场景下的光线跟踪方法。在光线跟踪算法中,构造加速结构是其中重要的一步,通过将面片重新进行组织,可以大大减少无效的光线遍历操作和相交操作。由于动态场景下物体间的拓扑结构会发生改变,甚至物体本身都会发生形变,因此,每一帧都需要重新对加速结构进行重构。然而,加速结构的构造是一个比较耗时的操作,通常无法在绘制一帧的时间内完成,这也是导致当前基于动态场景的实时光线跟踪研究进展较慢的主要原因。
设计出一种高质量的快速的加速结构构造方法,使其可以充分利用多核处理器强大的并行处理能力,从而使加速结构建造速度进一步加快,满足实时性的要求,是一个光线跟踪算法能否有效执行的关键。层次结构的构造并不能很好的利用多个核的并行处理能力。其中存在的主要问题是,层次结构自上而下的递归构造方式通常会产生一个二叉树结构,在构造阶段初期只能生成少量节点,很难充分的利用硬件的并行计算能力,从而造成硬件的低效使用,而且访存的延迟也给构造造成了困难。
传统的八叉树构造根据三个垂直坐标轴x、y、z方向上对象的中间位置对场景进行划分,这种划分方式尽管简单快速,但其粗糙的质量造成了大量无效的遍历和相交操作,也造成了大量的空节点而浪费存储空间,使得八叉树逐渐被构建质量更高的kd树所取代。kd树通常使用SAH策略来确定最优的分割点,然而大量的计算使得kd树的构建需要一些时间,难以满足动态场景的实时光线跟踪计算要求。另一方面,当前的GPU架构包含多个多核处理器,需要同时运行上万个线程才能充分利用这些处理器的计算能力,而kd树等加速结构在其构建之初只有少量的节点供处理核使用,大大浪费了GPU的计算资源,进而影响构造速度。
发明内容
本发明提供一种基于GPU的八叉树并行构建方法,可有效利用硬件的并行计算能力,提高加速结构的构造速度和质量。
一种基于GPU的八叉树并行构建方法,包括:在需要进行渲染的模型空间的三个坐标轴上(相互垂直的X轴、Y轴和Z轴),分别选取若干个采样分割点,计算每个采样分割点的SAH(surface area heuristic)花费(MacDonald等在文献“Heuristics for ray tracing using space subdivision.Visual Computer,1990.”中提出的评估加速结构最优分割点的方法,如公式(a)所示),然后选取每个坐标轴上SAH花费最小的分割点,将选取的这三个分割点作为分割平面,对模型空间中的场景数据逐层进行划分。
将整个场景所形成的包围盒作为根节点,第一次划分可以得到八个子节点,然后以同样的方法,对子节点分别进行划分,按照宽度优先的方式递归这个构造过程,逐级进行划分,直至划分到每个节点所含面片数不多于10个。
划分场景数据的具体步骤如下:
a)在存储区域中建立两个队列(第一队列和第二队列),分别存放用来存放等待进行划分的场景节点;
b)当GPU存在空闲线程块时,从第一队列中依次取等待进行划分的场景节点进行划分,并将产生的新的场景节点放入第二队列;
其中对第一队列中编号为k的场景节点进行划分所产生的新的场景节点在第二队列中的编号分别为8×k+t(t=0,1,…7);场景节点在队列中的编号也对应了该场景节点在存储区域中的位置。
c)当第一队列中等待进行划分的场景节点处理完毕后,清空第一队列中的所有节点数据;当GPU存在空闲线程块时,从第二队列中依次取等待进行划分的场景节点进行划分,并将产生的新的场景节点放入第一队列,直至第二队列中等待进行划分的场景节点都处理完毕。
其中对第二队列中编号为j的场景节点进行划分所产生的新的场景节点在第一队列中的编号分别为8×j+t(t=0,1,…7);场景节点在队列中的编号也对应了该场景节点在存储区域中的位置。
d)循环步骤b)、步骤c),直至完成所有场景节点的划分。
当每个队列中等待进行划分的场景节点划分完毕后,通过硬件支持的紧凑操作(compaction)清除对该队列中的空场景节点。
对每一个场景节点进行划分时,GPU的每一个线程块分别处理不同的场景节点,在相互对应的线程块和场景节点中,线程块中的每一线程分别计算不同采样分割点的SAH花费,最后取硬件支持的归约操作(reduction),选取每个坐标轴上SAH花费最小的分割点。
本发明采用的构造方式可以迅速产生出大量数据供成千上万的GPU线程使用,使它们一直保持满负荷工作状态;其次,由于我们在三个维度上同步进行基于SAH的选择划分,使得这个改良后的八叉树结构质量更高;另外,改良后的八叉树的深度更浅,大大减少了无效的遍历和相交操作,尤其适合大光线包的遍历。
借助硬件强大的并行计算能力,本发明采用的八叉树加速结构凝结了传统加速结构的优点:第一,相比BVH结构,我们在进行遍历操作时只是将光线与分割面相交,而不是与包围盒相交,减少了相交计算的次数;第二,由于使用的是SAH策略,确保了我们的遍历操作是一种有序的遍历,即在进行相交操作时,一旦产生交点,则认为此交点即为光线相交的第一个交点,遍历操作可立即停止;我们使用公式(a)来计算每个潜在的分割点,另外我们还需要知道每个子节点所含面片数及其表面积。Wald等通过使用排序来计算这些数量,为了避免昂贵的排序操作,我们使用bin方法(POPOV S.et al.:Experiences with Streaming Construction of SAHKD-Trees.In Proceedings of the 2006 IEEE Symposium on Interactive RayTracing(Sept.2006),pp.89-94.1,3,4,6)以减少带宽的使用。随着构造层次的加深,处理核所要处理的数据明显减少,使计算SAH花费的时间更短,从而使建造速度更快。
采样分割点的SAH花费
Figure GSA00000089592100051
这里,nl和nr分别代表与当前采样分割点相邻的左、右子节点所含的面片数量,SA(Nl)、SA(Nr)分别表示与当前采样分割点相邻的左、右子节点的表面积,SA(N)表示当前采样分割点的父节点的表面积(没有父节点时取0),KT表示对当前采样分割点的父节点进行遍历所产生的花费(没有父节点时取0),KI表示对当前采样分割点进行相交操作所产生的花费。
KT和KI的含义是计算机硬件处理遍历或相交操作耗费的时间,KT和KI的绝对值可以人为设定,例如可以设定KT=10、KI=20;说明相交操作的花费大于遍历操作的花费,但10、20并不一定要求表示真实的处理时间,仅表示两者的相对关系。
所述的遍历或相交操作均可以是现有技术,本发明的重点在于八叉树结构的并行构建。
选取最优的分割点,使在这个点上所得到的SAH花费CP最小,或者如果KI·n花销更小,这时n=nl+nr,n为当前节点所含面片数量。
为了高效的利用硬件的并行计算能力,我们在实现时从两方面进一步扩大并行性:
一方面在自上而下的构造过程中,每个节点按规则分割成八个新的节点,由于这些分割工作可以独立进行而不依赖其它节点,因此我们完全可以将这些节点的分割工作分给多个核同时进行处理,以加快构造速度,同时可以通过分割任务的切换来隐藏访存的延迟。
本发明通过设置一个队列用来存放等待进行分割计算的节点,这样当一个处理核完成了一个节点的分割计算以后可以立刻从这个队列里获得新的工作,同时也将刚产生的欲分割节点放入队列。
由于当前的GPU架构还不支持存储一致性,为了避免使用锁机制带来的同步开销,我们设置两个队列来记录这些位置,一个队列用来暂存父节点信息,另一个队列用来暂存子节点信息。我们利用父子节点的映射关系,即父节点k的子节点在子节点队列中的位置应该为8*k+t(t=0,1,…7),至于t的具体取值我们可以在线程块(block)内的速度更快的共享存储区(shared memory)里计算。在当前层次的子节点全部计算完毕后,我们使用压缩操作(compaction)将空节点去掉,形成新的父节点队列。
另一方面在使用SAH策略对节点进行分割计算时,使用多线程方式将这一操作并行化。在进行SAH计算时,假设要在每个坐标轴上取p个采样分割点,那么为了计算花费最小的最优分割点,在三个维度上一共要进行3p次计算,由于这些计算只是用同样的操作对不同的数据进行处理,因此我们完全可以通过处理核的SIMD处理能力将这些操作并行处理。最后,当这些分割点计算都完成时,可以使用归约操作(reduction)找出具有最低花销的分割点。
具体实施方式
选择一台配有一颗Intel Xeon 3.7GHz的4核CPU,一颗NvidiaGTX285(1G显存)的PC来实现我们的这个算法。使用Nvidia公司的CUDA编程框架,其为GPU计算提供了一个通用的C编程接口,方便编程者使用一些新的硬件特性。
本发明为了在加速结构构造初期产生足够多的数据供多个处理核进行高效的并行处理,使用一种改进的八叉树构造方法,采用宽度优先的方式,在三个坐标轴上分别计算采样分割点的SAH花费,然后选取每个坐标轴上花费最小的分割点,将选取的这三个分割点作为分割平面,一次性生成了八个节点。在计算SAH花费时,需要计算分割平面两端的图元数量,本发明采用binning方法以减少带宽的使用。随着构造层次的加深,处理核所要处理的数据明显减少,使计算SAH花费的时间更短,从而使建造速度更快。
将整个场景所形成的包围盒作为根节点,第一次划分可以得到八个子节点,然后以同样的方法,对子节点分别进行划分,按照宽度优先的方式递归这个构造过程,逐级进行划分,直至划分到每个节点所含面片数不多于10个。
划分场景数据的具体步骤如下:
a)在存储区域中建立两个队列(第一队列和第二队列),分别存放用来存放等待进行划分的场景节点;
b)当GPU存在空闲线程块时,从第一队列中依次取等待进行划分的场景节点进行划分,并将产生的新的场景节点放入第二队列;
其中对第一队列中编号为k的场景节点进行划分所产生的新的场景节点在第二队列中的编号分别为8×k+t(t=0,1,…7);场景节点在队列中的编号也对应了该场景节点在存储区域中的位置。
c)当第一队列中等待进行划分的场景节点处理完毕后,清空第一队列中的所有节点数据;当GPU存在空闲线程块时,从第二队列中依次取等待进行划分的场景节点进行划分,并将产生的新的场景节点放入第一队列,直至第二队列中等待进行划分的场景节点都处理完毕。
其中对第二队列中编号为j的场景节点进行划分所产生的新的场景节点在第一队列中的编号分别为8×j+t(t=0,1,…7);场景节点在队列中的编号也对应了该场景节点在存储区域中的位置。
d)循环步骤b)、步骤c),直至完成所有场景节点的划分。
当每个队列中等待进行划分的场景节点划分完毕后,通过硬件支持的紧凑操作(compaction)清除对该队列中的空场景节点。
对每一个场景节点进行划分时,GPU的每一个线程块分别处理不同的场景节点,在相互对应的线程块和场景节点中,线程块中的每一线程分别计算不同采样分割点的SAH花费,最后取硬件支持的归约操作(reduction),选取每个坐标轴上SAH花费最小的分割点。
为了高效的利用硬件的并行计算能力,本发明在实现时从两方面扩大了并行性:
1)在自上而下的构造过程中,节点按规则分割成八个新的节点,由于这些分割工作可以独立进行而不依赖其它节点,因此可以将这些节点的分割工作分给多个核同时进行处理,以加快构造速度,同时可以通过分割任务的切换来隐藏访存的延迟。我们设置一个队列用来存放等待进行分割计算的节点,这样当一个处理核完成了一个节点的分割计算以后可以立刻从这个队列里获得新的工作,同时也将刚产生的欲分割节点放入队列;
2)在使用SAH策略对节点进行分割计算时,使用SIMD方式将这一操作并行化。在进行SAH计算时,假设要在每个坐标轴上产生k个准分割点,那么为了计算最优的分割点,我们一共要进行3k次计算,由于这些计算只是用同样的操作对不同的数据进行处理,因此我们完全可以通过处理核的SIMD处理能力将这些操作并行处理。最后,当这些分割点计算都完成时,使用硬件支持的归约操作(reduction)找出具有最低花销的分割点。
选择具有不同几何复杂度的测试场景,Bunny,Toys,Conference作为测试模型文件,每个测试场景的分辨率为1024*1024。本发明方法所生成的八叉树结构以其高质量、快速并行构建、适合大光线包等特点,使光线可以快速地找到相交节点,动态场景可以快速构造其加速结构,光线包能够尽量减少分支计算。为了验证这些性能,我们从构造时间、绘制帧率两个方面,与在CPU上使用kd树加速结构的基于SIMD的光线包(光线包大小为2*2)算法进行对比,如表1所示。可以看出,我们基于GPU实现的八叉树并行构建算法,相比基于CPU实现的kd树算法,可以获得近10倍的性能提升,在此基础上实现的绘制性能也获得近一倍的提升。需要指出的是,Toys场景是一个动态场景,由图可见其加速结构的构造时间较短,满足了动态场景对加速结构的实时构建要求。
表1
Figure GSA00000089592100091
表1为本发明的方法与SIND光线包方法针对Bunny、Toys、Conference场景在加速结构构造时间(S)和帧率(FPS)上的性能比较。

Claims (2)

1.一种基于GPU的八叉树并行构建方法,其特征在于,在需要进行渲染的模型空间的三个坐标轴上分别选取若干个采样分割点,计算每个采样分割点的SAH花费,然后选取每个坐标轴上SAH花费最小的分割点,将选取的这三个分割点作为分割平面,对模型空间中的场景数据逐级进行划分,直至划分到每个节点所含面片数不多于10个;
其中划分场景数据的具体步骤如下:
a)在存储区域中建立两个队列,分别用来存放等待进行划分的场景节点;
b)从第一队列中依次取等待进行划分的场景节点进行划分,并将产生的新的场景节点放入第二队列;
其中对第一队列中编号为k的场景节点进行划分所产生的新的场景节点在第二队列中的编号分别为8×k+t,t=0,1,...7;场景节点在队列中的编号也对应了该场景节点在存储区域中的位置;
c)当第一队列中等待进行划分的场景节点处理完毕后,清空第一队列中所有的场景节点数据,从第二队列中依次取等待进行划分的场景节点进行划分,并将产生的新的场景节点放入第一队列,直至第二队列中等待进行划分的场景节点都处理完毕;
其中对第二队列中编号为j的场景节点进行划分所产生的新的场景节点在第一队列中的编号分别为8×j+t,t=0,1,...7;场景节点在队列中的编号也对应了该场景节点在存储区域中的位置;
d)循环步骤b)、步骤c),直至完成所有场景节点的划分;
所述的步骤b)、步骤c)中当每个队列中等待进行划分的场景节点划分完毕后,通过硬件支持的紧凑操作清除该队列中的空场景节点;对每一个场景节点进行划分时,GPU的每一个线程块分别处理不同的场景节点,在相互对应的线程块和场景节点中,线程块中的每一线程分别计算不同采样分割点的SAH花费,最后通过硬件支持的归约操作,选取每个坐标轴上SAH花费最小的分割点。
2.如权利要求1所述的八叉树并行构建方法,其特征在于,采样分割点的SAH花费
Figure FSB00000528899500021
n1和nr分别代表与当前采样分割点相邻的左、右子节点所含的面片数量;
SA(N1)、SA(Nr)分别表示与当前采样分割点相邻的左、右子节点的表面积;
SA(N)表示当前采样分割点的父节点的表面积;
KT表示对当前采样分割点的父节点进行遍历所产生的花费;
KI表示对当前采样分割点进行相交操作所产生的花费。
CN2010101505471A 2010-04-19 2010-04-19 一种基于gpu的八叉树并行构建方法 Expired - Fee Related CN101840565B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010101505471A CN101840565B (zh) 2010-04-19 2010-04-19 一种基于gpu的八叉树并行构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010101505471A CN101840565B (zh) 2010-04-19 2010-04-19 一种基于gpu的八叉树并行构建方法

Publications (2)

Publication Number Publication Date
CN101840565A CN101840565A (zh) 2010-09-22
CN101840565B true CN101840565B (zh) 2011-09-21

Family

ID=42743922

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010101505471A Expired - Fee Related CN101840565B (zh) 2010-04-19 2010-04-19 一种基于gpu的八叉树并行构建方法

Country Status (1)

Country Link
CN (1) CN101840565B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102857819B (zh) * 2012-09-12 2015-06-24 广东威创视讯科技股份有限公司 一种纹理图片的加载方法及显示终端、服务器和系统
CN104050175A (zh) * 2013-03-13 2014-09-17 中国科学院大学 利用gpu片上树群实现二维数据近邻搜索的并行方法
CN103839220A (zh) * 2014-02-28 2014-06-04 浙江大学 基于矩阵分解的图像无缝克隆方法
CN111277828B (zh) * 2018-12-04 2022-07-12 华为技术有限公司 视频编解码方法、视频编码器和视频解码器
CN111556325A (zh) * 2019-02-12 2020-08-18 广州艾美网络科技有限公司 结合音视频的渲染方法、介质及计算机设备
CN111210521B (zh) * 2020-01-06 2022-09-16 江南造船(集团)有限责任公司 面向vr的船舶巨数据模型轻量化方法、系统、终端以及介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050140688A1 (en) * 2003-12-29 2005-06-30 Kim Pallister Method and mechanism for programmable filtering of texture map data in 3D graphics subsystems
CN1889128A (zh) * 2006-07-17 2007-01-03 北京航空航天大学 基于gpu的预计算辐射度传递全频阴影的方法
CN101315703A (zh) * 2007-05-30 2008-12-03 数邦科技(上海)有限公司 三维大规模场景动态管理方法
US8610706B2 (en) * 2008-10-04 2013-12-17 Microsoft Corporation Parallel surface reconstruction
CN101604453A (zh) * 2009-07-08 2009-12-16 西安电子科技大学 基于分块策略的大规模数据场体绘制方法

Also Published As

Publication number Publication date
CN101840565A (zh) 2010-09-22

Similar Documents

Publication Publication Date Title
CN101819675B (zh) 一种基于gpu的层次包围盒的快速构造方法
CN101826215B (zh) 实时二级光线跟踪的并行渲染方法
Meister et al. A survey on bounding volume hierarchies for ray tracing
Hou et al. Memory-scalable GPU spatial hierarchy construction
CN101840565B (zh) 一种基于gpu的八叉树并行构建方法
Deng et al. Toward real-time ray tracing: A survey on hardware acceleration and microarchitecture techniques
CN108520557B (zh) 一种图形图像融合的海量建筑绘制方法
Wald Fast construction of SAH BVHs on the Intel many integrated core (MIC) architecture
CN103593817B (zh) 用于使用并行管道的图形处理的方法和设备
CN109255828A (zh) 用于光线跟踪的混合层级
CN105787865A (zh) 基于游戏引擎和gpu并行处理的分形图生成与渲染方法
Ma et al. Massively parallel software rendering for visualizing large-scale data sets
Garanzha et al. Grid-based SAH BVH construction on a GPU
Kohek et al. Interactive synthesis of self-organizing tree models on the GPU
CN104463940B (zh) 一种基于gpu的混合树并行构建方法
Chen et al. Ray tracing on single FPGA
Nie et al. A survey of continuous collision detection
Wang et al. A cache-friendly sampling strategy for texture-based volume rendering on GPU
KR20220139880A (ko) 배터리 전력공급형 컴퓨팅 디바이스들을 위한 실시간, 소프트웨어 기반 하이브리드 광선 트레이싱
Doyle et al. Evaluation of a BVH construction accelerator architecture for high-quality visualization
Ding et al. New collision detection method for simulating virtual plant populations
CN111275806A (zh) 一种基于点的并行化实时渲染系统及方法
dos Santos et al. Review and comparative study of ray traversal algorithms on a modern gpu architecture
Wang et al. Fast point based global illumination
van der Ploeg Interactive Ray Tracing

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110921

Termination date: 20140419