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

用于球面投影的均匀密度立方体贴图渲染制造技术

技术编号:22309430 阅读:41 留言:0更新日期:2019-10-16 09:25
本发明专利技术公开了用于球面投影的均匀密度立方体贴图渲染,具体公开了一种立方体贴图,用于利用预先计算的纹理图像确定表面的外观。本发明专利技术的实施例描述了用于将球形投影渲染为立方体贴图的计算机系统和方法,其减轻了在立方体贴图的边缘附近的非均匀像素密度,以避免伪像并提高渲染性能。

Uniform density cube map rendering for spherical projection

【技术实现步骤摘要】
用于球面投影的均匀密度立方体贴图渲染相关申请的交叉引用本申请要求申请日为2018年3月21日,序列号为62/646,248,案号为NVID-P-WU-16-0056US0,题目为“用于球形投影的均匀密度立方体贴图渲染(UNIFORMDENSITYCUBEMAPRENDERINGFORSPHERICALPROJECTIONS)”的优先权和权益,其全部内容通过引用并入本文。
本专利技术的实施例总地涉及计算机图形领域。更具体地,本专利技术的实施例涉及用于将球形投影渲染为立方体贴图的系统和方法。
技术介绍
立方体贴图(cubemap)可以用于利用预先计算的纹理图像来确定表面(例如,反射表面)的外观。例如,立方体贴图可以用于存储物体周围的环境的图像。在这种情况下,周围的环境被渲染到立方体贴图中。用于将球形投影渲染到立方体贴图中的传统方法倾向于对立方体贴图的角落或边缘附近的区域进行过采样,从而浪费计算资源并降低性能。将球形投影渲染为立方体贴图是反射映射、全向阴影贴图和用于光捕获探针的环境贴图的领域中的关键技术。立方体贴图的过采样区域经常导致视觉变形和伪影。同时,尽管整个剪切空间(clipspace)范围通常用于渲染立方体贴图面,但由于球面的透视变形,在光栅化期间实际上仅需要球面的像素的子集来实现期望的后投影结果。渲染球形投影的现有方法利用不同的映射尺寸和几何形状来减轻非均匀像素分布的影响,例如八面体映射,其使用八个面来捕获和存储周围环境。其他技术包括抛物面映射、金字塔映射和八面体映射。然而,这些技术在渲染和评估时都不利于性能。
技术实现思路
立方体贴图用于存储可以将其应用于改变所渲染表面或对象的外观的图像。例如,立方体贴图中的图像可以表示周围的场景或环境。当使用传统技术将球形投影渲染为立方体贴图时,可能会发生过采样和图像变形,尤其是在立方体贴图的边缘和角落附近。所需要的是一种用于将球形投影渲染为立方体贴图的技术,其减轻了立方体贴图的边缘附近的非均匀像素密度,以避免伪像并提高渲染性能。因此,本文公开了用于将球形投影渲染为具有相对均匀的像素密度的立方体贴图的方法和装置。本专利技术的实施例将立方体贴图的面划分为象限面,并且为每个象限面指派视口。第一变换函数用于确定投影到象限面上的世界空间顶点的坐标,这导致不均匀的像素密度。可以基于变换的坐标使用多视口渲染来同时渲染视口的视图。此后,使用第二变换函数将渲染视图扩展到立方体贴图的面中,该第二变换函数产生具有更均匀像素密度的立方体贴图。以这种方式,减轻了立方体贴图边缘附近的非均匀像素密度,以避免伪像并提高渲染性能。立方体贴图可以存储在计算机存储器中,并且随后在场景的渲染期间对其进行访问。例如,可以访问立方体贴图以使用阴影贴图或环境贴图来渲染场景。根据一个实施例,一种用于将球形投影渲染为立方体贴图的方法,包括:将立方体贴图的至少一个立方体面划分为象限面,将视口指派给象限面,确定投射到象限面上的世界空间顶点的坐标,使用所述坐标渲染多个视口的视图,其中所述视图包括所述顶点,并将视图扩展到至少一个立方体面上,其中扩展到至少一个立方体面上的视图具有近似均匀的像素密度。根据一些实施例,使用下列计算确定投影到象限面上的顶点的位置:其中{u,v}表示坐标,以及其中{x,y}表示在各自的象限面内的顶点的笛卡尔坐标。根据一些实施例,执行第一渲染传递以确定投影到象限面上的世界空间顶点的坐标,并且执行第二渲染传递以将视图扩展到至少一个立方体面中。根据一些实施例,将下列计算用于将视图扩展到立方体面上:其其中|β|==|α|,其中w表示透视值。附图的简要说明包含在本说明书中并形成其一部分的附图示出了本专利技术的实施例,并且与说明书一起用于解释本专利技术的原理:图1是根据本专利技术实施例的用于将球形投影渲染为具有均匀像素密度的立方体贴图的示例性计算机系统的框图。图2A是具有六个立方体面的示例性“展开的”立方体贴图的示意图。图2B是根据本专利技术的实施例描绘的将示例性立方体贴图面划分成象限的的示意图。图2C是具有均匀像素密度的个体立方体贴图面的示例性渲染目标的示意图。图2D是根据本专利技术实施例的使用变换函数从3D球体投影到2D平面上的示例性立方体贴图面的示意图。图2E是根据本专利技术的实施例的使用变换函数将示例性立方体面投影变换(例如,展开)为2D屏幕空间的示意图,该变换函数确定3D立方体贴图面投影的“最佳拟合”表示。图2F是描绘示例性立方体贴图和变形的球形投影的示意图。图2G是根据本专利技术的实施例的描绘示例性立方体贴图面的投影剪切空间的示意图。图3是根据本专利技术的实施例的描绘使用最佳拟合方法将立方体面投影变换为2D屏幕空间的示意图。图4是根据本专利技术的实施例的用于将球形投影渲染为具有所描绘均匀像素密度的立方体贴图的计算机实现的步骤的示例性序列的流程图。图5是根据本专利技术的实施例的用于将球形投影渲染为具有所描绘的均匀像素密度的立方体贴图的框图和数据流程图。详细描述现在将详细参考若干实施例。虽然将结合替代实施例描述主题,但是应该理解,它并不旨在将要求保护的主题限制为这些实施例。相反,所要求保护的主题旨在覆盖替代、修改和等同物,其可以包括在由所附权利要求限定的所要求保护的主题的精神和范围内。此外,在以下详细描述中,阐述了许多具体细节以便提供对所要求保护的主题的透彻理解。然而,本领域技术人员将认识到,可以在没有这些具体细节或其等同物的情况下实践实施例。在其他情况下,没有详细描述众所周知的方法、过程、组件和电路,以免不必要地模糊本主题的方面和特征。以方法的形式呈现和讨论以下详细描述的部分。尽管在本文描述该方法的操作的图(例如,图4)中公开了其步骤和顺序,但是这些步骤和顺序是示例性的。实施例非常适合于执行本文附图的流程图中记载的各种其他步骤或步骤的变体,并且以不同于本文所描绘和描述的顺序来执行。在程序、步骤、逻辑块、处理和对在计算机存储器上执行的数据位的操作的其他符号表示方面来呈现详细描述的一些部分。这些描述和表示是数据处理领域的技术人员用来将他们工作的实质最有效地传达给本领域其他技术人员的手段。在这里通常将程序、计算机执行的步骤、逻辑块、过程等认为是导致期望结果的步骤或指令的自洽序列。这些步骤是需要物理操纵物理量的步骤。通常,尽管不是必须的,这些量采用能够在计算机系统中存储、传输、组合、比较和以其他方式操纵的电信号或磁信号的形式。主要出于通用的原因,已经证明有时将这些信号称为比特、值、元素、符号、字符、项目、数字等是方便的。然而,应该记住,所有这些和类似术语都与适当的物理量相关联,并且仅仅是应用于这些量的便利标签。除非从以下讨论中明确说明,否则应当理解,在整个过程中,利用诸如“访问”、“写入”、“包括”、“存储”、“发送”、“遍历”、“关联”、“识别”等等术语的讨论,是指计算机系统或类似电子计算设备的动作和过程,其将在计算机系统的存储器和寄存器内表示为物理(电子)量的数据操纵和变换为在计算机系统的存储器或寄存器或其他此类信息存储、传输或显示设备中类似地表示为物理量的其他数据。示例性计算机系统本专利技术的实施例涉及用于将球形投影渲染成立方体贴图的计算机系统,该立方体贴图减轻了立方体贴图的边缘附近的非均匀像素密度以避免伪像并提高性能。以下讨论描述了这种示本文档来自技高网...

