当前位置: 首页 > 专利查询>ARM有限公司专利>正文

图形处理系统技术方案

技术编号:3903341 阅读:183 留言:0更新日期:2012-04-11 18:40
在图形处理系统中,命令列表阅读器3首先读入并标识命令列表的一部分。对应于命令列表中该部分的命令的图元接着经受仅Z处理经过。这允许Z缓冲器16及分级Z锥体18被用命令列表中该部分的图元的适当Z值来填充。然后图元经受第二正常渲染处理经过,但从第一处理经过填充的Z缓冲器16及Z锥体18与在第二处理经过中执行的Z测试7、10一起使用,以便确定哪个图元将在第二处理经过中对每个采样点进行处理。

【技术实现步骤摘要】

本专利技术涉及计算机图形的处理,更具体而言,涉及用于在显示屏上显示的3维(3D)图形的处理。
技术介绍
如本领域公知的,3D图形处理一般通过首先将要显示的场景 (scene)分成若干个类似的基本分量(称为"图元"(primitive)) 以使3D图形处理操作更易于执行来执行。这些"图元"通常具有简 单多边形、例如三角形的形式。用于要显示的场景的图元通常由图形处理系统的应用程序接口 使用从要求图形显示的应用(例如游戏)接收到的图形绘制指令(请 求)来生成。每个图元在这个阶段通常由顶点(vertex)集合定义并表示。图 元的每个顶点与其表示该顶点的数据集合(例如位置、颜色、材质 (texture)及其它属性数据)相关联。接着,例如在对该顶点(该顶 点所涉及的图元)进行栅格化及渲染(render)以供显示时,使用该 数据。一旦生成并定义了场景的图元及其顶点,则可用图形处理系统对 它们进4亍处理,以^使例如显示该场景。该处理基本包括确定覆盖要处理的场景区域的采样点阵列的哪 些采样点图元被图元所覆盖,并接着确定每个采样点在该采样点呈现 该图元应该具有的外形(例如,在其颜色等方面)。这些处理通常分 别#皮称为栅格化与渲染。栅格化处理确定将用于图元的样本位置(即,在要显示的场景中表示图元要使用的样本点的(x, y)位置)。这一般使用图元的顶点 的位置来实现。渲染处理接着导出显示在样本点的图元必需的数据,例如红、绿及蓝(RGB)颜色值及"a "(透明度)值(即对各样本点"着色(shade)")。如本领域已知的,这可包括应用材质、混合样本点数 据值等。(在3D图形学中,术语"栅格化"有时用来表示至样本位置的 图元转换及渲染。但是,本文中"4册格化,,将用于仅表示将图元邀:据 转换为采样点地址。)这些处理一般通过将采样点"表示"为通常被称为"片元(fragment)"的图形实体来执行,在片元上执行图形处理操作(例 如渲染)。每个此类片元将对应于给定的样本点或者采样点集合,且 实际上表示在所涉及的采样点(正在使用该片元来渲染的采样点)的 图元并用于对其进行渲染。因此"片元"实际上是插入到图元的给定场景空间样本点的图元 数据集合(与其相关联)。它还包括对在所涉及的样本点(片元位置) 的图元进存^色i,^:每图元及其它状态数拔,形片^在被处 理时可被合理地认i是实际上等效于场景的:;"豫素".。..,实际上,'每个图形"片元"可对应于最后显示的单个^f象素(图像 元素)(因为,在像素是最后显示的单个点时,在图形处理器操作(渲 染)的"片元"与该显示的像素之间可存在一对一的映射)。但是, 可存在在片元与显示像素之间不具有一对一对应的情形,例如在显示 最后图像之前在所渲染图像上执行特定形式的后向处理、例如尺度变 小的情形。在一种通常被称为"立即模式"图形处理或渲染的已知图形处理 技术中,图元在其生成时被一个接一个地处理。在这类系统中,基于先到先服务原则将图元(其顶点)传递到图 形系统,因此图元以其接收顺序进行渲染。在图形处理系统中也已知^f吏用所谓"基于区块(tile-based)"或 "延迟"的渲染。在基于区块的渲染中,不是像立即模式中渲染那样一举将整个场景进行处理,而是将要显示的场景分成多个通常称为 "区块"的较小子区域。每个区块(子区域)单独渲染(通常逐个地),然后将所渲染的区块(子区域)进行重组,以便提供完整场景以供显示。在此类布置中, 一般将场景分为规则尺寸及形状的子区域(区块) (其通常为例如正方形或矩形),但是这不是必需的。在立即模式及基于区块的绘制中,至栅格化与渲染处理的输入一 般包括要由图形处理器执行的图形命令列表。如本领域中已知的,该 "命令列表"将包括指示图形处理器绘制图元的命令,以及指示其它 图形处理、例如渲染状态变化的命令,开始及停止区块命令(在基于 区块的系统中)等。在立即模式渲染中,该命令列表将仅列出要逐条执行的命令,但 是在基于区块的绘制中,该列表可以并且通常将被分成"区块"(即, 将把每个区块的命令单独列到其它区块的命令)。当前的图形处理系统的一个缺点是因为图元净皮连续且一般不以 完全前后顺序进行处理,所以给定采样点(且因此片元及^f象素)可在 处理场景以供显示时被多次着色。这种情况在首先接收及渲染的图元 随后被后一图元覆盖使得该首先渲染的图元实际上在所涉及的像素 (及采样点)不可见时出现。图元可以这种方式进行多次改写,且这 一般导致对每个正被渲染的场景执行多次、最终冗余的渲染操作。这 种现象通常被称为"无效渲染(overdraw)"。执行这种最终冗余操作的结果包括降低的帧率及增加的存储器 带宽要求(例如,由于取将被后一图元改写的图元的数据)。这两种 情况都不是合乎需要的,并降低图形处理系统的整体性能。在要渲染 的场景变得更大且更复杂(因为将在可能可见角度存在更多表面)且 在增加可编程片元着色的使用(因为使用可编程片元着色来对给定片 元着色的成本相对较大)时,这些问题将趋于突出。"无效渲染"的问题可通过发送图元用于以前后顺序进行渲染而 显著降低。但是,其它'图形处理要求、例如对诸如材质的资源的相关 访问的需要以及使每帧API调用的数量最小化的需要, 一般授权对图 元的其它优选排序要求。此外,完全前后类别的图元在渲染之前可能 是不实用的,虽然还维持图元至图形处理单元的足够吞吐量。这些及 其它因素意味着帧的图元的前后排序在实践中 一般不是可能或合乎 需要的。因此,已经提议了若干其它技术来尽量降低在处理场景以供显示 时执行的"无效渲染"的数量(即,避免渲染不可见图元和/或片元等)。例如,已知在发送图元(或片元)以供渲染之前执行多种形式的 隐藏表面去除,以便查看该图元(或片元等)是否将被已渲染图元(或 者片元)遮蔽(在这种情况下,不需要渲染该新片元和/或图元)。如 本领域已知的,此类隐藏表面去除可包括例如早期阻塞拣选和/或早期 Z (深度)测试处理。但是,这些"早期"(在渲染之前)隐藏表面去除技术只能考虑 到在要对新图元或片元(被进行"早期"测试的图元或片元)进行处理时已经渲染的图元。这是因为相关测试数据(例如z緩存)将只包 含已经被处理的图元的数据。因此,这些测试不能例如在图元实际上 被渲染顺序中的后一图元阻塞时避免"无效渲染"。对应用(例如游戏)开发人员而言还/>知的是对应用进行配置, 使得每个场景实际上被渲染两次,首先绘制具有无效Z测试与Z写入 以外的所有渲染状态的不透明场景几何图形,然后第二次用所有有效 渲染状态。这具有这样的效果第一渲染经过(pass)有效地用对于每个片 元(样本)位置最近的不透明图元的Z (深度)值来填充Z緩冲器。 在第二全部渲染经过中,因为Z緩冲器现在填充有最近的不透明图元 的Z值,所以在第二经过上的任意早期Z测试可更有效地拒绝被阻塞 的片元,且特别是要考虑到在第一 "仅Z"渲染经过中渲染的所有图元,而不只是考虑到在所涉及片元之前已经渲染的图元。因此,该技术能够提供更有效的早期Z测试处理,但是它具有以下缺点给定场景必须由应用生成并被图形处理系统处理两次, 一次 用于仅Z经过,且接着又用于"全部"渲染经过。虽然这对于功能较 高的、例如桌上型图形系统可能不本文档来自技高网...

【技术保护点】
一种操作图形处理器的方法,其中要由所述图形处理器执行的、包括指示所述图形处理器绘制图元的命令的图形命令列表在所述命令被所述图形处理器执行之前被准备并存储在存储器中,所述方法包括: 所述图形处理器: 在所存储命令列表的一部分中的命令序列上 执行第一处理经过,以便导出可帮助从要响应于所述命令列表的所述部分中的命令而绘制的图元中选择用于对采样点集合中每个采样点进行处理的一个或多个图元的数据; 存储所述所导出数据,以用于帮助选择要在每个采样点进行处理的图元;以及 在所述命令序列 上执行第二处理经过以便对要响应于所存储命令列表的所述部分中的命令而绘制的图元进行处理,使用所存储数据来帮助从要响应于所述所存储命令列表的所述部分中的命令而绘制的图元序列中选择要在所述第二处理经过中对每个采样点进行处理的所述一个或多个图元。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:AH科克斯R埃利奥特R费尔S艾利斯
申请(专利权)人:ARM有限公司
类型:发明
国别省市:GB[英国]

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

1
相关领域技术
  • 暂无相关专利