【技术实现步骤摘要】
处理图形图元的方法、图形处理系统和存储介质
本文所描述的技术涉及计算机图形处理,特别涉及在输出的渲染期对图形图元(graphicsprimitive)的处理。
技术介绍
正常情况下,执行图形处理首先是通过把要渲染的图形处理(渲染)输出(诸如要显示的帧)划分成多个相似的基本组件(所-谓的“图元”),以使更容易执行图形处理操作。这些“图元”通常采用简单多边形的形式,诸如三角形。各个图元在这个级通常是由顶点集限定并表示的。图元的各个顶点已经与表示该顶点的数据集(诸如位置、颜色、纹理以及其它属性数据)关联。然后,例如在栅格化(rasterising)和渲染与该顶点相关的图元时使用这种“顶点数据”,以便生成图形处理系统的希望渲染输出。对于要由图形处理系统生成的给定输出(例如,待显示的帧),通常作为针对所讨论的输出而定义的顶点集。然后,要针对该输出进行处理的图元将被指示为包括正被生成的图形处理输出的顶点集中的给定顶点。通常,将总体输出(例如,待生成的帧)划分成较小的处理单位(称为“绘图调用(drawcall)”)。各个绘图调用将具有为其而定义的相应的顶点集和使用这些顶点的图元集。针对给定帧,例如,可能有大约几百次绘图调用以及数十万图元。一旦生成和定义了图元及其顶点,就可以由图形处理系统对它们进行处理,以便生成希望的图形处理输出(渲染目标),诸如用于显示的帧。这基本上涉及确定与待处理的渲染输出面积关联的采样点阵列中的哪些采样点被图元覆盖,然后确定各个采样点应具有的外观(appearance)(例如,根据其颜 ...
【技术保护点】
1.一种使用图形处理系统对图形图元进行处理的方法,所述图形处理系统包括存储器以及和所述存储器通信的图形处理器,其中,所述图形处理器被配置成,通过对用于渲染输出的多个图元进行渲染来生成所述渲染输出,其中,由所述图形处理器使用关联图元数据对图元进行渲染,所述关联图元数据包括表示所述图元的几何数据以及指示要在对所述图元进行栅格化和/或渲染时执行的操作的状态数据,所述方法包括以下步骤:/n将所述渲染输出划分成多个区域以用于渲染,各个区域包括所述渲染输出的相应面积;以及/n针对接收到的要处理的一个或更多个图元的集合,进行如下操作:/n获取用于对所述一个或更多个图元的集合进行渲染的关联几何数据;/n确定针对所述渲染输出的所述多个区域中的哪些区域应当渲染所述一个或更多个图元的集合;以及/n针对所述渲染输出中的被确定应当渲染所述一个或更多个图元的集合的各个区域,将所述一个或更多个图元的几何数据连同要用于对所述一个或更多个图元的集合进行栅格化和/或渲染的关联状态数据的指示一起存储在存储器中的针对该区域的相应数据结构中,/n使得针对所述待渲染的一个或更多个图元的集合的关联状态数据的指示以及所述几何数据被存 ...
【技术特征摘要】
20191127 US 16/697,9841.一种使用图形处理系统对图形图元进行处理的方法,所述图形处理系统包括存储器以及和所述存储器通信的图形处理器,其中,所述图形处理器被配置成,通过对用于渲染输出的多个图元进行渲染来生成所述渲染输出,其中,由所述图形处理器使用关联图元数据对图元进行渲染,所述关联图元数据包括表示所述图元的几何数据以及指示要在对所述图元进行栅格化和/或渲染时执行的操作的状态数据,所述方法包括以下步骤:
将所述渲染输出划分成多个区域以用于渲染,各个区域包括所述渲染输出的相应面积;以及
针对接收到的要处理的一个或更多个图元的集合,进行如下操作:
获取用于对所述一个或更多个图元的集合进行渲染的关联几何数据;
确定针对所述渲染输出的所述多个区域中的哪些区域应当渲染所述一个或更多个图元的集合;以及
针对所述渲染输出中的被确定应当渲染所述一个或更多个图元的集合的各个区域,将所述一个或更多个图元的几何数据连同要用于对所述一个或更多个图元的集合进行栅格化和/或渲染的关联状态数据的指示一起存储在存储器中的针对该区域的相应数据结构中,
使得针对所述待渲染的一个或更多个图元的集合的关联状态数据的指示以及所述几何数据被存储在针对所述渲染输出的被确定应当渲染所述一个或更多个图元的集合的各个不同区域的相应不同数据结构中。
2.根据权利要求1所述的方法,其中,将所述几何数据和状态数据存储在针对区域的相应数据结构中的步骤包括:确定所述存储器中是否已经存在针对该区域的数据结构,并且当所述存储器中已经存在针对该区域的数据结构时,将所述图元数据添加至现有数据结构,而如果不存在针对该区域的数据结构,则所述方法包括以下步骤:生成针对该区域的新数据结构。
3.根据权利要求2所述的方法,所述方法包括以下步骤:当确定了应当将针对一个或更多个图元的集合的新几何数据和状态数据存储在存储器中的一个或更多个数据结构中时,确定可用空间是否小于所述存储器的可用空间阈值,并且当可用空间小于所述存储器的所述可用空间阈值时,进行如下操作:
从存储器中选择一个或更多个区域进行清除,所述一个或更多个区域的数据结构已经存在于所述存储器中;从针对所选区域的数据结构读出供所述图形处理器使用的数据;然后,从所述存储器废弃针对所选区域的数据结构以释放存储空间。
4.一种使用图形处理系统对图形图元进行处理的方法,所述图形处理系统包括存储器以及和所述存储器通信的图形处理器,其中,所述图形处理器被配置成,通过对用于渲染输出的多个图元进行渲染来生成所述渲染输出,其中,由所述图形处理器使用关联图元数据对图元进行渲染,所述关联图元数据包括表示所述图元的几何数据以及指示要在对所述图元进行栅格化和/或渲染时执行的操作的状态数据,其中,所述渲染输出被划分成多个区域以用于渲染,各个区域包括所述渲染输出的相应面积,并且其中,把要用于对图元进行渲染的状态数据的指示以及几何数据存储在存储器中的针对不同区域的相应不同数据结构中,所述方法包括以下步骤:
当针对一个或更多个图元的集合的新数据要被存储在存储器中时,确定可用空间是否小于所述存储器中的针对该数据的可用空间阈值,并且当可用空间小于所述存储器的所述可用空间阈值时,进行如下操作:
从存储器中选择一个或更多个区域进行清除,所述一个或更多个区域的数据结构已经存在于所述存储器中;从针对所选区域的数据结构读出供所述图形处理器使用的数据;然后,从所述存储器废弃针对所选区域的数据结构以释放存储空间。
5.根据权利要求3或4所述的方法,其中,基于当前在所述存储器中的哪个区域存储有最大量的图元数据,来选择要清除的区域。
6.根据权利要求3或4所述的方法,其中,从针对所选区域的数据结构读出供所述图形处理器使用的数据的步骤包括:将所述状态数据的指示和所述几何数据传递至所述图形处理器,以对在针对所选区域的数据结构中存储了所述状态数据的指示和所述几何数据的图元进行渲染。
7.根据权利要求3或4所述的方法,所述方法包括以下步骤:选择要清除的第一区域;使用在针对所述第一区域的相应数据结构中针对所述第一区域的一个或更多个图元存储的所述几何数据和所述关联状态数据来对所述一个或更多个图元进行渲染;以及废弃针对所述第一区域的数据结构,
所述方法还包括以下步骤:当确定了应当渲染所述第一区域的后续图元时,在存所述储器中生成针对所述第一区域的新数据结构。
8.根据权利要求1至4中任一项所述的方法,其中,所述存储器包括多个存储块,并且其中,生成针对区域的数据结构的步骤包括:为该区域分配第一存储块,并将该区域的图元数据添加到所述第一存储块中,直到所述第一存储块满了为止;并且当所述第一存储块已满时,为该区域分配第二存储块并链接所述第一存储块和所述第二存储块,使得所述数据结构包括链接的存储块集。
9.一种使用图形处理系统对图形图元进行处理的方法,所述图形处理系统包括存储器以及和所述存储器通信的图形处理器,其中,所述图形处理器被配置成,通过对用于渲染输出的多个图元进行渲染来生成所述渲染输出,其中,由所述图形处理器使用关联图元数据对图元进行渲染,所述关联图元数据包括表示所述图元的几何数据以及指示要在对所述图元进行栅格化和/或渲染时执行的操作的状态数据,所述方法包括以下步骤:
将所述渲染输出划分成多个区域以用于渲染,各个区域包括所述渲染输出的相应面积;以及
针对接收到的要处理的一个或更多个图元的集合:
获取用于对所述一个或更多个图元的集合进行渲染的关联几何数据;
确定针对所述渲染输出的所述多个区域中的哪些区域应当渲染所述一个或更多个图元的集合;以及
针对所述渲染输出中的被确定应当渲染所述一个或更多个图元的集合的各个区域,将所述一个或更多个图元的几何数据连同要用于对所述一个或更多个图元的集合进行栅格化和/或渲染的关联状态数据的指示一起存储在存储器中的针对该区域的相应数据结构中,使得针对所述待渲染的一个或更多个图元的集合的关联状态数据的指示以及所述几何数据被存储在针对所述渲染输出的被确定应当渲染所述一个或更多个图元的集合的各个不同区域的相应不同数据结构中;
所述方法还包括以下步骤:
当针对一个或更多个图元的集合的新数据要被存储在存储器中时,确定可用空间是否小于所述存储器中的针对该数据的可用空间阈值,并且当可用空间小于所述存储器的所述可用空间阈值时,进行如下操作:
从存储器中选择一个或更多个区域进行清除,所述一个或更多个区域的数据结构已经存在于所述存储器中;从针对所选区域的数据结构读出供所述图形处理器使用的数据;然后,从所述存储器废弃针对所选区域的数据结构以释放存储空间。
10.一种图形处理系统,所述图形处理系统包括存储器以及和所述存储器通信的图形处理器,其中,所述图形处理器被配置成,通过对用于渲染输出的多个图元进行渲染来生成所述渲染输出,其中,由所述图形处理器使用关联图元数据对图元进行渲染,所述关联图元数据包括表示所述图元的几何数据以及指示要在对所述图元进行栅格化和/或渲染时执行的操作的状态数据,所述图形处理器包括:
图元分类电路,所述图元分类电路被配置成:
针对接收到的要处理的一个或更多个图元的集合,进行如下操作:
获取用于对所述一个或更多个图元的集合进行渲染的关联几何数据;
确定针对所述渲染输出已被划分成的用于渲染目的的多个区域中的哪些区域应当渲染所述一个或更多个图元的集合,各个区域包括所述渲染输出的相应面积;以及
图元数据存储电路,所述图元数据存储电路被配置成:
针对所述渲染输出中的被所述图元...
【专利技术属性】
技术研发人员:I·R·布拉特,A·D·恩格哈斯特韦德,A·E·查芬,A·L·塞尔维克,O·H·乌尔恩霍特,T·J·奥尔森,
申请(专利权)人:Arm有限公司,
类型:发明
国别省市:英国;GB
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。