用于光线跟踪的混合层级制造技术

技术编号:20178702 阅读:20 留言:0更新日期:2019-01-23 00:59
提供用于执行相交测试以用于绘制3D场景的图像的方法和光线跟踪单元。分层加速结构可以通过以下方式被遍历:根据第一遍历技术遍历分层加速结构的一个或多个较高级别的节点,第一遍历技术是深度优先遍历技术;以及根据第二遍历技术遍历分层加速结构的一个或多个较低级别的节点,第二遍历技术不是深度优先遍历技术。遍历分层加速结构的结果被用于绘制3D场景的图像。加速结构的较高级别可以根据空间细分结构来限定,而加速结构的较低级别可以根据包围体结构来限定。

Mixed Level for Ray Tracking

Provides a method and ray tracing unit for performing intersection tests for rendering images of 3D scenes. The hierarchical acceleration structure can be traversed in the following ways: according to the first traversal technology, one or more higher-level nodes of the hierarchical acceleration structure can be traversed; the first traversal technology is depth-first traversal technology; and according to the second traversal technology, one or more lower-level nodes of the hierarchical acceleration structure can be traversed; the second traversal technology is not depth-first traversal technology. The results of traversing hierarchical acceleration structures are used to render images of 3D scenes. The higher level of the acceleration structure can be defined according to the spatial subdivision structure, while the lower level of the acceleration structure can be defined according to the enclosure structure.

【技术实现步骤摘要】
用于光线跟踪的混合层级
本专利技术涉及图像处理,更具体地,本专利技术涉及用于光线跟踪的图像处理。
技术介绍
光线跟踪系统可以模拟在其中光线(例如光的光线)与场景相互作用的方式。例如,光线跟踪技术可以被用在图形绘制系统中,该图形绘制系统被配置为根据3-D场景描述产生图像。图像可以是具有照片真实感的,或实现其他目标。例如,动画电影可以使用3-D绘制技术来产生。3D场景的描述通常包括限定场景中的几何形状的数据。该几何形状数据通常根据图元来限定,图元通常是三角形图元,但有时可以是其他形状,诸如其他多边形、线或点。光线跟踪模仿光线与场景中物体的自然相互作用,精细的绘制特征可以自然地从光线跟踪3-D场景中出现。光线跟踪可以对逐个像素级别相对容易地被并行化,因为像素通常是相互独立的。然而,由于在诸如环境遮挡、反射、焦散等的情况下3-D场景中的光线的分布式的和不同的位置和行进方向,很难对光线跟踪中涉及的处理进行流水线化。光线跟踪允许逼真的图像被绘制,但通常需要高水平的处理能力和大的工作存储器,使得光线跟踪可能难以实现以实时绘制图像(例如,用于游戏应用),尤其是在可能对硅区域、成本和功耗有严格的限制的设备上,诸如在移动设备(例如智能手机、平板电脑、笔记本电脑等)上。在非常广泛的层级上,光线跟踪涉及:(i)标识场景中的光线和几何形状(例如,图元)之间的相交,以及(ii)响应于标识相交执行一些处理(例如,通过执行着色器程序)以确定相交如何影响正在被绘制的图像。着色器程序的执行可能导致更多光线被发射到场景中。这些更多的光线可以被称为“二次光线”。在标识场景中的光线和几何形状之间的相交时许多处理被涉及。在一种非常初级的方法中,每个光线可以针对场景中的每个图元被测试,然后当所有相交命中被确定时,最近的相交可以被标识。对于可能具有数百万或数十亿个图元的场景(其中要被处理的光线的数目也可能是数百万),这种方法是不可行的。所以,光线跟踪系统通常使用加速结构,该加速结构以可以减少用于相交测试所需的工作的方式表征场景中的几何形状。然而,即使使用当前最先进的加速结构,也难以以适合于实时绘制图像的速率(例如,用于游戏应用)执行相交测试,特别是在对硅区域、成本和功耗具有严格的限制的设备上,诸如在移动设备(例如智能手机、平板电脑、笔记本电脑等)上。
技术实现思路

