CN103578131A - 用于实施光线跟踪的系统、方法和计算机程序产品 - Google Patents
用于实施光线跟踪的系统、方法和计算机程序产品 Download PDFInfo
- Publication number
- CN103578131A CN103578131A CN201310314064.4A CN201310314064A CN103578131A CN 103578131 A CN103578131 A CN 103578131A CN 201310314064 A CN201310314064 A CN 201310314064A CN 103578131 A CN103578131 A CN 103578131A
- Authority
- CN
- China
- Prior art keywords
- ruling
- dividing
- subregion
- ray trace
- utilizing
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/06—Ray-tracing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/45—Caching of specific data in cache memory
- G06F2212/455—Image or video data
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
提供了用于实施光线跟踪的系统、方法和计算机程序产品。在使用中,利用分治方法实施光线跟踪,其中分治方法与高速缓存相关联。
Description
优先权要求
本申请要求于2012年7月24日提交的美国临时申请第61/675,215号的权益,本文通过援引的方式对其全部内容加以合并。
技术领域
本发明涉及图形处理,并且,更具体地,涉及实施光线跟踪。
背景技术
利用光线跟踪的图像生成已成为计算机图形的重要领域。例如,光线跟踪可用来产生具有高度视觉写实的合成图像。然而,用于实施光线跟踪的当前技术已与各种限制相关联。
例如,用于实施光线跟踪的当前方法可能是低效的,因为这种方法可能在光线跟踪计算期间实施多余动作。因此存在解决与现有技术相关联的这些和/或其他问题的需要。
发明内容
提供了用于实施光线跟踪的系统、方法和计算机程序产品。在使用中,利用分治方法实施光线跟踪,其中分治方法与高速缓存相关联。
附图说明
图1示出根据一个实施例的、用于实施光线跟踪的方法。
图2示出根据另一个实施例的、用于实施分治(divide and conquer)光线跟踪的方法。
图3示出其中可以实现各种先前实施例的各种架构和/或功能性的示例性系统。
具体实施方式
图1示出根据一个实施例的、用于实施光线跟踪的方法100。如操作102中所示,利用分治方法实施光线跟踪,其中分治方法与高速缓存相关联。在一个实施例中,光线跟踪可包括路径跟踪。例如,光线跟踪可包括跟踪穿过空间(例如场景等)的路径(例如光路等),其中空间包括一个或多个对象。在另一个实施例中,光线跟踪可包括仿真路径与一个或多个对象的遭遇(例如相交等)的一个或多个效果。
此外,在一个实施例中,利用分治方法实施光线跟踪可包括实施分区化。例如,利用分治方法实施光线跟踪可包括将空间(例如其中正在实施光线跟踪的空间等)分区化。在另一个示例中,利用分治方法实施光线跟踪可包括将对象列表(例如空间内的对象(例如几何基元等)的列表等)分区化。
并且,在一个实施例中,可利用一个或多个方法实施分区化。例如,可利用表面积启发法、中线分割、全局启发式分割以及由偏移和法线所定义的经选择平面的分割中的一个或多个来实施分区化。在另一个实施例中,分区化可创建多个分区(例如空间分区、对象列表分区等)。在又一个实施例中,利用分治方法实施光线跟踪可包括剔除分区中的一个或多个(例如根据特定光线跟踪操作移除分区中的一个或多个)。
进一步地,在一个实施例中,利用分治方法实施光线跟踪可包括以递推的方式实施分区化。例如,利用分治方法实施光线跟踪可包括递推地细分空间、递推地将空间内的对象分区化等。在另一个示例中,利用分治方法实施光线跟踪可包括通过递推地将空间内的一个或多个对象分区化以创建对象的一个或多个分区来跟踪穿过经选择数目的对象的经选择数目的光线,以及根据光线剔除掉对象的一个或多个分区。通过该方式,(例如通过实施层次剔除等)可减少求交测试(例如光线和一个或多个对象之间的相交的测试等)的数量。同样地,层次剔除可通过在递推地将空间分区化期间削减层次遍历来减少求交测试。
仍进一步地,在一个实施例中,高速缓存可包括计算系统内的存储器的一个或多个部分。例如,高速缓存可包括位于计算系统的中央处理单元(CPU)上的存储器的一个或多个部分、位于计算系统的图形处理单元(GPU)上的存储器的一个或多个部分等。
并且,在一个实施例中,在利用分治方法的光线跟踪期间所获得的信息可存储在高速缓存中。例如,高速缓存可存储与分治方法相关联的分区化信息(例如分区化结果等)。在另一个示例中,可分配固定数量的分区高速缓存存储器,并且这种分区高速缓存存储器可存储在分治方法期间通过分区化所创建的多个分区中的一个或多个。通过该方式,作为利用分治方法实施光线跟踪的结果所获得的分区化结果可存储在高速缓存中,而非存储完全显式层次辅助加速数据结构。
另外,在一个实施例中,通过修改与分治方法相关联的算法(例如分治算法)的一个或多个部分,在利用分治方法的光线跟踪期间所获得的信息可存储在高速缓存中。在另一个实施例中,高速缓存可存储与光线跟踪的实施相关联的层次的一部分。例如,高速缓存可存储通过分区化所创建的分区的完整层次的一个或多个层(例如预定数目的顶层等)。
此外,在一个实施例中,高速缓存可基于与分区相关联的重新计算时间(times)存储一个或多个分区。例如,每个分区可与基于实施分治方法内的该分区的重新计算所要求的工作量的优先权相关联。在另一个示例中,具有最高优先权的预定数目的分区可存储在高速缓存内。通过该方式,高速缓存可存储与最高重新计算时间相关联的分区。
仍进一步地,在一个实施例中,可分层次地应用利用分治方法的光线跟踪。例如,可利用有向无环场景图实施光线跟踪。在另一个实施例中,多个高速缓存可与有向无环场景图中的多个参考节点相关联,使得有向无环场景图中的多个参考节点中的每一个具有其自己的不同高速缓存。
并且,在一个实施例中,利用分治方法的光线跟踪可包括层次遮挡剔除。例如,分治方法可用于在光栅化期间的层次遮挡剔除。在另一个实施例中,可与利用分治方法的光线跟踪相联系来确定遍历次序(例如其中处理空间内的光线集合和对象集合的次序等)。例如,可通过光线民主、平均化的光线方向以及量化的光线方向中的一个或多个来确定遍历次序。
将关于各种可选架构和特征阐述更多示例性信息,实现前述框架可以利用或不利用上述架构,这依据用户的需要。应特别注意的是,阐述接下来的信息是出于示例性目的并且不应视为以任何方式加以限制。任何接下来的特征可以在排除或不排除所描述的其他特征的情况下可选地加以合并。
图2示出根据另一个实施例的、用于实施分治光线跟踪的方法200。作为选项,可在图1功能性的上下文中实行方法200。然而当然,可在任何需要的环境中实现方法200。还应注意的是,可在本描述期间应用前述定义。
如操作202中所示,标识包括多个几何基元的空间。在一个实施例中,空间可包括待通过仿真虚拟照相机渲染为图像的场景。在另一个实施例中,场景可包括几何基元,其可包括位于空间内的任何对象(例如几何形状等)。
此外,如操作204中所示,利用分区高速缓存存储器,与多个几何基元相联系在空间内实施分治光线跟踪。在一个实施例中,实施分治光线跟踪可包括利用同时层次遍历重新排序光线集合和几何基元集合,同时隐性地保持层次的追踪。在另一个实施例中,分治光线跟踪可以不存储加速数据结构(例如这种数据结构可以是隐性的等)。参见例如美国专利申请US2009/0225081和“Efficient ray tracing without auxiliary acceleration datastructure”(A.Keller等,Poster,High Performance Graphics,2011),其描述分治光线跟踪的示例,在此通过援引的方式对其全文加以合并。
进一步地,在美国专利申请US 2009/0225081和“Efficient ray tracingwithout auxiliary acceleration data structure”(A.Keller等,Poster,HighPerformance Graphics,2011)的一个示例案中,实施分治光线跟踪可包括实施空间的(spatial)分区化(例如递推的空间的分区化、递推的细分等)。还参见例如“Naive ray-tracing:A divide-and-conquer approach”(B.Mora,ACM Trans.Graph.,30(5):117:1–117:12,2011年10月)和“Incoherent ray tracingwithout acceleration structures”(A.EuroGraphics Short Paper,2012),其描述空间的分区化的示例性实现方案,在此通过援引的方式对其全文加以合并。
仍进一步地,在一个实施例中,虽然分治光线跟踪可以是高速缓存参数无关(cache oblivious)的,但是可以通过重新排序数据获得高速缓存实施的益处。在另一个实施例中,可利用分区高速缓存存储器解决光线跟踪中的多余计算。例如,可分配固定数量的高速缓存存储器以创建分区高速缓存存储器,并且这种分区高速缓存存储器可用来对在分治光线跟踪的实施期间所获得的信息进行高速缓存。例如,分区高速缓存存储器可用来在递推细分的实施期间对信息进行高速缓存。
此外,参见例如“Geometry presorting for implicit object spacepartitioning”(M.Eisemann等,Computer Graphics Forum(Proc.ofEurographics Symposium on Rendering(EGSR)),31(4),2012年6月)、“RayTracing mit Strahlbündeln”(B.PhD thesis,Naturwissenschaftliche der Technischen Carolo-Wilhelmina zu Braunschweig,1993)、“Improving data locality for efficient in-core path tracing”(J.Bikker,Computer Graphics Forum,第31卷,第6期,1936–1947页,2012年9月),和“Terminating spatial hierarchies by a priori bounding memory”(C.等,In Proceedings of the2007IEEE Symposium on Interactive Ray Tracing,RT’07,41–46页,Washington,DC,USA,2007),在此通过援引的方式对其全文加以合并。
并且,在一个实施例中,可在与分治光线跟踪的实施相关联的一个或多个方法内实现分区高速缓存存储器。例如,可通过修改分治方法实现分区高速缓存存储器。表1示出包含分区高速缓存存储器的示例性分治方法。当然,应注意的是,阐述表1中所示出的方法仅出于示例性的目的,并且因此不应视为以任何方式加以限制。
表1
通过该方式,分治方法的整体运行时间复杂度可以保持相同,并且常数可以减少(例如对于比处理器高速缓存或主存储器大得多的数据集等)。在一个实施例中,基于高速缓存参数无关性和分区高速缓存存储器,可摊销(amortize)代价更高的分区化启发法。类似于预计算加速结构,用于在分区化期间确定分割平面的SAH标准可改进整体性能,但与预计算结构相反,在遍历期间SAH评估可能是性能关键的并且因此仅在具有大量基元和光线的分区中是优选的。参见例如“Incoherent ray tracing withoutacceleration structures.”(A.EuroGraphics Short Paper,2012),在此通过援引的方式对其全文加以合并。在另一个实施例中,如果分区化失败或用于终止的计算代价被认为成本更低,那么可以在分区化之后终止递推。
此外,在一个实施例中,可与分区高速缓存存储器相联系来实现自顶向下的高速缓存策略。例如,基于表1中的“node_id”,数据可存储在用于“node_id<N”的分区高速缓存中。通过该方式,在分治方法中所使用的隐性树的上部可以被高速缓存在分区高速缓存存储器中。在另一个实施例中,可以在常数时间中实施所有高速缓存操作。
表2示出示例性自顶向下的高速缓存以存储用于隐性层次的顶层的分区化数据。当然,应注意的是,阐述表2中所示出的高速缓存仅出于示例性的目的,因此不应视为以任何方式加以限制。
表2
进一步地,在一个实施例中,可与分区高速缓存存储器相联系来实现优先权高速缓存策略。例如,具有最高优先权的N个元素可存储在分区高速缓存中,并且优先权可基于重新计算所要求的工作量。在另一个示例中,插入操作可在优先权队列上工作并可实现为van Emde Boas树,其可以以O(log log N)完成。在另一个实施例中,可通过附加关键字哈希映射以O(loglog N)实施查找。
仍进一步地,在一个实施例中,如果仅插入具有比最小当前经存储优先权大因数k的优先权的元素,那么可以避免可能致使不必要的高速缓存操作的小性能改进(performance improvement)。在另一个实施例中,可以设定用于经存储元素的较低优先权阈值。在又一个实施例中,优先权队列可以以相反次序(例如队列中的顶部元素是具有最低优先权的元素等)存储。
表3示出示例性自顶到底的高速缓存以依据分区化数据的计算代价存储分区化数据。当然,应注意的是阐述表3中所示出的高速缓存仅出于示例性的目的,因此不应视为以任何方式加以限制。
表3
并且,在一个实施例中,关于实例和按需求所生成的程序性几何体,可以分层次地应用分治光线跟踪。在另一个实施例中,为避免进一步的多余分区化,具有公共几何体的实例可分配其自己的公共分区高速缓存。在又一个实施例中,可以应用LRU策略以应对几何体的程序性生成(包括递推的实例化等)。一旦逐出,经逐出的高速缓存内容可存储在二级存储上。在又一个实施例中,分区高速缓存可接附于遍历层次的任何节点。该应用在无法高效地预测几何体总量(例如由于其是程序性的或包括实例等)的情况下可以是有益的。
此外,在一个实施例中,可在层次遮挡剔除中应用分区高速缓存和其扩展。例如,层次遍历可通过提前退出(early-out)关于z-缓冲(z-buffering)的测试来增加光栅化的效率,该层次遍历由例如屏幕或阴影图的光栅结构所隐含的光线的全体所引导。这可着重说明光栅化是分治光线跟踪的特殊情况。
进一步地,在一个实施例中,光线跟踪可包括使用八叉树的体素的表面来调度光线。参见例如“Ray Tracing mit Strahlbündeln”(B.PhDthesis,Naturwissenschaftlicheder TechnischenCarolo-Wilhelmina zu Braunschweig,1993)或“Improving data locality forefficient in-core path tracing”(J.Bikker,Computer Graphics Forum,第31卷,第6期,1936–1947页,2012年9月),在此通过援引的方式对其全文加以合并。在另一个示例中,离开相同表面的光线可在相同队列中排队,其可通过利用遍历空间中的类似位置的具有类似方向的光线的相干性来增加处理器高速缓存效率。与经预计算的辅助加速数据结构相反,分治光线跟踪可通过不对其中光线和几何体不相交的空间进行分区化来包含当前光线分布。在另一个实施例中,可通过根据光线方向调适遍历次序来增加高速缓存相干性。
例如在分治光线跟踪中,可以选择一个遍历次序用于光线集合。代替可被称为光线民主(democracy)的依据光线方向的经选择分量的大多数标记(sign)来决定次序,可选择所有活动光线的平均方向的经选择分量的标记。该启发法与将计数标记相比较可改进性能。在另一个示例中,光线还可依据其方向的八分圆或长轴和其标记来排队。随后队列的数目可确定对针对一个光线集合的场景的体素的访问的最大数目。
通过该方式,高速缓存在基元数据的分区化期间所获得的数据可产生改进的性能,其中由于数据转移的减少这种性能可以随基元数据大小和路径长度而增加。此外,对于较小光线批次,性能增益可以增加,因为不进行高速缓存的方法可能越来越低效并且数据可能被再次分类和重新计算。取决于高速缓存的大小,经高速缓存的变体的性能可以降低到可接受的程度,其对于较长路径和自适应的方法可能是重要的。
此外,经高速缓存的变体甚至可从重新排序中受益更多,因为对于大部分的隐性层次,可从CPU高速缓存的第一层检索所有所要求的数据。与存储完全加速结构的方法相比较,可按需求建立层次数据并且存储器的数量可以是固定的。分区高速缓存中不具有任何信息的分区可要求重新处理子包围体和分割索引;然而,通过优先权次序可以最小化工作量。更重要的是,对于这些分区,由于分治方法的高速缓存参数无关性质,可以高效地利用处理器高速缓存。
图3示出其中可实现各种先前实施例的各种架构和/或功能性的示例性系统300。如所示,提供了系统300,包括连接到通信总线302的至少一个主处理器301。系统300还包括主存储器304。控制逻辑(软件)和数据存储在可采用随机存取存储器(RAM)形式的主存储器304中。
系统300还包括图形处理器306和显示器308,即计算机监视器。在一个实施例中,图形处理器306可包括多个着色器模块、光栅化模块等。前述模块中的每一个还可位于单个半导体平台上以形成图形处理单元(GPU)。
在本描述中,单个半导体平台可以指基于单一半导体(sole unitarysemiconductor)的集成电路或芯片。应注意的是,术语单个半导体平台还可以指具有增加的连接性的多芯片模块,其仿真片上操作,并且对利用常规中央处理单元(CPU)和总线实现方案进行实质性改进。当然,依据用户的需要,各种模块还可分开定位或在半导体平台的各种组合中。系统还可通过可包括(但不限制于)现场可编程门阵列(FPGA)的可重构逻辑来实现。
系统300还可包括二级存储310。二级存储310包括例如硬盘驱动器和/或表示软盘驱动器、磁带驱动器、压缩光盘驱动器等的可移动存储驱动器。可移动存储驱动器以众所周知的方式自可移动存储单元读取和/或写入到可移动存储单元。
计算机程序或计算机控制逻辑算法可存储在主存储器304和/或二级存储310中。当这种计算机程序执行时,使能系统300实施各种功能。存储器304、存储310和/或任何其他存储是计算机可读介质的可能的示例。
在一个实施例中,各种先前图的架构和/或功能性可在主处理器301、图形处理器306、具有主处理器301和图形处理器306二者的至少一部分能力的集成电路(未示出)、芯片集(即设计为按用于实施相关功能的单元来工作和出售的集成电路组等)和/或用于该用途的任何其他集成电路的上下文中实现。
此外,各种先前图的架构和/或功能性可在通用计算机系统、电路板系统、专用于娱乐目的的游戏控制台系统、特定应用系统和/或任何其他所需的系统的上下文中实现。例如,系统300可采用台式计算机、膝上型计算机和/或任何其他类型逻辑的形式。此外,系统300可采用各种其他设备的形式,包括但不限于个人数字助理(PDA)设备、移动电话设备、电视机等。
进一步地,虽然未示出,但是系统300可耦连到网络[例如电信网络、局域网络(LAN)、无线网络、诸如互联网的广域网络(WAN)、点对点网络、电缆网络等]用于通信目的。
虽然上文已描述各种实施例,但是应予以理解的是其仅由示例而非限制的方式所呈现。因此,优选实施例的宽度和范围不应由上文所述的任何示例性实施例所限制,而应仅根据接下来的权利要求及其等同物来限定。
Claims (20)
1.一种方法,包括:
利用分治方法实施光线跟踪,
其中所述分治方法与高速缓存相关联。
2.根据权利要求1所述的方法,其中利用所述分治方法实施光线跟踪包括实施分区化。
3.根据权利要求1所述的方法,其中利用所述分治方法实施光线跟踪包括将空间分区化。
4.根据权利要求1所述的方法,其中利用所述分治方法实施光线跟踪包括将对象列表分区化。
5.根据权利要求2所述的方法,其中所述分区化利用表面积启发法、中线分割、全局启发式分割以及由偏移和法线所定义的经选择平面的分割中的一个或多个来实施。
6.根据权利要求2所述的方法,其中所述分区化创建多个分区。
7.根据权利要求6所述的方法,其中利用所述分治方法实施光线跟踪包括剔除所述分区中的一个或多个。
8.根据权利要求1所述的方法,其中利用所述分治方法实施光线跟踪包括以递推的方式实施分区化。
9.根据权利要求1所述的方法,其中利用所述分治方法实施光线跟踪包括通过递推地将空间或对象列表中的至少一个分区化以创建一个或多个分区来跟踪穿过经选择数目的对象的经选择数目的光线,以及根据光线剔除掉所述一个或多个分区。
10.根据权利要求1所述的方法,其中在利用所述分治方法的所述光线跟踪期间所获得的信息存储在所述高速缓存中。
11.根据权利要求1所述的方法,其中所述高速缓存存储与所述分治方法相关联的分区化信息。
12.根据权利要求2所述的方法,其中所述高速缓存存储由所述分区化所创建的分区的完整层次的一个或多个层。
13.根据权利要求1所述的方法,其中所述高速缓存基于与所述分区相关联的重新计算时间存储一个或多个分区。
14.根据权利要求1所述的方法,其中所述光线跟踪利用有向无环场景图来实施。
15.根据权利要求14所述的方法,其中多个高速缓存与所述有向无环场景图中的多个参考节点相关联,使得所述有向无环场景图中的多个参考节点中的每一个具有其自己的不同高速缓存。
16.根据权利要求1所述的方法,其中所述分治方法用于光栅化期间的层次遮挡剔除。
17.根据权利要求1所述的方法,其中遍历次序与利用所述分治方法的所述光线跟踪相联系来确定,其中所述遍历次序通过光线民主、平均化的光线方向以及量化的光线方向中的一个或多个来确定。
18.一种具体化在计算机可读介质上的计算机程序产品,包括:
用于利用分治方法实施光线跟踪的代码,
其中所述分治方法与高速缓存相关联。
19.一种系统,包括:
处理器,用于利用分治方法实施光线跟踪,
其中所述分治方法与高速缓存相关联。
20.根据权利要求19所述的系统,其中所述处理器经由总线耦连到存储器。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261675215P | 2012-07-24 | 2012-07-24 | |
US61/675,215 | 2012-07-24 | ||
US13/685,630 US9117254B2 (en) | 2012-07-24 | 2012-11-26 | System, method, and computer program product for performing ray tracing |
US13/685,630 | 2012-11-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103578131A true CN103578131A (zh) | 2014-02-12 |
Family
ID=49994435
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310314064.4A Pending CN103578131A (zh) | 2012-07-24 | 2013-07-24 | 用于实施光线跟踪的系统、方法和计算机程序产品 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9117254B2 (zh) |
CN (1) | CN103578131A (zh) |
TW (1) | TWI502543B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113808245A (zh) * | 2020-06-11 | 2021-12-17 | 辉达公司 | 用于遍历光线追踪加速结构的增强技术 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105160698B (zh) * | 2015-08-21 | 2018-12-18 | 天津大学 | 一种三角化射线跟踪路径搜索方法 |
US10692270B2 (en) * | 2017-08-18 | 2020-06-23 | Microsoft Technology Licensing, Llc | Non-divergent parallel traversal of a bounding volume hierarchy |
US10235601B1 (en) | 2017-09-07 | 2019-03-19 | 7D Labs, Inc. | Method for image analysis |
US11334762B1 (en) | 2017-09-07 | 2022-05-17 | Aurora Operations, Inc. | Method for image analysis |
US10580195B2 (en) | 2017-11-20 | 2020-03-03 | Microsoft Technology Licensing, Llc | Ray-triangle intersection testing with tetrahedral planes |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080079731A1 (en) * | 2006-09-28 | 2008-04-03 | Shearer Robert A | Integrated Acceleration Data Structure for Physics and Ray Tracing Workload |
CN101192310A (zh) * | 2006-11-28 | 2008-06-04 | 国际商业机器公司 | 执行射线追踪的方法和系统 |
US7659894B2 (en) * | 2000-06-19 | 2010-02-09 | Mental Images Gmbh | Terminating spatial partition hierarchies by a priori bounding memory |
CN101685548A (zh) * | 2008-09-26 | 2010-03-31 | 辉达公司 | 用于混合光线跟踪系统的片段着色器及操作方法 |
WO2011035800A2 (en) * | 2009-07-24 | 2011-03-31 | Uws Ventures Ltd. | Direct ray tracing of 3d scenes |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2001239926A1 (en) * | 2000-02-25 | 2001-09-03 | The Research Foundation Of State University Of New York | Apparatus and method for volume processing and rendering |
US8248416B2 (en) | 2000-06-19 | 2012-08-21 | Mental Images Gmbh | Efficient ray tracing without acceleration data structure |
JP4467267B2 (ja) | 2002-09-06 | 2010-05-26 | 株式会社ソニー・コンピュータエンタテインメント | 画像処理方法、画像処理装置、および画像処理システム |
US8018453B2 (en) * | 2007-02-09 | 2011-09-13 | International Business Machines Corporation | Deferred acceleration data structure optimization for improved performance |
US8234234B2 (en) * | 2007-03-20 | 2012-07-31 | International Business Machines Corporation | Utilizing ray tracing for enhanced artificial intelligence path-finding |
US8284195B2 (en) * | 2007-09-13 | 2012-10-09 | International Business Machines Corporation | Cooperative utilization of spatial indices between application and rendering hardware |
-
2012
- 2012-11-26 US US13/685,630 patent/US9117254B2/en active Active
-
2013
- 2013-07-24 TW TW102126499A patent/TWI502543B/zh active
- 2013-07-24 CN CN201310314064.4A patent/CN103578131A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7659894B2 (en) * | 2000-06-19 | 2010-02-09 | Mental Images Gmbh | Terminating spatial partition hierarchies by a priori bounding memory |
US20080079731A1 (en) * | 2006-09-28 | 2008-04-03 | Shearer Robert A | Integrated Acceleration Data Structure for Physics and Ray Tracing Workload |
CN101192310A (zh) * | 2006-11-28 | 2008-06-04 | 国际商业机器公司 | 执行射线追踪的方法和系统 |
CN101685548A (zh) * | 2008-09-26 | 2010-03-31 | 辉达公司 | 用于混合光线跟踪系统的片段着色器及操作方法 |
WO2011035800A2 (en) * | 2009-07-24 | 2011-03-31 | Uws Ventures Ltd. | Direct ray tracing of 3d scenes |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113808245A (zh) * | 2020-06-11 | 2021-12-17 | 辉达公司 | 用于遍历光线追踪加速结构的增强技术 |
CN113808245B (zh) * | 2020-06-11 | 2023-09-15 | 辉达公司 | 用于遍历光线追踪加速结构的增强技术 |
US11816783B2 (en) | 2020-06-11 | 2023-11-14 | Nvidia Corporation | Enhanced techniques for traversing ray tracing acceleration structures |
Also Published As
Publication number | Publication date |
---|---|
TWI502543B (zh) | 2015-10-01 |
US9117254B2 (en) | 2015-08-25 |
TW201415412A (zh) | 2014-04-16 |
US20140028687A1 (en) | 2014-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103578131A (zh) | 用于实施光线跟踪的系统、方法和计算机程序产品 | |
CN100557637C (zh) | 执行射线追踪的方法和系统 | |
JP4954005B2 (ja) | メモリ・キャッシュ内のデータを無効化する方法、コンピュータ可読媒体及びイメージ処理システム | |
US8018453B2 (en) | Deferred acceleration data structure optimization for improved performance | |
US8234234B2 (en) | Utilizing ray tracing for enhanced artificial intelligence path-finding | |
US9043801B2 (en) | Two-tiered dynamic load balancing using sets of distributed thread pools | |
US7773087B2 (en) | Dynamically configuring and selecting multiple ray tracing intersection methods | |
Kumar et al. | Hierarchical back-face computation | |
CN100570638C (zh) | 分发工作负载的方法和图像处理系统 | |
US8284195B2 (en) | Cooperative utilization of spatial indices between application and rendering hardware | |
US8339398B2 (en) | Integrated acceleration data structure for physics and ray tracing workload | |
US20080074416A1 (en) | Multiple Spacial Indexes for Dynamic Scene Management in Graphics Rendering | |
CN105389850B (zh) | 一种大规模三维场景的可见性生成方法 | |
KR20140036519A (ko) | 레이 추적의 스케쥴링을 위한 장치 및 방법 | |
KR20140105609A (ko) | 온라인 게이밍 | |
US20090292513A1 (en) | Terrain paging during a distributed simulation involving multiple objects | |
US20080192046A1 (en) | Box Casting Using an Integrated Acceleration Data Structure | |
US11798221B2 (en) | Graphics processing | |
Demeulemeester et al. | Hybrid path planning for massive crowd simulation on the gpu | |
Rahman et al. | Towards accelerated agent-based crowd simulation for Hajj and Umrah | |
US11620724B2 (en) | Cache replacement policy for ray tracing | |
Echegaray et al. | A methodology for optimal voxel size computation in collision detection algorithms for virtual reality | |
DE102013213561A1 (de) | System, Verfahren und Computer-Programm-Produkt zum Durchführen von Strahl-Verfolgung | |
Yang et al. | Efficient data management for incoherent ray tracing | |
Silva et al. | GPU pathfinding optimization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for 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: 20140212 |