The hidden surface is eliminated in the graphics processing system. The early depth test stages (4, 13) of the graphics processing line (1) are configured to broadcast (9, 10, 11, 14) to other phases in the pipeline (3, 4, 6, 12) through the segments of these early depth tests. Other phases in the pipeline then use early depth testing to determine whether any processing of the segments they currently process can be stopped by information.
【技术实现步骤摘要】
图形处理系统中的隐藏面消除
本专利技术涉及计算机图形处理,并且具体地说,涉及图形处理中的隐藏面消除。
技术介绍
如本领域中已知的,通常通过以下步骤执行图形处理:首先将图形处理(渲染)输出(诸如要显示的帧)分为多个相似的基本组成(称为“基元”)以使得能够更加容易地执行图形处理操作。这些“基元”通常采用简单多边形(诸如三角形)的形式。用于输出(诸如要显示的帧)的基元通常利用从需要图形处理的应用(例如游戏)接收到的图形绘制指令(请求)由用于图形处理系统的应用程序接口生成。各个基元在这个阶段通常通过一组顶点限定并由其表示。基元的各个顶点与表示所述顶点的一组数据(诸如位置、颜色、纹理和其它属性数据)关联。随后例如当对所述顶点(与所述顶点相关的基元)进行栅格化和渲染时,使用该数据,例如以用于显示。一旦生成和限定了基元和它们的顶点,它们可通过图形处理系统进行处理,以例如显示帧。该处理基本上涉及以下步骤:确定在将要处理的覆盖输出区域的一系列采样点中哪些采样点被基元覆盖,以及随后确定各个采样点应该具有的外观(例如,就其颜色等而言)以在所述采样点表示基元。这些处理通常分别被称作栅格化和渲染。栅格化处理确定应该用于基元的采样点(即,要用于在渲染输出(例如,要显示的帧)中表示基元的采样点的(x,y)位置)。这通常利用基元的顶点的位置来实现。渲染处理因此导出在所述采样点表示基元所需的数据,诸如红色、绿色和蓝色(RGB)颜色值和“Alpha”(透明度)值(即,为各个采样点“着色”)。如本领域中所知的,这个过程可涉及施加纹理、混合采样点数据值等。(在3D图形文献中,术语“栅格化”通常用 ...
【技术保护点】
1.一种操作图形处理流水线的方法,所述图形处理流水线包括多个处理阶段,该多个处理阶段包括:栅格化器,其将输入基元栅格化以生成要处理的图形片段,各个图形片段具有与该图形片段关联的一个或更多个采样点;以及渲染器,其对由所述栅格化器生成的片段进行处理以生成输出片段数据,所述方法包括以下步骤:在由所述栅格化器生成的片段被发送至所述渲染器以进行处理之前,针对与该片段关联的至少一个采样点执行早期剔除测试;如果至少一个采样点通过所述早期剔除测试,则向前发送所述片段以进行处理,并且,作为所述至少一个采样点通过所述早期剔除测试的结果,确定在所述图形处理流水线中的另一采样点的处理是否能够停止;如果与片段关联的至少一个采样点通过所述早期剔除测试,则将通过测试的采样点或片段的位置广播至所述图形处理流水线的至少一个处理阶段;以及所述图形处理流水线的所述至少一个处理阶段利用所广播的位置信息来估计对所述至少一个处理阶段当前处理的任何采样点或片段的处理是否能够停止。
【技术特征摘要】
2012.12.17 US 13/716,952;2013.06.04 US 13/909,5611.一种操作图形处理流水线的方法,所述图形处理流水线包括多个处理阶段,该多个处理阶段包括:栅格化器,其将输入基元栅格化以生成要处理的图形片段,各个图形片段具有与该图形片段关联的一个或更多个采样点;以及渲染器,其对由所述栅格化器生成的片段进行处理以生成输出片段数据,所述方法包括以下步骤:在由所述栅格化器生成的片段被发送至所述渲染器以进行处理之前,针对与该片段关联的至少一个采样点执行早期剔除测试;如果至少一个采样点通过所述早期剔除测试,则向前发送所述片段以进行处理,并且,作为所述至少一个采样点通过所述早期剔除测试的结果,确定在所述图形处理流水线中的另一采样点的处理是否能够停止;如果与片段关联的至少一个采样点通过所述早期剔除测试,则将通过测试的采样点或片段的位置广播至所述图形处理流水线的至少一个处理阶段;以及所述图形处理流水线的所述至少一个处理阶段利用所广播的位置信息来估计对所述至少一个处理阶段当前处理的任何采样点或片段的处理是否能够停止。2.根据权利要求1所述的方法,该方法包括以下步骤:执行针对单个采样点和多个片段的补片这二者的早期剔除测试。3.根据权利要求1或2所述的方法,该方法还包括以下步骤:在渲染一组基元之前,针对所述一组基元的多组采样位置存储期望的深度值的范围。4.根据权利要求1或2所述的方法,其中,作为所述至少一个采样点通过所述早期剔除测试的结果,确定在所述图形处理流水线中的另一采样点的处理是否能够停止的步骤包括以下步骤:将当前占据流水线阶段的采样点和/或片段的位置与通过所述早期剔除测试的所述至少一个采样点的位置进行比较。5.根据权利要求1或2所述的方法,其中,作为所述至少一个采样点通过所述早期剔除测试的结果,确定在所述图形处理流水线中的另一采样点的处理是否能够停止的步骤还包括以下步骤:在停止所述另一采样点的处理之前,检查所述另一采样点的其它属性,以确定所述另一采样点是否应该仍然进行处理。6.根据权利要求1或2所述的方法,其中,以下步骤:在由所述栅格化器生成的片段被发送至所述渲染器以进行处理之前,针对与该片段关联的至少一个采样点执行早期剔除测试;以及如果所述至少一个采样点通过所述早期剔除测试,则向前发送所述片段以进行处理,并且,作为所述至少一个采样点通过所述早期剔除测试的结果,确定在所述图形处理流水线中的另一采样点的处理是否能够停止包括以下步骤:在通过流水线向前发送由所述栅格化器生成的片段以进行处理之前,针对与所述片段关联的至少一个采样点执行早期深度测试,和/或在通过流水线向前发送由所述栅格化器生成的至少一个片段以进行处理之前,针对所述至少一个片段执行早期深度测试;如果所述至少一个采样点或所述至少一个片段通过所述早期深度测试,则向前发送所述片段或所述至少一个片段以进行处理,并将关于通过所述早期深度测试的所述至少一个采样点或所述至少一个片段的位置的信息广播至所述图形处理流水线的至少一个处理阶段;以及所述图形处理流水线的所述至少一个处理阶段利用与通过所述早期深度测试的所述至少一个采样点或所述至少一个片段关联的所广播的位置信息来确定当前在该阶段中是否存在与通过所述早期深度测试的所述至少一个采样点或所述至少一个片段占据相同位置的任何采样点或片段,并且如果存在任何这些采样点或片段,则选择性地停止对与通过所述早期深度测试的所述至少一个采样点或所述至少一个片段占据相同位置的这些采样点或片段的进一步处理。7.根据权利要求1所述的方法,其中,早期剔除测试通过事件信息被广播至所述图形处理流水线的所述早期剔除测试、所述栅格化器和所述渲染器的中一个或更多个。8.根据权利要求1或2所述的方法,该方法还包括以下步骤:如果所述至少一个采样点通过所述早期剔除测试,则利用与通过所述早期剔除测试的所述至少一个采样点关联的任何相关数据值来更新包含与所述早期剔除测试相关的数据的数据缓冲器。9.一种图形处理流水线,该图形处理流水线包括:多个处理阶段,该多个处理阶段包括:栅格化器,其将输入基元栅格化以生成要处理的图形片段,各个图形片段具有与该图形片段关联的一个或更多个采样点;渲染器,其对由所述栅格化器生成的片段进行处理...
【专利技术属性】
技术研发人员:J·尼斯塔德,E·索尔加德,F·赫格伦德,
申请(专利权)人:ARM有限公司,
类型:发明
国别省市:英国,GB
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。