【技术实现步骤摘要】
用于射线跟踪的相干性聚集
[0001]本专利技术涉及用于射线跟踪的相干性聚集。
技术介绍
[0002]射线跟踪系统可以模拟射线(例如射线)与场景相互作用的方式。例如,射线跟踪技术可以用于被配置成从3
‑
D场景描述产生图像的图形渲染系统中。图像可以是具有照片真实感的,或实现其他目标。例如,动画电影可以使用3
‑
D渲染技术来制作。3D场景的描述通常包括定义场景中的几何形状的数据。这种几何结构数据通常根据图元来定义,图元通常是三角形图元,但有时也可以是其他形状,例如其他多边形、线或点。
[0003]射线跟踪模仿光与场景中的对象的自然交互,并且复杂的渲染特征可以自然地从射线跟踪3
‑
D场景中产生。射线跟踪可以在逐个像素的级别上相对容易地并行化,因为像素通常彼此独立。然而,在诸如环境遮挡、反射、焦散线等的情况下,由于3
‑
D场景中射线的分布的和不同的位置和行进方向,难以将射线跟踪中涉及的处理流水线化。射线跟踪允许渲染逼真的图像,但通常需要高水平的处理能力和 ...
【技术保护点】
【技术特征摘要】
1.一种在射线跟踪系统中对射线进行相干性聚集的方法,所述方法包括:定义多条射线,每条射线具有与其相关联的在第一坐标系中定义所述射线的射线信息,定义包括多个节点的分层加速结构,所述多个节点包括上层节点和下层节点,所述加速结构的每个节点具有与其相关联的几何结构信息,其中所述上层节点的所述几何结构信息在所述第一坐标系中定义,并且所述下层节点中的每个节点的所述几何结构信息在不同于所述第一坐标系的第二坐标系中定义,其中所述下层节点在所述加速结构内以一个或多个实例被实例化,每个实例与实例变换相关联,所述实例变换指定所述第一坐标系与针对所述实例的相应的所述第二坐标系之间的关系,所述方法还包括:将所述几何结构信息和所述实例变换存储(712)在存储器(112)中;将多个射线组聚集(714)在一起,其中每个组需要针对所述分层加速结构中的相应节点的相交测试;选择(716)所述组中的一个组以用于相交测试,其中要针对其测试的相应节点是下层节点的实例;在实例变换高速缓存(122,126,132,136)中搜索(720)所述实例的实例变换;如果在所述实例变换高速缓存中发现所述实例变换,提交(726)所选择的射线组以用于相交测试,并且如果在所述实例变换高速缓存中未找到所述实例变换:检索(724)所述实例变换并将其加载(725)到所述实例变换高速缓存中;以及提交(726)所选择的射线组以用于相交测试。2.根据权利要求1所述的方法,其中:(A)检索所述实例变换包括从加速结构高速缓存(114)请求(724)所述实例变换;和/或(B)所述方法还包括在提交所选择的射线组以用于相交测试的步骤之前,从高速缓存检索所选择的下层节点的几何结构信息,其中检索所述几何结构信息可选地包括从所述加速结构高速缓存(114)请求(718)所述几何结构信息;以及可选地与(A)和(B)中的一者或两者组合,其中所述加速结构高速缓存(114)从所述存储器(112)检索尚未存储在所述加速结构高速缓存中的任何所请求的几何结构信息和/或实例变换,并且返回所请求的几何结构信息和/或实例变换。3.根据前述权利要求中任一项所述的方法,包括基于以下标准中的一个或多个来选择(716)用于相交测试的所述射线组:检测所述组中的射线的数目超过第一预定阈值;检测所有所述组中的射线的总数目超过第二预定阈值;以及检测用于执行所述相交测试的计算资源未被充分利用。4.根据前述权利要求中任一项所述的方法,其中当在所述实例变换缓存中未找到所述实例变换时,检索所述实例变换包括:请求(724)所述实例变换;监测所述实例变换是否已被返回;以及
在检测到所述实例变换已被返回之后,继续提交(726)所选择的射线组以用于相交测试,以及可选地其中监测所述实例变换是否已被返回包括:在请求所述实例变换时,设置与所述实例变换相关联的标志位(312);以及在接收到所返回的实例变换时,清除所述标志位(312)。5.一种用于在射线跟踪系统中对射线进行相干性聚集的系统(100),所述系统包括:射线存储装置(110),所述射线存储装置被配置成存储多条射线的射线信息,每条射线的所述射线信息在第一坐标系中定义所述射线;存储器(112),所述存储器被配置成存储:与分层加速结构的多个节点中的每个节点相关联的几何结构信息,所述多个节点包括上层节点和下层节点,其中所述上层节点的所述几何结构信息在所述第一坐标系中定义,并且所述下层节点中的每个节点的所述几何结构信息在与所述第一坐标系不同的第二坐标系中定义,其中所述下层节点在所述加速结构内以一个或多个实例被实例化,每个实例与实例变换相关联,所述实例变换指定所述第一坐标系与针对所述实例的相应的所述第二坐标系之间的关系,所述存储器还被配置成存储所述实例变换;实例变换高速缓存(122,126,132,136),所述实例变换高速缓存被配置成临时存储实例变换;以及相干性聚集单元(120),所述相干性聚集单元被配置成:将多个射线组聚集(714)在一起,其中每个组需要针对所述分层加速结构中的相应节点的相交测试;选择(716)所述群组中的一个群组以用于相交测试,其中要针对其测试的相应节点是下层节点的实例;搜索(720)所述实例变换高速缓存(122,126,132,136)以寻找所述下层节点的所述实例变换;如果在所述实例变换高速缓存中发现所述实例变换,提交(726)所选择的射线组以用于相交测试,并且如果在所述实例变换高速缓存中未找到所述实例变换:检索(724)所述实例变换并将其加载(725)到所述实例变换高速缓存(122,126,132,136)中;以及提交(726)所选择的射线组以用于相交测试。6.根据权利要求5所述...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。