技术实现思路
被提供以简化的形式来介绍一些概念,这些概念将在下面的具体实施方式中进一步被描述。本
技术实现思路
不旨在标识所要求保护的技术主题的关键特征或必要特征,也不旨在被用于限制所要求保护的技术主题的范围。提供了一种在光线跟踪系统中执行相交测试以用于绘制3D场景的图像的计算机实现的方法,该方法包括:通过以下方式遍历分层加速结构:根据第一遍历技术遍历分层加速结构的一个或多个较高级别的节点,上述第一遍历技术是深度优先遍历技术;以及根据第二遍历技术遍历分层加速结构的一个或多个较低级别的节点,上述第二遍历技术不是深度优先遍历技术;其中上述遍历分层加速结构的结果被用于绘制3D场景的图像。提供了一种光线跟踪单元,该光线跟踪单元被配置为执行相交测试以用于绘制3D场景的图像,该光线跟踪单元包括:相交测试逻辑,被配置为访问分层加速结构并通过以下方式遍历分层加速结构:根据第一遍历技术遍历分层加速结构的一个或多个较高级别的节点,上述第一遍历技术基于深度优先遍历技术;以及根据第二遍历技术遍历分层加速结构的一个或多个较低级别的节点,上述第二遍历技术不是深度优先遍历技术;以及处理逻辑,被配置为使用遍历分层加速结构的结果以用于绘制3D场景的图像。第二遍历技术可以基于广度优先遍历技术,其中节点与光线的相交测试基于节点数据和光线数据的可用性(例如,使用调度方案)来调度。例如,分层加速结构的一个或多个较低级别的节点可以根据第二遍历技术通过将相交测试工作项收集到要被并行执行的集合中来遍历,其中相交测试工作项标识要被用于相交测试的光线和节点,并且其中工作项集合基于集合中的工作项的数目被调度以执行。根据深度优先遍历技术遍历分层加速结构的一个或多个较高级别的节点可以包括使用度量来确定下降分层加速结构的节点的顺序。该度量可以包括:(i)距离度量分量,其中该距离度量分量被布置为使得较近的节点在较远的节点之前被下降;(ii)遮挡度量分量,其中该遮挡度量分量被布置为使得具有较多遮挡几何形状的节点在具有较少遮挡几何形状的节点之前被下降;(iii)相交长度度量分量,其中该相交长度度量分量被布置为使得具有较长相交间隔的光线的节点在具有较短相交间隔的光线的节点之前被下降(其中,用于光线和节点的相交间隔是光线进入由节点表示的体积的点与光线离开体积的点之间的距离);和/或(iv)先前相交度量分量,其中相交数目的指示被存储以用于一个或多个较高级别的不同节点,并且其中先前相交度量分量被布置为基于上述指示使得具有较多相交数目的节点在具有较少相交数目的节点之前被下降。分层加速结构的一个或多个较高级别的节点可以根据第一结构来限定,并且分层加速结构的一个或多个较低级别的节点可以根据第二结构来限定,其中第一结构不同于第二结构。分层加速结构的一个或多个较高级别的节点可以根据空间细分结构来限定,诸如:(i)网格结构,(ii)多级网格结构,(iii)八叉树结构,或(iv)空间分隔结构(例如k-d树)。分层加速结构的一个或多个较低级别的节点可以根据包围体结构来限定。包围体结构可以参考八叉树结构来限定。根据深度优先遍历技术被遍历的较高级别节点的数目可以被预先确定。备选地,根据深度优先遍历技术要被遍历的较高级别节点的数目的指示可以从存储器被检索,其中该指示在分层加速结构被构建时被确定,并被存储在存储器中。提供了一种生成被用于光线跟踪系统中的相交测试的分层加速结构的计算机实现的方法,该方法包括:接收用于位于3D场景中的图元的原始数据;基于所接收的原始数据确定分层加速结构的节点,其中分层加速结构的一个或多个较高级别节点根据空间细分结构被限定,并且其中分层加速结构的一个或多个较低级别的节点根据包围体结构被限定;以及存储用于在相交测试中使用的分层加速结构。提供了一种处理模块,该处理模块被配置为生成要被用于光线跟踪系统中的相交测试的分层加速结构,该处理模块包括:输入,被配置为接收用于位于3D场景中的图元的图元数据;以及加速结构构建逻辑,被配置为基于所接收的图元数据来确定分层加速结构的节点,其中分层加速结构的一个或多个较高级别的节点根据空间细分结构来限定,并且其中分层加速结构的一个或多个较低级别的节点根据包围体结构来限定;其中,处理模块被配置为使得分层加速结构被存储以用于相交测试。分层加速结构的节点可以表示3D场景内的体积元素,其中图元指示可以被存储以用于分层加速结构的叶节点,以指示存在于对应于相应的叶节点的体积元素内的图元。分层加速结构的节点可以通过标识3D场景内的体积元素内哪些图元存在来确定。在本文所描述的示例中,一个或多个较高级别的节点在分层加速结构的顶部处,并且一个或多个较低级别的节点在分层加速结构中的一个或多个较高级别下方(例如,紧接在其下方)。一个或多个较低级别的节点可以表示分层加速结构内的多子层级,并且子层级的根节点可以被表示为分层加速结构的一个或多个较高级别内的叶节点。本文所描本文档来自技高网
...