【技术保护点】
1.一种用于将球形投影渲染为立方体贴图的计算机实现的方法,所述方法包括:将立方体贴图的至少一个立方体面划分成象限面;将视口指派给所述向象限面;确定投影到所述象限面上的世界空间顶点的坐标;使用所述坐标渲染所述视口的视图,其中所述视图包括所述顶点;以及将所述视图扩展到所述至少一个立方体面,其中扩展到所述至少一个立方体面的所述视图包括近似均匀的像素密度。

【技术特征摘要】
2018.03.21 US 62/646,248;2019.03.14 US 16/353,1781.一种用于将球形投影渲染为立方体贴图的计算机实现的方法,所述方法包括:将立方体贴图的至少一个立方体面划分成象限面;将视口指派给所述向象限面;确定投影到所述象限面上的世界空间顶点的坐标;使用所述坐标渲染所述视口的视图,其中所述视图包括所述顶点;以及将所述视图扩展到所述至少一个立方体面,其中扩展到所述至少一个立方体面的所述视图包括近似均匀的像素密度。2.如权利要求1所述的方法,其中使用以下变换函数来执行所述确定投影到所述象限面上的世界空间顶点的坐标:其中{u,v}代表所述坐标,以及其中进一步{x,y}代表在各自的象限面内的顶点的笛卡尔坐标。3.如权利要求2所述的方法,进一步包括:执行第一渲染传递以确定投射到所述象限面上的世界空间顶点的所述坐标;以及执行第二渲染传递以将所述视图扩展到所述至少一个立方体面。4.如权利要求2所述的方法,其中使用以下变换函数来执行所述将所述视图扩展到所述至少一个立方体面:其中其中|β|==|α|,其中{u,v}表示投影到所述象限面上的顶点,其中w表示透视值,以及其中进一步{x,y}表示在各自的象限面内的顶点的笛卡尔坐标。5.如权利要求1所述的方法,进一步包括使用所述立方体贴图渲染场景,并且其中所述立方体贴图包括来自一组贴图中的至少一个贴图,所述一组贴图包括:环境贴图;和阴影贴图。6.如权利要求1所述的方法,其中将配置用于多视图渲染的图形处理器单元(GPU)硬件用于执行所述渲染所述视口的视图。7.如权利要求1所述的方法,进一步包括将所述立方体贴图存储在计算机系统的存储器中。8.一种用于将球形投影渲染成立方体贴图的计算机系统,所述计算机系统包括:存储器,可操作用于存储应用程序的数据和指令;处理器,配置成执行所述指令以控制三维(3D)环境的渲染;以及图形处理单元,通信地耦合到所述存储器和所述处理器,其中所述图形处理单元被配置成响应于所述指令执行将球形投影渲染成立方体贴图的方法,所述渲染的方法包括:将所述立方体贴图的至少一个立方体面划分为象限面;将视口指派给所述象限面;确定投射到所述象限面上的世界空间顶点的坐标;使用所述坐标渲染所述视口的视图,其中所述视图包括所述顶点;以及将所述视图扩展到所述至少一个立方体面中,其中扩展到所述至少一个立方体面中的所述视图的像素密度是近似均匀的。9.如权利要求8所述的计算机系统,其中使用以下变换函数来执行所述确定投影到所述象限面上的世界空间顶点的坐标:其中{u,v}代表所述坐标,以及其中进一步{x,y}代表在各自的象限面内的顶点的笛卡尔坐标。10.如权利要求9所述的计算机系统,其中所述方法进一步包括:执行第一渲染传递...

【专利技术属性】
技术研发人员:A·邓恩M·肖特J·斯皮策
申请(专利权)人:辉达公司
类型:发明
国别省市:美国,US

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

1