当前位置: 首页 > 专利查询>辉达公司专利>正文

实时射线追踪应用中使用空间散列的光重要性高速缓存制造技术

技术编号:33907873 阅读:19 留言:0更新日期:2022-06-25 18:58
本发明专利技术公开了实时射线追踪应用中使用空间散列的光重要性高速缓存。可以确定并高速缓存光贡献信息,以用于渲染场景的图像帧。在至少一个实施例中,可以使用空间散列数据结构将所述场景划分为区域,例如八面体体素。使用投射光射线,可以为每个单独的体素计算平均光贡献。然后,可以使用这些光值为每个体素构建一个累积分布函数,该函数可用于在渲染期间为给定帧选择要采样的光。对区域或体素的采样可以至少部分地基于该区域的贡献光的数量以及这些光的相对贡献。这种方法可以非常有效地提高带宽和高速缓存效率,同时提供高图像质量。同时提供高图像质量。同时提供高图像质量。

【技术实现步骤摘要】
实时射线追踪应用中使用空间散列的光重要性高速缓存
[0001]背景
[0002]随着显示器设备的质量以及用户期望的不断提高,需要不断提高显示内容的质量。这可以包括一些任务,例如逼真现实地照明要渲染的场景的对象。在具有许多光源(包括反射或折射表面)的复杂场景中,可能没有足够的资源容量来准确地表示场景中的所有照明,特别是对于需要高帧速率的应用而言。
[0003]图纸简要说明
[0004]参考附图描述,根据本公开的各种实施例,其中:
[0005]图1A、图1B和图1C示出了根据至少一个实施例的场景中对象的射线追踪;
[0006]图2示出了根据至少一个实施例的用于视图和阴影射线两者的射线追踪;
[0007]图3A和图3B示出了根据至少一个实施例的具有八面体体素的射线追踪;
[0008]图4示出了根据至少一个实施例的用于渲染场景的帧的示例过程;
[0009]图5示出了根据至少一个实施例的用于在渲染期间执行射线追踪的过程;
[0010]图6示出了根据至少一个实施例的包括光重要性高速缓存的示例图像生成系统;
[0011]图7示出了根据至少一个实施例的示例数据中心系统;
[0012]图8示出了根据至少一个实施例的计算机系统;
[0013]图9示出了根据至少一个实施例的计算机系统;
[0014]图10示出了根据一个或更多个实施例的图形处理器的至少一部分;以及
[0015]图11示出了根据一个或更多个实施例的图形处理器的至少一部分。
[0016]详细说
[0017]根据各种实施例的方法可以克服现有图像生成方法中的各种缺陷。特别地,各种实施例可以为场景中的一个或更多个光源提供重要信息的确定和高速缓存。可以为场景的各个区域确定所述重要性信息,所述重要性信息可能与各个体素有关,并且可以包括方向性数据。可以至少部分地基于诸如重要光的数量和这些光所确定的重要性之类的因素,将该重要性信息用于确定针对这些不同区域要执行的采样量。相对于对所有大量光源进行采样或者近似于对所有此类光源的采样,这种方法可以显着提高带宽和高速缓存效率,同时提供高图像质量。
[0018]在各种实时和离线渲染系统中,可以使用三维场景的虚拟摄像机视图生成一系列图像或视频帧。该场景可以包括各种类型的静态或动态对象,以及用于照明这些对象的一个或更多个光源。所述对象可以包括任何类型的前景或背景对象,所述任何类型的前景或背景对象可以在图像或其他数字视图中直观表示。所述光源也可以是任何适当的光源或照明源,所述任何适当的光源或照明源可以影响这些场景对象中的一个或更多个,其中该光可以具有不同的颜色或强度。这些场景中至少一些对象也可以是反射性或折射性的,使得它们可以影响来自这些光源中的一个或更多个照明,或者在某些情况下可以用作单独的光源。
[0019]图1A示出了根据各种实施例可以为该场景生成的示例视图100。在该示例中,所述视图100是相对于虚拟三维(3D)环境的虚拟相机的视图,从而从确定的视点得到该环境的
二维(2D)表示。在该特定视图或图像帧中,存在三个对象108、110、112,所述对象在本文中称为场景对象。这些场景对象可以包括能够在场景中表示的任何对象,例如可以包括背景或前景对象、游戏中的玩家化身、动态或静态对象等。这些对象可以具有不同的照明特性,如所述照明特性可以包括对象的至少一部分是不透明的、透明的、反射的、透射的或折射的,以及其他这样的选项。对象也可以具有不同的表面特性或纹理,所述特性或纹理可能会影响其照明特性。在该场景中还存在三个光源102、104、106。这些光源可以是能够产生某种类型照明的任何对象或元素,例如可以包括诸如太阳、灯、霓虹灯等的光源。为了以真实的方式渲染所述场景的该视图,来自各种光源102、104、106的光应当照亮场景对象108、110、112,类似于在现实世界设置中照亮那些场景对象的方式。这不仅包括直接照明,也包括反射和阴影创建等方面。
[0020]确定此类照明的一种方法涉及射线追踪。射线追踪是指一种渲染技术,所述渲染技术利用一种算法来追踪光源发出光的路径,然后在计算机生成的环境中模拟光线与所述射线“撞击”或相交的场景对象交互的方式。射线追踪可以提供真实的阴影和反射,以及精确的半透明和散射。射线追踪还有一个优势,即它可以在图形处理单元(GPU)上执行,例如在NVIDIA 公司生产的GeForce RTX图形卡中执行,以便在足够的时间内执行照明确定,从而针对高帧速率应用可以实时执行准确的渲染。
[0021]图1B所示,该场景的视图130示出了来自两个光源102和106的示例射线。虽然可以从每个潜在光源为场景中的每个潜在像素位置至少投射一个射线,但是这种方法可以是非常耗费资源的。因此,射线追踪方法通常为每个帧选择或“采样”一些该射线,以基于这些采样和(至少在某些情况下)来自先前帧的先前照明信息,来确定近似的经更新的照明信息。图 1B示出了来自光源102和106射线的示例选择。如图所示,来自每个该光源的射线沿着不同的对象或那些对象的部分撞击点,所述击中点至少部分地基于那些在场景中的光源和对象的相对位置。
[0022]根据各种实施例的方法可以利用该信息来允许对帧或场景的射线进行更优化的采样。例如,来自光源102的射线撞击此场景中的所有三个对象,但不撞击场景对象112的右侧。此外,场景对象112阻止来自光源102的射线撞击到场景对象112的右侧的大部分帧。来自光源102的射线主要照射场景对象108的顶部和右侧(为方便起见,在图之间保留了参考),可能是所有场景对象110以及场景对象112的顶部和左侧。然后可以确定所述场景的区域132,在所述区域132中光源102具有相对较高的重要性(更大的贡献),因为该区域包括对象的表面,所述对象的表面可以被来自光源102的射线撞击。类似地,来自光源106的射线撞击场景对象112的所述右侧,但是场景对象112阻止了这些射线撞击场景对象108和110。因此,可以定义所述场景的区域134,其中光源106具有相对重要性。可以看出,光源102对区域134中的照明贡献较小,因为来自该光源的射线大部分被区域134中的物体遮挡。类似地,光源106对区域132的贡献较小,因为来自该光源的射线也大部分被区域132中的物体阻挡。当确定要为一帧或一帧的一部分采样哪些射线时,根据各种实施例的方法可以利用这种重要性信息,因为仅对给定部分或区域更重要贡献的光源的射线进行采样可能会更有价值。
[0023]在至少一个实施例中,可以仅对那些被确定至少为具有某种重要性的光源区域的射线进行采样。在一些实施例中,这可以包括最多最大数量的重要光源。在其他实施例中,即使对于区域几乎没有确定贡献的光源,也可以每帧采样一条或更多条射线,以说明场景
中的变化。例如,物体的移动可以允许射线穿过该区域,或者可以将射线反射到该区域中,等等。此外,可以使用采样来确定贡献确定,因此可以不分析每个潜在的射线,从而可以使用不完整的数据来确定所述贡献计算,并且光源实际上对区本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计算机实现的方法,包括:确定针对虚拟环境中的一个或更多个光源所投射的第一组射线的光信息;至少部分地基于所述光信息,确定相对于所述虚拟环境的多个空间区域的所述一个或更多个光源的值;至少部分地基于所述值,选择相对于所述多个空间区域的针对所述一个或更多个光源的要采样的第二组射线,所述第二组射线包括针对具有较高值的所述光源的更多数量的样本;对所述第二组射线进行采样,以获得所述多个空间区域的更新的照明信息;以及使用所述更新的照明信息来渲染所述虚拟环境的图像。2.根据权利要求1所述的计算机实现的方法,还包括:使用空间散列算法来确定所述虚拟环境的所述多个空间区域,其中所述空间区域还提供方向信息。3.根据权利要求2所述的计算机实现的方法,其中所述空间散列算法将所述虚拟环境分割成与多个八面体体素相对应的所述多个空间区域,所述多个八面体素具有一个或更多个尺寸。4.根据权利要求3所述的计算机实现的方法,还包括:至少部分地基于所选光源相对于各个八面体体素的方向性信息来确定所选光源的所述值。5.根据权利要求1所述的计算机实现的方法,还包括:使用所述值为所述多个空间区域构建累积分布函数(CDF);以及高速缓存根据所述多个空间区域的所述CDF所确定的选择概率数据,所述选择概率数据被用来选择所述第二组射线。6.根据权利要求5所述的计算机实现的方法,还包括:针对所述虚拟环境的图像序列的至少一个图像子集,更新所述多个空间区域的所述CDF。7.根据权利要求1所述的计算机实现的方法,还包括:至多选择具有最高值的最大数量的光源,从所述光源中对所述第二组射线进行采样。8.根据权利要求1所述的计算机实现的方法,还包括:至少部分地基于单个光源相对于单个空间区域的平均光贡献,来确定所述一个或更多个光源相对于所述多个空间区域的的所述值。9.根据权利要求1所述的计算机实现的方法,还包括:使具有低于阈值的确定值的一个或更多个光源被考虑用于采样要渲染的一个或更多个后续图像。10.一种系统,包括:处理器;以及包括指令的存储器,所述指令在由所述处理器执行时使所述系统执行以下操作:确定针对虚拟环境中的一个或更多个光源所投射的第一组射线的光信息;至少部分地基于所述光信息,确定相对于所述虚拟环境的多个空间区域的所述一个或更多个光源的值;
至少部分地基于所述值,选择相对于所述多个空间区域的所述一个或更多个光源的要采样的第二组射线,所述第二组射线包括针对具有较高值的光源的更多数量的样本;对所述第二组射线进行采样,以获得所述多个空间区域的更新的照明信息;以及使用所述更新的照明信息来渲染所述虚拟环境的图像。11.根据权利要求10所述的系统,其中在执行所述指令时进一步使...

【专利技术属性】
技术研发人员:B
申请(专利权)人:辉达公司
类型:发明
国别省市:

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

1