【技术保护点】
1.一种在光线跟踪系统中执行相交测试以用于绘制3D场景的图像的计算机实现的方法,所述方法包括:通过以下方式遍历分层加速结构:根据第一遍历技术遍历所述分层加速结构的一个或多个高级别的节点,所述第一遍历技术是深度优先遍历技术;以及根据第二遍历技术遍历所述分层加速结构的一个或多个低级别的节点,所述第二遍历技术不是深度优先遍历技术;其中所述遍历所述分层加速结构的结果被用于绘制所述3D场景的所述图像。

【技术特征摘要】
2017.07.13 US 15/649,4091.一种在光线跟踪系统中执行相交测试以用于绘制3D场景的图像的计算机实现的方法,所述方法包括:通过以下方式遍历分层加速结构:根据第一遍历技术遍历所述分层加速结构的一个或多个高级别的节点,所述第一遍历技术是深度优先遍历技术;以及根据第二遍历技术遍历所述分层加速结构的一个或多个低级别的节点,所述第二遍历技术不是深度优先遍历技术;其中所述遍历所述分层加速结构的结果被用于绘制所述3D场景的所述图像。2.根据权利要求1所述的方法,其中所述第二遍历技术基于广度优先遍历技术,其中节点与光线的相交测试基于节点数据和光线数据的可用性而被调度。3.根据任一前述权利要求所述的方法,其中所述一个或多个高级别的节点在所述分层加速结构的顶部处,并且其中所述一个或多个低级别的节点在所述分层加速结构中的所述一个或多个高级别的下方。4.根据任一前述权利要求所述的方法,其中根据所述深度优先遍历技术所述遍历所述分层加速结构的一个或多个高级别的节点包括:使用度量来确定使所述分层加速结构的节点下降的顺序。5.根据权利要求4所述的方法,其中所述度量包括距离度量分量,其中所述距离度量分量被布置为使得较近的节点在较远的节点之前下降。6.根据权利要求4或5所述的方法,其中所述度量包括遮挡度量分量,其中所述遮挡度量分量被布置成使得具有更多遮挡几何形状的节点在具有较少遮挡几何形状的节点之前下降。7.根据权利要求4至6中的任一项所述的方法,其中所述度量包括相交长度度量分量,其中所述相交长度度量分量被布置成使得具有较长相交间隔的光线的节点在具有较短相交间隔的所述光线的节点之前下降。8.根据权利要求4至7中的任一项所述的方法,其中所述相交的数目的指示被存储用于所述一个或多个高级别的不同节点的,并且其中所述度量包括先前相交度量分量,其中所述先前相交度量分量被布置成基于所述指示使得具有较多相交数目的节点在具有较少相交数目的节点之前下降。9.根据任一前述权利要求所述的方法,其中:(i)根据所述深度优先遍历技术被遍历的所述高级别的节点的数目被预先确定;或者(ii)所述方法进一步包括:从存储器检索将根据所述深度优先遍历技术而被遍历的所述高级别的节点的数目的指示,其中所述指示在所述分层加速结构被构建时而被确定,并且被存储在所述存储器中。10.一种光线跟踪单元,被配置为执行相交测试以用于绘制3D场景的图像,所述光线跟踪单元包括:相交测试逻辑,被配置为访问分层加速结构并通过以下方式遍历所述分层加速结构:根据第一遍历技术遍历分层加速结构的一个或多个高级别的节点,所述第一遍历技术基于深度优先遍历技术;以及根据第二遍历技术遍历分层加速结构的一个或多个低级别的节点,所述第二遍历技术不是深度优先遍历技术;以及处理逻辑,被配置为使用遍历所述分层加速结构的结果以用于绘制所述3D场景的所述图像。11.根据权利要求10所述的光线跟踪单元,其中所述第二遍历技术基于广度优先遍历技术,其中所述相交测试逻辑包括调度逻辑,所述调度逻辑被配置为基于节点数据和光线数据的可用性来调度节点与光线的相交测试,以及其中所述...

【专利技术属性】
技术研发人员:G·克拉克J·W·豪森S·J·克洛赛特J·德塞尔
申请(专利权)人:想象技术有限公司
类型:发明
国别省市:英国,GB

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1