本发明专利技术涉及用于处理图形的方法和装置,所述方法确定并存储将为待渲染的多个区块的集合渲染的图元的列表,以及确定并存储用于指示图元列表中的图元在下述区域中的分布的信息,其中该区域被正在为其制定列表的多个区块的集合涵盖。所述装置包括用于确定并存储将为待渲染的多个区块的集合渲染的图元的列表的装置;以及用于确定并存储用于指示图元列表中的图元在下述区域中的分布的信息的装置,其中该区域被正在为其制定列表的多个区块的集合所涵盖。
【技术实现步骤摘要】
本专利技术涉及计算机图形处理系统,尤其是涉及基于区块(tile)的图形处理系统。 将特别地参照三维图形的处理来描述本专利技术,虽然如本领域的技术人员将认识到 的那样,本专利技术也可同样地应用于二维图形的处理。
技术介绍
如本领域中已知的那样,通常通过首先将要显示的场景划分成若干类似的基本成 分(所谓的"图元")以允许更容易地执行3D图形处理操作来执行3D图形处理。这些"图 元"通常具有简单多边形的形式,诸如三角形。 通常使用从需要显示图形的应用程序(例如游戏)接收到的图形绘制指令(请 求)由图形处理系统的应用程序界面来生成要显示的场景的图元。 在此阶段,通常由一组顶点来定义每个图元且每个图元被表示为该组顶点。图元 的每个顶点具有与之相关的表示该顶点的一组数据(诸如位置、颜色、纹理坐标及其它属 性数据)。此数据随后在例如光栅化和渲染顶点(与顶点相关的(多个)图元)以用于显 示时使用。 —旦已生成并定义了场景的图元及其顶点,就可以由图形处理系统来对其进行处 理以便例如在诸如屏幕或打印机之类的输出显示设备上显示场景。 此处理基本上包括确定覆盖将被显示的场景的采样点阵列中的哪些采样点被图元覆盖,并随后确定每个采样点应具有的外观(例如在其颜色等方面)以表示该采样点处的图元。这些处理一般分别被称为光栅化(rasterising)和着色(shading)。 所述光栅化处理确定应被用于图元的采样位置(即将被用来表示将被显示的场景中的图元的采样点的(x,y)位置)。这通常使用图元的顶点的位置来实现。 所述着色处理随后导出在采样点处显示图元(即对每个采样点进行"着色")所必需的数据,诸如红色、绿色和蓝色(RGB)色值和"a "(透明度)值。如本领域中已知的那样,这可以包括应用纹理、将采样点数据值进行混合等等。(在3D图形文献中,术语"光栅化"有时用来意指到样本位置的图元转换和着色两者。然而,在本文中"光栅化"将仅用来指示将图元数据转换成采样点地址。) 通常通过将采样点"表示"为通常称为"碎片"的离散图形实体来执行这些处理,在所述"碎片"上执行图形处理操作(诸如着色)。实际上,将由将被用来对正在讨论的采样点处的图元进行着色的碎片来表示每个采样点。碎片可以表示(与之相关的)单个采样点或多个采样点。所述"碎片"是通过着色处理(着色管线)的图形实体。(因此,"碎片"有效地是(与之相关的)被内插到图元的一个或多个给定屏幕空间采样点的一组图元数据。其还可以包括对正在讨论的一个或多个采样点(碎片位置)处的图元进行着色所需的每图元及其他状态数据。可以合理地将每个图形碎片视为有效地等效于被处理的场景的"像素")。 每个图形"碎片"可以对应于最终输出显示中的单个像素(画面元素)(因为由于像素在最终显示中是奇点,所以在图形处理器进行操作(渲染)的"碎片"与显示的像素之间可能存在一对一映射。)然而,情况可能是在碎片与显示像素之间不存在一对一的对应关系,例如在显示最终图像之前对渲染的图像执行诸如等比縮小之类的特定形式的后处理的情况下。 光栅化和着色处理的输出是被适当地着色的采样点的二维阵列,如本领域中已知的那样,该二维阵列随后可以被应用于显示屏或经由打印机来显示已被处理的场景(在显示之前经受图像的诸如下采样之类的任何后处理)。作为光栅化和着色处理的结果的输出采样点二维阵列可以被视为是"渲染目标",因为其为渲染处理(光栅化和着色处理)作为其输出的位置阵列。实际上,光栅化和着色处理对对应于期望的输出图像区域的二维渲染目标进行"着色"。 许多图形处理系统使用所谓的"基于区块的"渲染。在基于区块的渲染中,将被用来显示场景("渲染目标")的渲染处理的二维输出阵列被细分或划分成用于渲染处理的多个较小子区域,通常称为"区块"。每个区块(子区域)被单独地(通常是一个接一个地)渲染。渲染的区块(子区域)随后被重组以提供例如用于显示的完整输出阵列(渲染目标)。 因此,可以将区块视为渲染处理进行操作的渲染目标区域的细分。在此类布置中,渲染目标区域(输出区域)通常被划分成尺寸和形状规则的区块(它们通常是例如正方形或矩形),但这不是必需的。 —般用于"区块化(tiling)"和"基于区块的"渲染的其它术语包括"分块(chunking)"(将子区域称为"块")和"方块(bucket)"渲染。为方便起见在下文中将使用术语"区块"和"区块化",但应理解的是这些术语意图涵盖所有替换和等效术语和技术。 此类基于区块的渲染的优点是其尤其能够减小图形带宽的主存储器(例如芯片外DDR-SDRAM)的量,并且节电。这是因为基于区块的渲染能够便于避免处理其中将不会出现图元的渲染目标区域(输出区域)的区域的图元。基于区块的渲染还增加空间局部性,这提高芯片上缓冲器和高速缓存的效率。 在基于区块的渲染系统中,因此通常期望能够识别并知道实际上存在于给定区块中的那些图元,以便例如避免不必要地渲染实际上未存在于区块中的图元。为了有利于此,已知的是为每个区块制定对于该区块而言将被渲染的图元的列表(例如其将出现在区块中)。此类"图元列表"(其也可以称为"区块列表")识别(例如通过参考图元指示符)在对正在讨论的区块进行渲染以便显示时将处理的图元。 因此,为将被渲染的每个区块制定图元列表的处理基本上包括确定对于给定区块而言应渲染的图元。此处理通常通过确定(以期望的准确度水平)与正在讨论的区块相交(即其将(至少部分地)出现在正在讨论的区块内)的图元,并随后制定那些图元的列表以供图形处理系统将来使用。(这里应注意的是,在图元落入多于一个的区块的情况下(情况常常如此),其被包括在其所落入的每个区块的区块列表中。而且,由于区块化处理中的有限准确度,所以某些图元可能被列在它们实际上不属于的区块的图元列表中。) 事实上,可以将每个区块视为具有图元仓(bin)(图元列表),被发现可能落入区块之内(即与区块相交)的任何图元被放置到该图元仓中。实际上,用这种方式逐个区块地对图元进行分类的处理一般称为"装仓(bi皿ing)",且这样制定的图元列表一般称为"图 元仓"。 为方便起见,术语"图元仓"在本文中将用于指示出于指示区块(或区块集)的 待处理图元的目的而制定的图元列表。(实质上,如上文所讨论的,"区块"是渲染处理进 行操作的渲染目标(输出)区域子区域(细分),且"图元仓"(图元列表)是图形"作业 (job)"(例如图元)被分布到其中的渲染目标(输出)区域子区域(细分)以辅助渲染处 理("图元仓"有效地记录图形"作业"跨域输出渲染目标的区域的分布)。每个"图元仓" 可以对应于单个区块,但如下文将进一步讨论的那样,图元仓对应于多个区块也是已知且 可能的。) 如本领域中已知的那样,可以以变化的精度水平(例如根据装仓和渲染处理的不 同部分的效率最优化)来执行确定对于任何给定区块而言应列出(渲染)的图元的处理。 例如,以最精确的水平,可以精确地确定给定图元将至少部分地出现在哪些区块中,并随后 将该图元包括在只用于那些区块的图元仓(图元列表)中。这一般称为"精确"装仓。 图1举例说明了精确装仓处理。如图1所示,要显示的场景1的输出形式(渲染 目标区域)被分成十六个尺寸规则的渲染子区域或区块2。然后,对于该场景中的每个图 元确定本文档来自技高网...
【技术保护点】
一种生成数据集合以供当在基于区块的图形处理系统中渲染用于显示的场景时使用的方法,该方法包括:确定并存储将为待渲染的多个区块的集合渲染的图元的列表;以及确定并存储用于指示图元列表中的图元在下述区域中的分布的信息,其中该区域被正在为其制定列表的多个区块的集合涵盖。
【技术特征摘要】
...
【专利技术属性】
技术研发人员:J奈斯塔德,F朗廷,J塔普利,D克罗克斯富德,
申请(专利权)人:ARM有限公司,
类型:发明
国别省市:GB[英国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。