本发明专利技术涉及用于处理图形的方法和设备。一种用于基于区块的图形渲染系统的基元列举和分类布置,其中可以针对渲染目标区的至少两个不同组的子区域准备基元列表。确定使用可以准备基元列表的渲染目标区的所述至少两个不同组的子区域其中至少两个组的子区域来列举基元以便于渲染的两个或更多备选解决方案(S62)。成本函数然后用于针对每个确定的备选基元列举解决方案评价用于列举基元的成本(S63)且然后基于成本评价来选择将使用的基元列举布置。优选实施方式使用自适应成本函数,该自适应成本函数在使用中可以基于在使用中实际体验的基元列举处理的成本的分析而被修改。
【技术实现步骤摘要】
【专利摘要】本专利技术涉及用于处理图形的方法和设备。一种用于基于区块的图形渲染系统的基元列举和分类布置,其中可以针对渲染目标区的至少两个不同组的子区域准备基元列表。确定使用可以准备基元列表的渲染目标区的所述至少两个不同组的子区域其中至少两个组的子区域来列举基元以便于渲染的两个或更多备选解决方案(S62)。成本函数然后用于针对每个确定的备选基元列举解决方案评价用于列举基元的成本(S63)且然后基于成本评价来选择将使用的基元列举布置。优选实施方式使用自适应成本函数,该自适应成本函数在使用中可以基于在使用中实际体验的基元列举处理的成本的分析而被修改。【专利说明】用于处理图形的方法和设备
本专利技术涉及用于处理图形的方法和设备,且尤其涉及在基于区块的图形处理系统中使用的方法和设备。
技术介绍
如现有技术所已知,图形处理通常通过首先将被显示场景分割成很多小的基本成分或“基元(primitive)”实施,该基元然后经历所需的图形处理操作。图形“基元”通常是诸如三角形的简单多边形形式,且通常通过定义其顶点来描述。很多图形处理系统使用所谓的“基于区块”的渲染。在基于区块的渲染中,二维渲染输出或目标(即渲染处理的输出,诸如将被显示的输出帧)被渲染为通常被称为“区块”的很多较小面积子区域。区块均被单独渲染(典型地一个接着一个)。渲染的区块然后重新组合以提供完整的渲染输出(例如用于显示的帧)。在这种配置中,渲染目标(输出)典型地(通过面积)分割成规则大小和形状的渲染区块(它们通常例如是方形或矩形),但是这并不关键。通常用于“区块化”或“基于区块”的渲染的其他术语包括“组块”(渲染区块被称为“组块”)或“块式”渲染。为方便起见,此处使用术语“区块”和“区块化”,但是应当理解,这些术语旨在涵盖所有备选和等价术语和技术。这些基于区块的渲染的优点在于,不必针对给定区块处理在该区块中不出现的基元,且因此在处理区块时可以被忽略。这允许针对给定渲染输出必须的整体图形处理量减小。在基于区块的渲染系统中,相应地通常希望能够识别且知道在给定渲染区块中实际存在的这些基元,从而例如避免在区块中实际不存在的不必要渲染基元。为了促进这点,已知针对每个渲染区块准备针对该渲染区块被渲染的基元(例如将在区块中出现的基元)的列表。这种“基元列表”(也可以称为“区块列表”)(例如通过参考基元指示器)识别针对讨论区块渲染的基元。针对被渲染的每个区块准备基元列表的处理基本涉及确定针对给定渲染区块应当渲染的基元。该处理通常通过(在所需精确度水平)确定贯穿讨论区块(即,在讨论区块中(至少部分地)出现)的基元且然后准备这些基元的列表以用于被图形处理系统未来使用而实施。(此处应当注意,当基元落到多于一个区块时(这将是很常见的情况),该基元被包括在用于该基元所处的每个区块的区块列表中)。实际上,每个区块可以被认为具有箱(基元列表),被发现落在区块内(即贯穿)的任意基元被放置在所述箱中(并且实际上,以这种方式基于逐个区块分类基元的处理常被称为“装箱”)。如本领域所已知,例如取决于针对区块化和渲染处理的不同部分的效率优化,可以按照变化的精度水平实施确定针对任何给定渲染应当列举(渲染)的基元的处理。例如,按照最精确水平,可以精确地确定给定基元将至少部分出现在哪些区块中,以及该基元然后被包括在仅用于这些区块的基元列表中。这通常被称为“精确”装箱。图1说明精确装箱处理。如图1所示,为了渲染目的,以将被显示的帧I的形式的渲染目标被分割成16个规则大小的区块2。然后针对帧中的每个基元确定该基元实际出现(落在)哪个或哪些区块内。基元被添加到用于它所处的每个区块的基元列表。因而,采用图1示出的示例,基元3被添加到用于区块4的基元列表中,基元5被包括在用于区块6和7的基兀列表中,基兀8被包括在用于区块9、10、11和12的基兀列表中,且基兀13被包括在用于区块12的基元列表中。(此处应当注意,为了清楚目的,图1仅示出少数区块和基元。本领域技术人员应当意识到,在实际图形处理操作中,将典型地可以存在大量更多的基元和区块。)还知道使用比精确装箱实现的精度更低的精度准备基元列表。这例如对于简化基元列表的准备是有用的。一个普遍的“较不精确”装箱技术是“边界框”装箱。在这种情况中,沿着基元或一组基元绘制所谓的“边界框”,且然后确定边界框覆盖的区块。然后针对边界框(至少部分)覆盖的每个区块列举(装箱)边界框代表(即被边界框包含)的基元或多个基兀。—旦已经以这种方式针对每个渲染区块准备将被渲染的基兀的列表(基兀列表),基元列表被存储以用于例如允许系统在渲染讨论区块时识别哪些基元需要被考虑(且渲染)。已经发现这种基于区块的渲染布置很好地工作,因为例如它们可以帮助避免仍针对基元不存在的渲染目标的区域处理所述基元。然而,与需要准备和存储识别针对每个区块渲染的基元相关的一个缺点在于,根据针对例如给定的将被渲染帧的基元的分布,针对帧使用的不同区块的基元列表可以具有不同大小,因为可以是针对不同帧用于区块的基元列表。这意味着例如与其他区块或渲染输出相比,给定渲染输出或区块可以具有用于存储其(多个)基元列表的明显不同的存储器需求。 申请人:在其英国专利N0.2433014中提出了一种改进的基于区块的渲染系统,其准备用于单个渲染区块的基元列表以及用于包含多于一个区块的渲染目标区的基元列表(即,包含将被生成的输出的多于一个的渲染区块(且由此实际上更大区域)的基元列表)。换句话说,也准备除了单个渲染区块之外的基元的列表,能够且将会共同用于多个渲染区块的基元列表可以被准备。如 申请人:早先的专利中所讨论,准备不同渲染目标“区域”基元列表具有很多优点,诸如允许用于基元列表的存储器数量变化,且促进更好的控制以及针对基元列举处理的存储器使用需求的知识。在 申请人:早先的专利中,基元基本分类成用于渲染目标的不同大小区域的基元列表,从而限制将列举给定基元的不同基元列表的数目。这帮助控制基元列表所需的存储器的数量。然而, 申请人:现在意识到,至少在某些情形中,对于其早先专利中描述的方案的一些添加和变型可能是有利的。
技术实现思路
根据本专利技术的第一方面,提供一种在基于区块的图形处理系统中分类图形基元以用于渲染到列表中的方法,所述列表表达将生成的渲染目标的不同区,其中渲染目标被分割成用于渲染目的的多个渲染区块,且其中可以针对所述渲染目标区的至少两个不同组的子区域准备指示将被处理的基元的系统基元列表,所述渲染目标区的所述两个不同组的子区域其中至少一个组包含比单个渲染区块大的所述渲染目标区的子区域,该方法包括以下步骤:针对将被渲染的基元:确定所述基元需要被列举以渲染所述基元的所述渲染目标区的所述至少两个不同组的子区域其中至少两个组的子区域;使用成本函数来评价在用于已经确定所述基元需要被列举的所述渲染目标区子区域的基元列表中列举所述基元的成本;以及基于成本函数评价而选择已经确定所述基元需要被列举以渲染所述基元的所述渲染目标区子区域其中一些子区域以列举所述基元,且在这些所选子区域的基元列表中包括所述基元。根据本专利技术的第二方面,提供一种在基于区块的图形处理系统中分类图形基元以用于渲染到列表中的设备,所述列表表达将生成的渲染目标的不同区,本文档来自技高网...
【技术保护点】
一种在基于区块的图形处理系统中分类图形基元以用于渲染到列表中的方法,所述列表表达将生成的渲染目标的不同区,其中渲染目标被分割成用于渲染目的的多个渲染区块,且其中可以针对所述渲染目标区的至少两个不同的子区域组准备指示将被处理的基元的系统基元列表,所述渲染目标区的所述两个不同的子区域组中的至少一个子区域组包括比单个渲染区块大的所述渲染目标区的子区域,该方法包括以下步骤:针对将被渲染的基元:确定所述基元需要被列举以渲染所述基元的所述渲染目标区的所述至少两个不同的子区域组中的至少两个子区域组的子区域;使用成本函数来评价在用于已经确定所述基元需要被列举的所述渲染目标区子区域的基元列表中列举所述基元的成本;以及基于成本函数评价而选择已经确定所述基元需要被列举以渲染所述基元的所述渲染目标区子区域的一些子区域以列举所述基元,且在这些所选子区域的基元列表中包括所述基元。
【技术特征摘要】
...
【专利技术属性】
技术研发人员:J·塔普利,J·C·格拉斯,J·H·马克拉,
申请(专利权)人:ARM有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。