基于低分辨率缓冲器的像素剔除的制作方法

xiaoxiao2020-7-22  9

【专利下载】Tel:18215660330

基于低分辨率缓冲器的像素剔除的制作方法
【专利摘要】本发明的方面是针对通过图形处理单元GPU在图像表面的分格遍次期间更新低分辨率缓冲器。举例来说,在所述图像表面的所述分格遍次期间,所述GPU可将所述图像表面划分为所述图像表面的多个表面像素块。所述GPU可随后将所述图像表面的表面识别符存储在所述低分辨率缓冲器的存储位置内以对应于所述图像表面的所述表面像素块中的每一者。
【专利说明】基于低分辨率缓冲器的像素剔除
【技术领域】
[0001 ] 本发明涉及在显示器上再现像素。
【背景技术】
[0002]提供用于视觉呈现的内容的装置通常包含图形处理单元(GPU)。GPU在显示器上再现表示所述内容的像素。GPU产生显示器上的每一像素的一个或一个以上像素值。GPU对显示器上的每一像素的像素值执行图形处理以再现用于呈现的每一像素。

【发明内容】

[0003]大体上,本发明描述用于在图形处理单元(GPU)的分格遍次期间更新低分辨率缓冲器(称为低分辨率z缓冲器或“LRZ”缓冲器)的技术。在分格遍次(也称为平铺遍次)期间,GPU可确定由处理器产生的哪些图像表面属于显示器上的哪些瓦片。在此分格遍次期间,GPU可用与图像表面中的每一者相关联的表面识别符更新低分辨率缓冲器。
[0004]低分辨率缓冲器可包含多个存储位置,其中每一存储位置与显示器上的多个像素相关联。在分格遍次期间,如果图像表面包含坐标与低分辨率存储器的存储位置相关联的像素,那么GPU可将图像表面的表面识别符存储在低分辨率缓冲器的存储位置内。
[0005]在一个实例中,本发明的方面是针对一种方法,其包括以图形处理单元(GPU)接收至少第一图像表面和第二图像表面,其中所述第二图像表面至少部分地重叠于所述第一图像表面。所述方法还包含以所述GPU对所述第一图像表面执行分格遍次。根据所述方法,在第一图像表面的分格遍次期间,以GPU将第一图像表面划分为第一图像表面的多个表面像素块。而且,在第一图像表面的分格遍次期间,以所述GPU将所述第一图像表面的表面识别符值存储在低分辨率缓冲器内的多个存储位置中的对应于所述第一图像表面的所述多个表面像素块中的块的存储位置内,其中所述低分辨率缓冲器内的所述多个存储位置中的每一者还对应于显示器上的像素块。
[0006]在另一实例中,本发明的方面是针对一种包括低分辨率缓冲器的设备,所述低分辨率缓冲器包含多个存储位置。所述设备还包含图形处理单元(GPU),其经配置以接收至少第一图像表面和第二图像表面,其中所述第二图像表面至少部分地重叠于所述第一图像表面,且对所述第一图像表面执行分格遍次。在所述设备中,在第一图像表面的分格遍次期间,GPU进一步经配置以将第一图像表面划分为第一图像表面的多个表面像素块。在第一图像表面的分格遍次期间,GPU还进一步经配置以将所述第一图像表面的表面识别符值存储在低分辨率缓冲器内的多个存储位置中的对应于所述第一图像表面的所述多个表面像素块中的块的存储位置内,其中所述低分辨率缓冲器内的所述多个存储位置中的每一者还对应于显示器上的像素块。
[0007]在另一实例中,本发明的方面是针对一种非暂时性计算机可读存储媒体,其包括致使图形处理单元(GPU)接收至少第一图像表面和第二图像表面的指令,其中所述第二图像表面至少部分地重叠于所述第一图像表面。所述指令还包含致使所述GPU对所述第一图像表面执行分格遍次的指令。在第一图像表面的分格遍次中,所述指令致使GPU将第一图像表面划分为第一图像表面的多个表面像素块。而且,在第一图像表面的分格遍次期间,所述指令致使GPU将所述第一图像表面的表面识别符值存储在低分辨率缓冲器内的多个存储位置中的对应于所述第一图像表面的所述多个表面像素块中的块的存储位置内,其中所述低分辨率缓冲器内的所述多个存储位置中的每一者还对应于显示器上的像素块。
[0008]在另一实例中,本发明的方面是针对一种包括低分辨率缓冲器的设备,所述低分辨率缓冲器包含多个存储位置。所述设备还包含图形处理单元(GPU),其中GPU包括用于接收至少第一图像表面和第二图像表面的装置,其中所述第二图像表面至少部分地重叠于所述第一图像表面。GPU还包括用于对所述第一图像表面执行分格遍次的装置。在所述设备中,在第一图像表面的分格遍次期间,GPU还包括用于将第一图像表面划分为第一图像表面的多个表面像素块的装置。在所述设备中,在第一图像表面的分格遍次期间,GPU还包含用于将所述第一图像表面的表面识别符值存储在低分辨率缓冲器内的多个存储位置中的对应于所述第一图像表面的所述多个表面像素块中的块的存储位置内,其中所述低分辨率缓冲器内的所述多个存储位置中的每一者还对应于显示器上的像素块。
[0009]在附图和以下描述中陈述一个或一个以上实例的细节。从描述和图式以及从权利要求书将明了其它特征、目的和优点。
【专利附图】

【附图说明】
[0010]图1是说明可经配置以实施本发明的方面的装置的框图。
[0011]图2A是说明第一图像表面的分格遍次的图形示图。
[0012]图2B是说明在图2A的第一图像表面的分格遍次期间的图1的经更新低分辨率缓冲器的图形示图。
[0013]图2C是说明第二图像表面的分格遍次的图形示图。
[0014]图2D是说明在图2C的第二图像表面的分格遍次期间的图1的经更新低分辨率缓冲器的图形示图。
[0015]图2E是说明图1的帧缓冲器中的图2A到2D的第一和第二图像表面的图形示图。
[0016]图3是说明图形处理单元(GPU)的实例性操作的流程图。
【具体实施方式】
[0017]装置上的显示器呈现由装置内的处理器执行的应用程序产生的可视对象。可视对象通常采取矩形的形式,但其它形式也是可能的。可视对象可视为含有表面像素的图像表面。当装置执行产生多个图像表面的一个或一个以上应用程序时,一个图像表面可部分地或完全地重叠于另一表面。
[0018]除了执行一个或一个以上应用程序以产生图像表面之外,处理器还可确定图像表面内的表面像素的像素值。举例来说,处理器可确定图像表面的顶点的坐标。作为另一实例,处理器可确定图像表面内的表面像素的色彩值,例如图像表面内的每一表面像素的红绿蓝(RGB)值或亮度和色度值,以及像素的不透明度值,例如阿尔法值。处理器可将每一图像表面的像素值传输到图形处理单元(GPU)供进一步处理。在一些实例中,处理器可从最后方图像表面开始且继续到最前方图像表面,将像素值传输到GPU。[0019]GPU可接收图像表面中的每一者的像素值,且在一些实例中,基于GPU接收到图像表面的次序而将表面识别符值指派于图像表面中的每一者。在替代实例中,处理器可将表面识别符值指派于表面中的每一者,且将表面识别符值连同所述图像表面的像素值一起传输到GPU。
[0020]GPU可对接收的像素执行处理以在显示器上再现图像。GPU执行的处理的一个实例称为分格(binning)遍次或平铺(tiling)遍次。对于分格,GPU将显示器上的像素划分为多个像素块,称为瓦片(tile)。对于每一图像表面,在分格遍次中,GPU可确定图像表面属于哪一瓦片。
[0021]如更详细描述,在用于图像表面的分格遍次期间,GPU可更新低分辨率缓冲器,称为低分辨率z缓冲器或“LRZ缓冲器”。低分辨率缓冲器可为具有多个存储位置的二维缓冲器。低分辨率缓冲器中的每一存储位置可对应于在显示器上表示的像素块。在一些实例中,低分辨率缓冲器内的存储位置的数目可少于将在显示器上表示的像素的数目。
[0022]在用于图像表面的分格遍次期间,GPU可确定所述图像表面是否包含对应于低分辨率缓冲器内的存储位置的表面像素。举例来说,GPU可将图像表面划分为多个表面像素块。表面像素块的大小可类似于显示器上对应于低分辨率缓冲器中的一个存储位置的像素块的大小。
[0023]对于图像表面内的每一表面像素块,GPU可将图像表面的表面识别符存储在低分辨率缓冲器的对应存储位置内。举例来说,在第一图像表面的分格遍次期间,GPU可将第一图像表面的表面识别符存储在低分辨率缓冲器的对应于第一图像表面内的每一表面像素块的存储位置内。GPU可在图像表面中的每一者的分格遍次期间执行类似功能。
[0024]在用表面识别符值更新低分辨率缓冲器之后,GPU可基于存储在低分辨率缓冲器中的表面识别符值来将图像再现到帧缓冲器。为了再现像素,对于显示器上的每一像素,GPU可基于存储在低分辨率缓冲器内的表面识别符来确定从哪一表面再现哪些像素。举例来说,低分辨率缓冲器内的第一存储位置可指示哪一表面将再现以用于显示器上的像素(0,0)到(3,3)。GPU可随后从通过存储在低分辨率缓冲器内的第一位置中的图像表面的表面识别符所识别的图像表面再现像素。
[0025]图1是说明可经配置以实施本发明的方面的装置2的框图。装置2的实例包含(但不限于)无线装置、移动电话、个人数字助理(PDA)、包含视频显示器的视频游戏控制台、移动视频会议单元、膝上型计算机、桌上型计算机、电视机机顶盒、平板计算装置、电子书阅读器和类似装置。装置2可包含处理器4、图形处理单元(GPU) 6、显示器8、帧缓冲器10、存储装置12、收发器模块14、用户接口 16、低分辨率缓冲器18 (可称为低分辨率z缓冲器或LRZ缓冲器),以及瓦片存储器20。装置2可包含为了清楚的目的而未在图1中展示的额外模块或单元。举例来说,装置2可包含图1中均未展示的扬声器和麦克风,以在装置2为移动无线电话的实例中实现电话通信。此外,装置2中所示的各种模块和单元可能不是在装置2的每个实例中都是必要的。举例来说,在装置2为桌上型计算机的实例中,用户接口 16和显示器8可在装置2的外部。
[0026]处理器4可执行一个或一个以上应用程序。应用程序的实例包含网络浏览器、电子邮件应用程序、电子数据表、视频游戏,或产生用于呈现的可视对象的其它应用程序。所述一个或一个以上应用程序可存储在存储装置12内。在一些实例中,处理器4可经由收发器模块14下载所述一个或一个以上应用程序。处理器4可基于用户经由用户接口 16的选择而执行所述一个或一个以上应用程序。在一些实例中,处理器4可在无用户交互的情况下执行所述一个或一个以上应用程序。
[0027]处理器4的实例包含(但不限于)数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路。存储装置12可包括一个或一个以上计算机可读存储媒体。存储装置12的实例包含(但不限于)随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可用来以指令或数据结构的形式载运或存储所要程序代码且可由计算机或处理器存取的任何其它媒体。在一些方面中,存储装置12可包含致使主机处理器4和/或GPU6执行在本发明中归属于主机处理器4和GPU6的功能的指令。
[0028]在一些实例中,存储装置12可视为非暂时性存储媒体。术语“非暂时性”可指示存储媒体不是以载波或传播信号来体现。然而,术语“非暂时性”不应解释为意味着存储装置12是不可移动的。作为一个实例,存储装置12可从装置2移除,且移动到另一装置。作为另一实例,大体上类似于存储装置12的存储装置可插入到装置2中。在某些实例中,非暂时性存储媒体可存储可随着时间改变的数据(例如,在RAM中)。
[0029]用户接口 16的实例包含(但不限于)跟踪球、鼠标、键盘和其它类型的输入装置。用户接口 16还可为触摸屏,且可并入作为显示器8的一部分。收发器模块14可包含用以允许装置2与另一装置或网络之间的无线或有线通信的电路。收发器模块14可包含调制器、解调器、放大器和用于有线或无线通信的其它此类电路。
[0030]在所述一个或一个以上应用程序的执行后,处理器4可以图像表面的形式产生可视对象。图像表面可作为图像在显示器8上再现以用于呈现。在一些实例中,图像表面的表面像素中的一些可能不被再现,因为这些表面像素可能被其它位于同一地点的表面像素遮蔽。图像表面可为圆形、线、矩形、三角形或其它类型的多边形。处理器4还可基于显示器8的像素坐标而识别图像表面位于显示器8上的位置。所述位置可识别显示器8上的图像表面的范围。
[0031]显示器8可包括液晶显示器(IXD)、阴极射线管(CRT)显示器、等离子显示器或另一类型的显示器装置。显示器8包含在2维(2 — D)像素阵列中水平和垂直布置的多个像素。显示器8的每一像素可通过其2-D坐标,例如笛卡尔坐标中的(X,y)来识别。举例来说,位于显示器8的左上角的像素可经识别为位于(0,0)处的像素。紧邻于位于(0,0)处的像素右边的像素可经识别为位于(1,0)处的像素。紧邻于位于(0,0)处的像素下方的像素可经识别为位于(0,1)处的像素。可类似地识别显示器8的所有像素。
[0032]上文描述的笛卡尔坐标是仅为了说明目的而描述。显示器8的像素可通过不同类型的坐标系来识别,例如极坐标、双极坐标、抛物线坐标和类似坐标。此外,像素的实例位置也是仅为了说明目的而描述。在一些实例中,位于(0,0)处的像素可位于显示器8的左下方、右上方、右下方或任何其它像素位置。
[0033]由处理器4产生的图像表面的位置可基于至少图像表面的坐标来界定。在图像表面为圆形的实例中,表面的位置可基于至少所述圆形的中心坐标和半径。图像表面的范围,例如图像表面的周长,则可基于所述圆形的中心坐标和半径来计算。[0034]通常,对于多边形,图像表面的位置可基于图像表面的顶点的顶点坐标中的至少一者或一者以上来界定。图像表面的顶点的顶点坐标可识别图像表面的范围。在图像表面为矩形的实例中,图像表面的位置可基于所述矩形的四个顶点的顶点坐标。在图像表面为矩形的一些实例中,至少两个顶点坐标可足以识别表面的位置和范围。其余顶点坐标可根据所述两个顶点坐标来计算。举例来说,顶点坐标可为识别矩形的左上顶点的(Xmin,Ymin)坐标以及识别矩形的右下顶点的(xmax,y_)坐标。矩形的坐下顶点则为(Xmin,ymax),且矩形的右上顶点则为(X.,ymin)。
[0035]为了说明的目的,在矩形表面的上下文中描述本发明的方面。然而,图像表面不应视为限于矩形表面,且可采取其它多边形、圆形或类似的形式。
[0036]通过执行所述一个或一个以上应用程序产生的每一图像表面包含一个或一个以上表面像素。处理器4可将例如色彩值等像素值,例如红绿蓝(RGB值)或亮度和色度值,包含强度值和不透明度值,例如阿尔法值,指派于图像表面中的每一者的表面像素中的每一者。每一表面像素的像素值可指示表面像素的色彩、亮度和不透明度。
[0037]表面像素表示显示器的像素且被视为与显示器8上的像素位于同一地点。举例来说,位于第一图像表面的(1,1)处的表面像素与位于显示器8的(1,1)处的像素位于同一地点且表示位于显示器8的(1,1)处的像素。位于第二图像表面的(1,1)处的表面像素与位于第一表面的(1,1)处的表面像素和位于显不器8的(1,1)处的像素位于同一地点,且也表示位于显示器8的(1,1)处的像素。
[0038]处理器4还可确定通过执行所述一个或一个以上应用程序产生的图像表面的次序。例如当图像表面的至少部分处于大体上类似位置时,图像表面可部分或完全地重叠于一个或一个以上其它图像表面。作为一个实例,第一图像表面的顶点坐标为(1,1)、(5,1)、(1,5)和(5,5),且第二图像表面的顶点坐标为(2,3)、(2,7)、(10,3)和(10,7)。在此实例中,第一图像表面部分地重叠于第二图像表面,或反之亦然。从用户的观点,重叠于另一图像表面的图像表面可看上去在另一表面的前方。从用户的观点,由另一图像表面重叠的图像表面可看上去在另一图像表面的后方。图像表面的次序可指示哪一表面在哪些其它图像表面的前方或后方。
[0039]在一些实例中,为了识别图像表面的次序,处理器4可将表面识别符指派于每一图像表面。举例来说,对于最后方图像表面,处理器4可为最后方图像表面指派表面识别符值O。紧邻于具有表面识别符O的图像表面前方的图像表面可被指派表面识别符1,以此类推。上文描述的表面识别符实例是对图像表面进行排序的一个实例,且本发明的方面不应视为限于上文描述的排序实例。在一些实例中,处理器4可不将表面识别符指派于每一图像表面,且GPU6可将表面识别符指派于每一图像表面,如下文描述。
[0040]图像表面的次序可由用户或由处理器4在无用户干预的情况下选择。举例来说,用户可能希望选定的图像表面比其它图像表面更显著地显示。用户可能希望没有其它图像表面重叠于选定的图像表面,但可允许其它图像表面将由选定的图像表面重叠。在此实例中,选定的图像表面可视为在所有其它图像表面前方,因为没有其它图像表面重叠于选定的图像表面。作为另一实例,处理器4可基于正在执行的应用程序的类型来选择哪一图像表面应比其它图像表面更显著地显示。在此实例中,由处理器4选择的图像表面可重叠于其它图像表面,但不可被任何其它图像表面重叠。由处理器4选择的图像表面可视为在所有其它图像表面前方。
[0041]在一些实例中,处理器4可将每一图像表面的次序、位置和表面像素值传输到存储装置12以用于存储。在一些实例中,处理器4可将每一图像表面的次序、位置和表面像素值传输到图形处理单元6以用于进一步处理。
[0042]如上所述,在一些实例中,处理器4可不将表面识别符指派于每一图像表面。在这些实例中的一些实例中,作为一个实例,GPU6可基于GPU6从处理器4接收到图像表面的次序,或基于GPU6从存储装置12接收到图像表面的次序,来确定表面的次序。在这些实例中,GPU6可将表面识别符指派于图像表面中的每一者。GPU6可从最后方图像表面开始直到最前方图像表面来指派表面识别符值。举例来说,GPU6可将表面识别符值O指派于最后方图像表面,将表面识别符值I指派于第二最后方图像表面,以此类推,直到最前方图像表面。在一些替代实例中,GPU6可从最前方图像表面开始且继续到最后方图像表面来指派表面识别符值,例如GPU6可将表面识别符值O指派于最前方图像表面,将表面识别符值I指派于第二最前方图像表面,以此类推,直到最后方图像表面。
[0043]提供从最后方图像表面开始且继续到最前方图像表面或反之亦然来指派表面识别符值的概念旨在易于理解且用于说明目的。通常,图像表面可为二维图像表面。表面识别符值可为用以在二维图像表面之间进行区分的值,且提供图像表面的排序,例如从后到前或从前到后。在一些实例中,可能两个或两个以上图像表面是并排的,使得这些并排图像表面均不彼此重叠。在这些实例中,这些并排图像表面中的每一者仍可被指派不同的表面识别符值。短语“并排”不应被解释为限于这些图像表面是毗邻的意义,而是这些图像表面不彼此重叠,但可重叠于某些其它图像表面或被某些其它图像表面重叠。
[0044]GPU6可处理表面像素以供在显示器8上呈现。GPU6的实例包含(但不限于)DSP、通用微处理器、ASIC、FPGA或其它等效集成或离散逻辑电路。虽然图1中展示为单独的,但在其它实例中,处理器4可包含GPU6。举例来说,处理器4和GPU6可形成于同一 DSP、通用微处理器、ASIC、FPGA或其它等效集成或离散逻辑电路内。
[0045]虽然图1中说明一个GPU6,但本发明的方面不限于此。在一些实例中,装置2可包含类似于GPU6的多个GPU或GPU核心。图形处理任务可在这些GPU或GPU核心之间分割。
[0046]GPU6可对像素执行各种功能以用于在显示器8上呈现。举例来说,GPU6可执行例如着色、掺合、照明和其它功能等功能来产生将在显示器8上显示的像素的像素值。在一些实例中,在执行例如着色、掺合和照明等功能之前,GPU6可执行分格功能,也称为平铺功能。
[0047]对于分格,GPU6可将显示器8上的像素划分为多个像素块,称为瓦片。举例来说,假定显示器8经配置以包含640x480个像素。作为一个实例,GPU6可将显示器划分为10x10个瓦片,其中每一瓦片包含64x48个像素。
[0048]对于每一图像表面,在分格遍次中,GPU6可确定图像表面属于哪一瓦片。举例来说,假定图像表面的顶点为:(0,0)、(127,0), (0,95)和(127,95)。在此实例中,GPU6可确定此图像表面属于10x10瓦片中的四个瓦片,例如,左上瓦片以及紧邻于左上瓦片的右边、下方和对角方向的瓦片。GPU6可针对每一图像表面执行类似功能。短语“分格遍次”指代针对图像表面中的一者执行的分格功能。
[0049]瓦片存储器20可在分格遍次期间指示图像表面属于的特定瓦片。在一些实例中,瓦片存储器20可形成为存储装置12的部分,但本发明的方面不限于此。GPU6可基于图像表面属于哪些瓦片而在所述图像表面的分格遍次期间将图像表面的表面识别符值存储在瓦片存储器20的适当存储位置内。瓦片存储器20可视为包含多个层。每一层可对应于图像表面中的一者。每一层可为包含多个存储位置的二维层。每一存储位置可对应于显示器8的瓦片中的一者。
[0050]举例来说,GPU6在针对具有表面识别符值I的图像表面执行分格遍次时可确定此图像表面属于左上瓦片以及紧邻于左上瓦片的右边的瓦片。在此实例中,GPU6可将表面识别符值I存储在瓦片存储器20的对应于具有表面识别符值I的图像表面的层的存储位置(0,0)和(1,0)内。随后,GPU6在针对具有表面识别符值2的图像表面执行分格遍次时可确定此图像表面属于紧邻于左上瓦片的右边的瓦片以及左上瓦片的对角方向的瓦片。在此实例中,GPU6可将表面识别符值2存储在瓦片存储器20的对应于具有表面识别符值2的图像表面的层的存储位置(1,0)和(1,1)内。
[0051]上文描述的存储关于图像表面属于哪些瓦片的信息的技术以及分格遍次的技术是为了说明目的而提供,且不应视为限制性的。可存在多种不同的当前或未来技术以执行分格遍次或存储关于图像表面属于哪些瓦片的信息,且本发明的方面应视为同样可扩展到此些技术。举例来说,并非包含多个层,瓦片存储器20可包含指示图像表面属于哪一瓦片的图像表面链接列表。本发明的方面可扩展到瓦片存储器20包含链接列表的实例。
[0052]在本发明中描述的实例中的一些实例中,在用于图像表面的分格遍次期间,除了将表面识别符值存储在瓦片存储器20中之外,GPU6还可更新低分辨率缓冲器18,其可为低分辨率z缓冲器(LRZ)缓冲器。短语“在用于图像表面的分格遍次期间”可指代在前一图像表面之后且在下一图像表面的分格遍次之前的分格遍次。在一些实例中,短语“在用于图像表面的分格遍次期间”可意味着与用于图像表面的分格遍次是并行的。
[0053]低分辨率缓冲器18可为具有多个存储位置的二维缓冲器。在一些实例中,低分辨率缓冲器18可形成为存储装置12的部分,但本发明的方面不限于此。如更详细描述,低分辨率缓冲器18可促进有效地指示应当再现哪些像素以避免不必要地再现随后经遮蔽的像素。低分辨率缓冲器18中的每一存储位置可对应于在显示器8上表示的像素块。举例来说,显示器8上表示的4x4像素块可对应于低分辨率缓冲器18中的一个存储位置。4x4像素块是仅为了说明目的而提供且不应视为限制性的。低分辨率缓冲器18可视为低分辨率缓冲器,因为低分辨率缓冲器18的每一存储位置对应于多个像素而不是单个像素。
[0054]在一些实例中,低分辨率缓冲器18内的存储位置的数目可少于将在显示器8上呈现的像素的数目。举例来说,如果显示器包含将显示的1000x1000个像素,那么低分辨率缓冲器可包含250x250个存储位置,使得每一存储位置对应于4x4像素块。作为一个实例,涵盖显示器上的(0,0)和(3,3)的像素块(例如,4x4像素块)可对应于低分辨率缓冲器内的第一存储位置。涵盖(4,O)到(7,3)的像素块可对应于低分辨率缓冲器内的第二存储位置,以此类推。
[0055]在用于图像表面的分格遍次期间,GPU6可确定所述图像表面是否包含对应于低分辨率缓冲器18内的存储位置的表面像素。举例来说,GPU6可将图像表面划分为多个表面像素块。表面像素块的大小可类似于显示器8上对应于低分辨率缓冲器18中的一个存储位置的像素块的大小。举例来说,如果显示器8上的4x4像素块对应于低分辨率缓冲器18内的一个存储位置,那么GPU6可将表面中的每一者划分为4x4表面像素块。作为另一实例,如果显示器8上的8x8像素块对应于低分辨率缓冲器18内的一个存储位置,那么GPU6可将图像表面中的每一者划分为8x8表面像素块。
[0056]应注意,虽然本发明中描述的非限制性实例描述了 GPU6在用于图像表面的分格遍次期间确定所述图像表面是否包含对应于低分辨率缓冲器18内的存储位置的表面像素,但本发明的方面不限于此。在一些替代实例中,GPU6可独立于分格遍次来确定图像表面是否包含对应于低分辨率缓冲器18内的存储位置的表面像素。举例来说,GPU6可在掺合、照明或着色像素值的同时做出此些确定。作为另一实例,GPU6可刚好在GPU6再现像素值以存储在帧缓冲器10中之前做出此确定,如下文描述。
[0057]所述多个表面像素块不应与上文描述的瓦片混淆。GPU6将显示器8上的像素划分为瓦片以确定图像表面的哪些表面像素属于哪些瓦片。此平铺可在GPU6将给定图像表面的表面像素划分为多个表面像素块之前发生。换句话说,每一瓦片涵盖显示器8上的一像素块。所述多个表面像素块中的每一者涵盖图像表面内的一表面像素块。举例来说,在上述实例中,瓦片包含显示器上的64x48像素,而GPU6可将图像表面划分为图像表面的多个4x4表面像素块。然而,在一些实例中,可能瓦片的大小大体上类似于图像表面的多个表面像素块的大小。举例来说,瓦片的大小可为显示器8上的8x8像素块,且图像表面的多个表面像素块的大小也可为8x8。
[0058]对于图像帧内的每一表面像素块,GPU6可将表面识别符存储在低分辨率缓冲器18的对应存储位置内。举例来说,每一表面像素块属于具有表面识别符的特定图像表面。GPU6可将表面识别符存储在低分辨率缓冲器18的对应存储位置内。GPU6在其内存储表面识别符的低分辨率缓冲器18的对应存储位置可基于显示器8上的对应像素块。举例来说,如上所述,每一表面像素块可对应于显示器8上的像素块,其又对应于低分辨率缓冲器18内的存储位置。
[0059]作为一个实例,为了说明目的,低分辨率缓冲器18内的第一存储位置可对应于显示器8上涵盖像素(0,3)到(3,3)的像素块。如果经识别为I的图像表面(例如,表面识别符值为I)包含显示器8上涵盖像素(0,3)到(3,3)的表面像素块,那么GPU6可将表面识别符值I存储在低分辨率缓冲器的第一存储位置内。在一些实例中,表面识别符值可表示为8位二进制值。在这些实例中,低分辨率缓冲器18的存储位置中的每一者可经配置以存储8位二进制值。
[0060]对于第一图像表面内的像素块中的每一者,在第一图像表面的分格遍次期间,GPU6可将第一图像表面的表面识别符存储在低分辨率缓冲器18的对应存储位置内。GPU6可随后继续到第二图像表面。在第二图像表面的分格遍次期间,对于第二图像表面内的块中的每一者,GPU6可将第二图像表面的表面识别符值存储在低分辨率缓冲器18的对应存储位置内,以此类推。
[0061]在一些实例中,可能第二图像表面部分地或完全地遮蔽第一图像表面。举例来说,第二图像表面可包含与第一图像表面位于同一地点的表面像素。位于同一地点的表面像素可为位于显示器8上的相同位置中的不同图像表面上的表面像素。在此实例中,第一图像表面的表面像素块可被第二图像表面的表面像素块完全遮蔽。在这些实例中,低分辨率缓冲器18中的用于第一图像表面的表面像素块的存储位置也可对应于用于第二图像表面的位于同一地点的表面像素块的存储位置。[0062]在此实例中,在执行用于第一图像表面的分格遍次时,GPU6可将用于第一图像表面的表面像素块的第一图像表面的表面识别符值存储在低分辨率缓冲器18的对应存储位置内。在执行用于第二图像表面的分格遍次时,GPU6可将用于与第一图像表面的表面像素块完全位于同一地点的表面像素块的第二图像表面的表面识别符值存储在低分辨率缓冲器18的对应存储位置内。换句话说,GPU6可用用于完全遮蔽第一图像表面的表面像素块的第二图像表面的所有表面像素块的第二图像表面的表面识别符来更新存储在低分辨率缓冲器18的对应存储位置中的表面识别符值。
[0063]在一些实例中,第二图像表面的表面像素块可不完全遮蔽第一图像表面的表面像素块。举例来说,假定第一图像表面的表面像素块包含涵盖显示器8上的(0,0)到(3,3)的像素。而且,假定第二图像表面的表面像素块包含涵盖显示器8上的(0,2)到(5,3)的像素。在此实例中,第二图像表面的表面像素块仅部分地遮蔽第一图像表面的表面像素块。举例来说,第二图像表面的表面像素块仅遮蔽涵盖第一图像表面上的(0,2)到(3,3)的表面像素,且不遮蔽其它像素中的任一者。在此实例中,因为第二图像表面的表面像素块不完全遮蔽第一图像表面的表面像素块,所以GPU6可不用第二图像表面的表面识别符来更新低分辨率缓冲器18内的对应存储位置。
[0064]在用表面识别符值更新低分辨率缓冲器18之后,GPU6可基于存储在低分辨率缓冲器18中的表面识别符值来将图像再现到帧缓冲器10。帧缓冲器10可为包含多个存储位置的二维缓冲器。帧缓冲器10内的存储位置的数目可大体上类似于将在显示器8上显示的像素的数目。举例来说,如果显示器8经配置以包含640x480个像素,那么帧缓冲器10可包含640x480个存储位置。帧缓冲器10可存储由GPU6处理的像素中的每一者的最终像素值。显示器8可从帧缓冲器10检索最终像素值,且基于存储在帧缓冲器10中的像素值来显示最终图像。
[0065]GPU6可基于存储在低分辨率缓冲器18中的表面识别符值来确定处理哪些像素,例如通过执行像素着色、掺合和照明进行处理。此像素着色、掺合和照明可在GPU6的片段着色器级中发生。以此方式,GPU6可经配置以剔除不有助于最终图像的像素,且不会在不有助于最终图像的像素上浪费计算资源。举例来说,GPU6可在像素进入片段着色器级之前基于存储在低分辨率缓冲器18中的值剔除不有助于最终图像的像素。
[0066]举例来说,在用于图像表面中的每一者的分格遍次的结束时,低分辨率缓冲器18可存储有助于最终图像的表面中的每一者的表面识别符值。而且,因为低分辨率缓冲器18的每一存储位置对应于显示器8上的多个像素块,所以存储在低分辨率缓冲器18的存储位置中的每一者中的表面识别符值可指示哪一图像表面有助于最终图像中在显示器8上的那些多个像素块。
[0067]举例来说,假定低分辨率缓冲器18中的第一存储位置存储表面识别符值3。而且,假定低分辨率缓冲器18中的第一存储位置对应于显示器8上的涵盖(0,0)到(3,3)坐标的像素。在此实例中,GPU6可再现涵盖具有表面识别符3的图像表面中的(0,0)到(3,3)坐标的像素,且将所得像素值存储在帧缓冲器10的对应位置中,例如帧缓冲器10中涵盖(0,
O)到(3,3)的存储位置。
[0068]在此实例中,因为低分辨率缓冲器18中的第一存储位置存储表面识别符值3,所以GPU6可认识到具有小于3的表面识别符的任一图像表面不会有助于最终图像(假定图像表面是从后往前排序)。而且,在此实例中,假定具有表面识别符值2的图像表面也包含涵盖显示器8上的(0,0)到(3,3)的像素。在此实例中,因为低分辨率缓冲器18中的第一存储位置存储表面识别符值3,所以GPU6可认识到具有表面识别符值2的图像表面中位于(0,0)与(3,3)之间的16个像素不会有助于最终图像。换句话说,具有表面识别符值2的图像表面的这些像素被具有表面识别符值3的图像表面的位于同一地点的像素完全遮蔽。在此实例中,GPU6可能够剔除(例如,从再现中消除)具有表面识别符值2的图像表面的16个像素,且不会浪费计算资源来处理具有表面识别符值2的图像表面的这些16个像素。
[0069]以此方式,本发明的方面可促进高效的GPU处理。举例来说,在本发明中描述的实例性实施方案中的一些中,GPU6可能够从进一步处理中剔除整个像素块,而不是以逐个像素为基础。此外,对于一些二维图形处理,常规GPU可不指派表面识别符,且可再现整个图像表面。此再现可能是低效的,因为常规GPU再现可能稍后被遮蔽的图像表面。本发明中描述的实例允许GPU6在再现之前确定哪些图像表面有助于最终图像,且允许GPU6仅处理这些像素。
[0070]而且,如上所述,GPU6可在用于图像表面的分格遍次期间存储所述图像表面的表面识别符值。因为GPU6可在分格遍次期间存储图像表面的表面识别符值,所以与存储表面识别符值相关联的等待时间可最小化。举例来说,GPU6可能已经配置以执行分格遍次作为其图形处理的部分。并非等待直到针对图像表面中的每一者完成了全部分格且随后将表面识别符存储在低分辨率缓冲器18中,本发明中描述的实例性实施方案允许GPU6在分格遍次期间存储表面识别符值,进而进一步促进高效的GPU6处理。
[0071]在一些实例中,GPU6可以逐个瓦片为基础来再现图像。举例来说,如上所述,GPU6可将显示器8划分为10x10个瓦片,其中每一瓦片包含64x48个像素。在这些实例中的一些实例中,GPU6可从10x10瓦片中的第一瓦片开始来再现图像,随后继续到10x10瓦片中的下一瓦片,以此类推。
[0072]为了再现用于某一瓦片的图像,GPU6可检索存储在低分辨率缓冲器18中的对应于所述瓦片内的像素的值。举例来说,在以上实例中,低分辨率缓冲器18内的每一存储位置对应于4x4像素块,且每一瓦片包含64x48像素。因此,在此实例中,每一瓦片对应于低分辨率缓冲器18内的192个存储位置,例如64x48除以4x4等于192。
[0073]GPU6可针对将再现的瓦片检索存储在低分辨率缓冲器18内的192个存储位置中的值。在一个实例中,GPU6可将检索到的值存储在GPU6的快速专用存储器内,例如高速缓冲存储器(例如,L2高速缓冲存储器)。在替代实例中,GPU6可将检索到的值存储在GPU6的局部存储器内。在一些实例中,当GPU6将检索到的值存储在GPU6的局部存储器内时,GPU6可扩展低分辨率缓冲器18内的值。
[0074]举例来说,GPU6内的局部存储器可针对单个瓦片包含64x48个存储位置,因为在此实例中每一瓦片包含64x48个像素。在此实例中,假定低分辨率缓冲器18内的存储位置15对应于64x48像素内的第一 4x4像素块。64x48像素内的第一 4x4像素块可对应于GPU6的局部存储器内的64x48个存储位置中的第一 4x4个存储位置。在此实例中,GPU6可将低分辨率缓冲器18内的存储位置15的表面识别符值存储到GPU6的局部存储器内的64x48个存储位置中的第一 4x4存储位置中的每一者中。
[0075]在上述实例中,GPU6可在用于图像表面的分格遍次期间用所述图像表面的表面识别符值更新低分辨率缓冲器18。在一些实例中,图像表面可为透明图像表面,或具有条件删除操作的图像表面。透明图像表面由于其透明性而不会遮蔽任何其它图像表面。因为透明图像表面不遮蔽任何其它图像表面,所以GPU6在用于透明图像的分格遍次期间可不用透明图像表面的表面识别符值更新低分辨率缓冲器18,但本发明的方面不应视为受此限制。
[0076]条件删除操作可为透明图像表面的特殊情况。在条件删除操作中,图像表面的一些表面像素由于某种条件逻辑、算法或纹理表面而可被丢弃(例如,不再现)。条件删除操作可在图像表面内产生“空穴”,进而将图像表面再现为实际上透明的。由于具有条件删除的图像表面内的“空穴”,因此GPU6在具有条件删除的图像表面的分格遍次期间可不用此图像表面的表面识别符值更新低分辨率缓冲器18,但本发明的方面不应视为受此限制。
[0077]透明图像表面和具有条件删除的图像表面仍可由GPU6再现。在透明图像表面或具有条件删除的图像表面的再现期间,GPU6可确定这些类型的图像的哪一部分有助于最终图像。举例来说,虽然透明图像表面不会遮蔽任何其它表面,但透明图像的部分或透明图像的整体可能被另一图像表面遮蔽。通过将透明图像表面或具有条件删除的图像表面的表面识别符值与对应于透明图像表面或具有条件删除的图像表面的表面像素块的像素块的存储的表面识别符值进行比较,GPU6可能够确定应当再现透明图像表面或具有条件删除的图像表面的哪些部分,以及应当从再现中剔除哪些部分。
[0078]图2A是说明第一图像表面的分格遍次的图形示图。图2B是说明在图2A的第一图像表面的分格遍次期间的经更新低分辨率缓冲器18的图形示图。图2C是说明第二图像表面的分格遍次的图形示图。图2D是说明在图2C的第二图像表面的分格遍次期间的经更新低分辨率缓冲器18的图形示图。图2E是说明帧缓冲器10中的图2A到2D的第一和第二图像表面的图形示图。
[0079]在图2A到2E的实例中,显示器8可包含64x64个像素。而且,图2A到2E的实例为了说明目的和便于理解而说明两个图像表面。在其它实例中,可存在由处理器4产生且由GPU6处理的两个以上图像表面。
[0080]图2A说明图像表面22,其可能已由处理器4产生。图像表面22可包含16x16表面像素,具有(0,0)、(0,15)、(15,0)和(15,15)的顶点坐标。图像表面22可为最后方图像表面,且处理器4或GPU6可为图像表面22指派表面识别符值O。在一些实例中,GPU6可从最后方图像表面开始且继续到最前方图像表面,来执行分格遍次。因此,在此实例中,GPU6可以图像表面22开始来执行分格遍次。
[0081]为便于理解,此实例假定图像表面22是最后方图像表面。在许多实例中,显示器8的背景可视为最后方图像表面,且将被指派表面识别符值O。在这些实例中,图像表面22将被指派表面识别符值I。而且,在这些实例中,相对于图2C和2D描述的图像表面26将被指派表面识别符值2。在这些实例中,在下文描述的实例中,图像表面22的表面识别符值可为1,且图像表面26的表面识别符值可为2,其中显示器8的背景被指派表面识别符值O。
[0082]图2A中说明的层24可为瓦片存储器20的层中对应于具有表面识别符值O的图像表面(例如,在此实例中的图像表面22)的一个层。如所说明,层24可包含8x8个存储位置,其中每一存储位置对应于显示器8的一个瓦片。如上所述,在图2A的实例中,显示器8可包含64x64个像素。因此,在此实例中,一个瓦片可包含8x8个像素。在图2A的实例中,层24的第一存储位置的坐标可为(0,0)。紧邻于层24的第一存储位置右边的存储位置的坐标可为(1,0),以此类推,继续到位于(7,7)处的层24的存储位置。
[0083]GPU6可确定图像表面22属于的瓦片。如所描述,在图2A的实例中,每一瓦片包含8x8个像素。而且,在图2A的实例中,图像表面22包含四个8x8像素块,例如从(0,0)到
(7,7)的块、从(0,7)到(7,15)的块、从(7,0)到(15,7)的块,以及从(7,7)到(15,15)的块。因此,在此实例中,图像表面22属于四个瓦片,即,因为在图像表面22中存在四个8x8像素块且每一瓦片包含8x8个像素。
[0084]如图2A中说明,层24可将图像表面22的表面值识别符存储在对应于图像表面22属于的瓦片的位置中。举例来说,层24的存储位置(0,0)、(0,1)、(1,0)和(1,1)各自存储用于图像表面22的表面值识别符,例如值O。在此实例中,层24的存储位置(0,0)、(O,
I)、(1,0)和(1,1)对应于图像表面22属于的瓦片。
[0085]图2B说明对低分辨率缓冲器18的更新,GPU6可在图2A中说明的图像表面22的分格遍次期间更新低分辨率缓冲器18。在图2B的实例中,低分辨率缓冲器18包含16x16存储位置。如上所述,在图2B的实例中,显示器8可包含64x64个像素。因此,在图2B的实例中,低分辨率缓冲器18中的每一存储位置可对应于4x4像素块。举例来说,低分辨率缓冲器18的位于(0,0)的存储位置可对应于显示器8上的位于(0,0)到(3,3)的像素。低分辨率缓冲器18的位于(1,0)的存储位置可对应于显示器8上的位于(3,0)到(7,3)的像素,以此类推。举例来说,低分辨率缓冲器18的位于(15,15)的存储位置可对应于显示器8上的位于(59,59)到(63,63)的像素。
[0086]在图2B的实例中,在图像表面22的分格遍次期间,GPU6可将图像表面22划分为图像表面22的多个表面像素块。举例来说,GPU6可将图像表面22划分为16个4x4表面像素块,例如16x16除以16等于4x4。将图像表面22的这16个块说明为块23A到23P(统称为“块23”)。
[0087]块23中的每一者,例如图像表面22的这16个4x4表面像素块中的每一者,可对应于低分辨率缓冲器18的一个存储位置。举例来说,低分辨率缓冲器18的位于(0,0)的存储位置可对应于16个4x4表面像素块中的块23A,例如图像表面22的涵盖(0,0)到(3,3)的表面像素。低分辨率缓冲器18的位于(1,0)的存储位置可对应于16个4x4表面像素块中的块23B,例如图像表面22的涵盖(3,0)到(7,3)的表面像素,以此类推。
[0088]在图像表面22的分格遍次期间,GPU6可将图像表面22的表面识别符值存储在低分辨率缓冲器18的对应于图像表面22的表面像素块的存储位置内。举例来说,如图2B中说明,低分辨率缓冲器18中位于(0,0)的存储位置存储表面识别符值0,因为低分辨率缓冲器18中位于(0,0)的存储位置对应于显示器8上位于(0,0)到(3,3)的像素,且图像表面22包含显示器8上涵盖(0,0)到(3,3)的表面像素,例如块23A。类似地,低分辨率缓冲器18中位于(0,0)到(3,3)的存储位置存储表面识别符值0,因为图像表面22包含各自对应于低分辨率缓冲器18的这些存储位置的表面像素块(例如,23A到23P)。
[0089]在完成用于图像表面22的分格遍次且更新低分辨率缓冲器18之后,GPU6可继续用于第二最后方图像表面的分格遍次。图2C说明图像表面26,其可能已由处理器4产生。类似于图2A和2B的图像表面22,图像表面26可包含16x16表面像素。图像表面26的顶点坐标为:(7,7)、(7,23)、(23,7)和(23,23)。基于图像表面22和26的顶点坐标,图像表面26部分地重叠于图像表面22。[0090]在图2C的实例中,图像表面26可为第二最后方图像表面。在此实例中,处理器4或GPU6可为图像表面26指派表面识别符值I。在图2C的实例中,GPU6可能已完成图像表面22的分格遍次,且现在可执行图像表面26的分格遍次,因为图像表面26是第二最后方图像表面。
[0091]图2C中说明的层28可为瓦片存储器20的层中对应于具有表面识别符值I的图像表面(例如,在此实例中的图像表面26)的一个层。类似于图2A的层24,层28可包含8x8存储位置,其中每一存储位置对应于显示器8的一个瓦片,其可包含显示器8上的8x8像素。
[0092]GPU6可确定图像表面26属于哪些瓦片。类似于图像表面22,图像表面26包含四个8x8像素块,例如,从(7,7)到(15,15)的块、从(7,15)到(15,23)的块、从(15,7)至Ij(23,15)的块,以及从(15,15)到(23,23)的块。因此,在此实例中,图像表面26属于四个瓦片。
[0093]如图2C中说明,层28可将图像表面26的表面值识别符存储在对应于图像表面26属于的瓦片的位置中。举例来说,层28的存储位置(1,1)、(2,1)、(1,2)和(2,2)各自存储用于图像表面26的表面值识别符,例如值I。在此实例中,层28的存储位置(1,I)、(2,
I)、(1,2)和(2,2)对应于图像表面26属于的瓦片。
[0094]图2D说明对低分辨率缓冲器18的更新,GPU6可在图2C中说明的图像表面26的分格遍次期间更新所述低分辨率缓冲器18。如上所述,在此实例中,低分辨率缓冲器18包含各自对应于4x4像素块的16x16个存储位置。
[0095]在图2D的实例中,在图像表面26的分格遍次期间,GPU6可将图像表面26划分为图像表面26的多个表面像素块。举例来说,GPU6可将图像表面26划分为16个4x4表面像素块,例如16x16除以16等于4x4。将图像表面26的这16个块说明为块27A到27P(统称为“块27”)。
[0096]块27中的每一者,例如图像表面26的这16个4x4表面像素块中的每一者,可对应于低分辨率缓冲器18的一个存储位置。举例来说,低分辨率缓冲器18的位于(2,2)的存储位置可对应于16个4x4表面像素块中的块27A,例如图像表面26的涵盖(7,7)到(11,
II)的表面像素。低分辨率缓冲器18的位于(3,2)的存储位置可对应于16个4x4表面像素块中的块27B,例如图像表面26的涵盖(11,7)到(15,11)的表面像素,以此类推。
[0097]在图像表面26的分格遍次期间,GPU6可将图像表面26的表面识别符值存储在低分辨率缓冲器18的对应于图像表面26的表面像素块的存储位置内。举例来说,GPU6可用对应于图像表面26的4x4表面像素块的图像表面26的表面值识别符更新低分辨率缓冲器18的存储位置。举例来说,如图2D中说明,低分辨率缓冲器18中位于(2,2)的存储位置存储表面识别符值1,因为低分辨率缓冲器18中位于(2,2)的存储位置对应于显示器8上位于(7,7)到(11,11)的像素,且图像表面26包含显示器8上涵盖(7,7)到(11,11)的表面像素,例如块27A。类似地,低分辨率缓冲器18中位于(2,2)到(5,5)的存储位置存储表面识别符值1,因为图像表面26包含各自对应于低分辨率缓冲器18的这些存储位置的表面像素块(例如,27A到27P)。
[0098]在图2D的实例中,GPU6可在重叠的图像表面完全重叠于与低分辨率缓冲器18的存储位置相关联的像素块的情况下更新存储在低分辨率缓冲器18中的表面识别符值。举例来说,在图2B中,GPU6将图像表面22的表面识别符值O存储在低分辨率缓冲器18的存储器位置(2,2)中。低分辨率缓冲器18的存储位置(2,2)可对应于显示器8上的位于(7,7)与(11,11)之间的像素。随后,在图像表面26的分格遍次期间,GPU6将图像表面26的表面识别符值I存储在低分辨率缓冲器18的存储位置(2,2)内,因为图像表面26重叠于图像表面22。
[0099]在图像表面26的分格遍次期间更新低分辨率缓冲器18的同时,至少三种情形可能出现。在第一情形中,图像表面26中的像素块与图像表面22中的像素块完全位于同一地点。在第二情形中,图像表面26中的像素块与图像表面22中的像素块中的任一者均不位于同一地点。在第三情形中,图像表面26中的像素块与图像表面22中的像素块部分地位于同一地点。
[0100]作为第一情形的一个实例,图像表面26的块27A与图像表面22的块23K完全位于同一地点。术语“完全位于同一地点”意味着图像表面26中的块的末端与图像表面22中的块的末端相同。举例来说,图像表面22的块23K的坐标是(7,7)到(11,11),且图像表面26的块27A的坐标也是(7,7)到(11,11)。
[0101]当图像表面26的像素块(例如,块27A)与图像表面22的像素块(例如,块23K)完全位于同一地点时,GPU6可用低分辨率缓冲器18的对应于块23K和27A的存储位置中的图像表面26的表面识别符值更新表面识别符值。举例来说,低分辨率缓冲器18的位于
(2.2)的存储位置对应于块23K和27A两者。在此实例中,在图像表面26的分格遍次期间,GPU6可用值I (例如,图像表面26的表面识别符值)更新存储在低分辨率缓冲器18的位置
(2.2)中的表面识别符值,如图2D中所示。
[0102]作为第二情形的一个实例,图像表面26的块27P与图像表面22的块23中的任一者均不位于同一地点。举例来说,图像表面26的块27P的坐标为(19,19)到(23,23)。图像表面22不包含涵盖坐标(19,19)到(23,23)的块。举例来说,图像表面22的最后表面像素块(例如,块23P)的坐标是(11,11)到(15,15)。
[0103]当图像表面26的像素块(例如,块27P)与图像表面22的任一像素块(例如,块23)均不位于同一地点时,GPU6可用低分辨率缓冲器18的对应于块27P的存储位置中的图像表面26的表面识别符值更新表面识别符值。举例来说,低分辨率缓冲器18的位于(5,5)的存储位置对应于块27P。在此实例中,在图像表面26的分格遍次期间,GPU6可用值I (例如,图像表面26的表面值)更新存储在低分辨率缓冲器18的(5,5)中的表面识别符值,如图2D中所示。
[0104]在第一情形的实例中,低分辨率缓冲器18的位于低分辨率缓冲器18中的(2,2)的存储位置对应于显示器8上的位于(7,7)与(11,11)之间的像素。而且,在图2A到2D的实例中,图像表面22和图像表面26均包含位于(7,7)与(11,11)之间的像素,例如图像表面22的块23K和图像表面26的块27A。然而,作为第三情形的一个实例,可能重叠的图像表面不涵盖显示器8上对应于低分辨率缓冲器18中位于(2,2)的存储位置的像素块的整体。举例来说,图像表面26中的像素块与图像表面22中的像素块部分地位于同一地点。术语“部分地位于同一地点”意味着图像表面26的像素块的仅一部分重叠于图像表面22的像素块的一部分。
[0105]举例来说,假定图像表面26的坐标为:(8,8), (8,23)、(23,8)和(23,23)。换句话说,在此实例中,图像表面26的左上顶点是(8,8)而非如图2C和2D的实例中的(7,7)。在此实例中,在图像表面26的分格遍次期间,GPU6可不更新低分辨率缓冲器18中存储在
(2,2)处的表面识别符值,因为图像表面26不涵盖显示器8上对应于显示器8的像素块的整体,例如低分辨率缓冲器18中的位置(2,2)对应于显示器8上的(7,7)到(11,11),而图像表面26在(8,8)处开始。在这些实例中,存储在(2,2)处的表面识别符值可保持图像表面22的表面识别符值,例如表面识别符值O。在此实例中,GPU6可不将图像表面26的表面识别符值存储在低分辨率缓冲器18的位置(2,2)中,因为图像表面26的像素块与图像表面22中的像素块仅部分地位于同一地点。
[0106]在此实例中,例如在图像表面26的顶点在(8,8)处开始的情况下,在再现遍次期间,GPU6在解析显示器8上的哪些显示像素对应于哪一图像表面时可经历一些较小的低效。然而,从在图形再现期间剔除整个像素块得到的图形处理高效可超过这些较小的图形处理低效中的任一者。
[0107]图2E是说明帧缓冲器10中的图2A到2D的图像表面22和图像表面26的图形示图。如上所述,帧缓冲器10可包含多个存储位置,且帧缓冲器10中的存储位置的数目可大体上类似于显示器8上的像素的数目。举例来说,在图2E的实例中,帧缓冲器10包含64x64个存储位置,且显示器8包含64x64个像素。
[0108]帧缓冲器10的存储位置中的每一者可存储例如色彩值(例如,RGB或亮度和色度值)等像素值以及不透明度值(例如,阿尔法值)。GPU6可在每一像素的再现遍次期间产生每一像素的像素值以用于存储在帧缓冲器10中。
[0109]对于再现遍次,GPU6可实施其片段着色器以用于着色、掺合和照明(作为几个实例)像素。在本发明的一些实例性实施方案中,GPU6可基于存储在低分辨率缓冲器18中的表面识别符值来确定应将来自哪些图像表面的哪些表面像素提供到片段着色器。
[0110]举例来说,在再现遍次中,GPU6可基于存储在低分辨率缓冲器18中的表面值来确定图像表面22和图像表面26的哪些部分有助于图2E中说明的最终图像。举例来说,基于存储在低分辨率缓冲器18中的表面识别符值,GPU6可基于存储在低分辨率缓冲器18中的表面识别符值确定图像表面22的哪些部分被图像表面26的哪些部分重叠。基于所述确定,GPU6可再现图像表面22的未被图像表面26重叠的部分。而且,基于所述确定,GPU6可从再现中消除(例如,剔除)图像22的被图像表面26重叠的部分。
[0111]作为一个实例,在再现遍次中,GPU6可确定图像表面22有助于显示器8上的像素(0,0)到(3,3),因为如图2D中说明的低分辨率缓冲器18将图像表面22的表面识别符值(例如,值O)存储在低分辨率缓冲器18中位于(0,0)的存储位置中。而且,低分辨率缓冲器18中位于(0,0)的存储位置对应于显示器8中的像素(0,0)到(3,3)。因此,在图2E中说明的实例中,在帧缓冲器10中位于(0,0)与(3,3)之间的存储位置中,帧缓冲器10存储图像表面22的从GPU6的片段着色器产生的像素值。
[0112]作为另一实例,在再现遍次中,GPU6可确定图像表面26有助于显示器8上的像素
(7,7)到(11,11),因为如图2D中说明的低分辨率缓冲器18将图像表面26的表面识别符值(例如,值I)存储在低分辨率缓冲器18中位于(2,2)的存储位置中。而且,低分辨率缓冲器18中位于(2,2)的存储位置对应于显示器8中的像素(7,7)到(11,11)。因此,在图2E中说明的实例中,在帧缓冲器10中位于(7,7)与(11,11)之间的存储位置中,帧缓冲器10存储图像表面26的从GPU6的片段着色器产生的像素值。
[0113]如上所述,在图2A到2E的实例中,图像表面22也可包含显示器8上位于(7,7)与(11,11)之间的表面像素。然而,图像表面22的此表面像素块被图像表面26的位于同一地点的表面像素块完全遮蔽。在此实例中,由于遮蔽,GPU6可不需要处理图像表面22的位于(7,7)与(11,11)之间的表面像素。在一些实例中,因为低分辨率缓冲器18指示仅图像表面26有助于显示器8上位于(7,7)与(11,11)之间的像素,所以GPU6可剔除(例如,从再现中消除)图像表面22的位于(7,7)与(11,11)之间的表面像素,且不浪费图形计算资源对这些像素进行图形处理。以此方式,本发明中描述的实例性实施方案中的一些可增加再现遍次的速度,因为GPU6可不需要对不有助于最终图像的像素块进行图形处理。
[0114]在再现遍次之后,显示器8可检索存储在帧缓冲器10中的像素值且在显示器8上呈现最终图像。在一些替代实例中,帧缓冲器10可为不必要的。在这些替代实例中,GPU6可从再现遍次将像素值直接输出到显示器8用于呈现。举例来说,GPU6可执行与上文相对于图2D描述的功能类似的功能。然而在此实例中,并非将像素值输出到帧缓冲器10,GPU6可将像素值直接输出到显示器8用于呈现。
[0115]图3是说明GPU6的实例性操作的流程图。仅为了说明目的,参考图1和2A到2E。GPU6可接收至少第一图像表面和第二图像表面(28)。在一些实例中,第二图像表面可至少部分地重叠于第一图像表面。举例来说,第一图像表面可为图像表面22,且第二图像表面可为图像表面26。如上所述,图像表面22可为最后方图像表面,且图像表面26可至少部分地重叠于图像表面22,如图2E中说明。
[0116]GPU6可随后对第一图像表面执行分格遍次(30)。在分格遍次中,GPU6可确定第一图像表面属于哪些瓦片。基于所述确定,GPU6可在瓦片存储器20的层的对应于第一图像表面的存储位置中存储第一图像表面的表面识别符值。举例来说,如上文相对于图2A所描述,瓦片存储器20的层24对应于图像表面22。而且,如上文相对于图2A所描述,层24的存储位置(0,0)、(0,1)、(1,0)和(1,1)各自存储用于图像表面22的表面值识别符,例如值O。在此实例中,层24的存储位置(0,0)、(0,1)、(1,0)和(1,1)对应于图像表面22属于的瓦片。
[0117]在第一图像表面的分格遍次中,GPU6可将第一图像表面划分为第一图像表面的多个表面像素块(32)。举例来说,如上文相对于图2B描述,GPU6可将图像表面22划分为块23A到23P。在此实例中,块23A到23P可包含图像表面22的4x4像素。
[0118]而且,在第一图像表面的分格遍次期间,GPU6可将第一图像表面的表面识别符值存储在低分辨率缓冲器18的对应于第一图像表面的多个表面像素块中的块的存储位置内
(34)。举例来说,如上文相对于图2B描述,图像表面22的块23中的每一者可对应于低分辨率缓冲器18的一个存储位置。作为一个实例,低分辨率缓冲器18的位置(0,0)可对应于图像表面22的块23A,低分辨率缓冲器18的位置(1,0)可对应于图像表面22的块23B,以此类推。而且,块23A可包含图像表面22的涵盖显示器8上的(0,0)到(3,3)的表面像素,且块23B可包含图像表面22的涵盖显示器8上的(3,0)到(7,3)的表面像素,以此类推。
[0119]在一个或一个以上实例中,所描述的功能可以硬件、软件、固件或其任一组合来实施。如果以软件实施,那么功能可作为一个或一个以上指令或代码存储在包括非暂时性计算机可读媒体的制品上。计算机可读媒体可包含计算机数据存储媒体。数据存储媒体可为可由一个或一个以上计算机或者一个或一个以上处理器存取以检索用于实施本发明中描述的技术的指令、代码和/或数据结构的任何可用媒体。举例来说且并非限制,此类计算机可读媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可用来以指令或数据结构的形式载运或存储所要程序代码且可由计算机存取的任何其它媒体。如本文中所使用,磁盘及光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软磁盘及蓝光光盘,其中磁盘通常以磁性方式再生数据,而光盘使用激光以光学方式再生数据。上文的组合也应包含在计算机可读媒体的范围内。
[0120]可由例如一个或一个以上DSP、通用微处理器、ASIC、FPGA或其它等效集成或离散逻辑电路等一个或一个以上处理器来执行代码。另外,在一些方面中,本文描述的功能性可提供于专用硬件和/或软件模块内。并且,可将所述技术完全实施于一个或一个以上电路或逻辑元件中。
[0121]本发明的技术可在广泛多种装置或设备中实施,包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本发明中描述各种组件、模块或单元以强调经配置以执行所揭示技术的装置的功能方面,但不一定需要通过不同硬件单元来实现。而是,如上所述,各种单元可在编解码器硬件单元中组合或由互操作硬件单元(包含如上所述的一个或一个以上处理器)的集合结合合适软件和/或固件来提供。
[0122]已描述了各种实例。这些和其它实例属于所附权利要求书的范围内。
【权利要求】
1.一种方法,其包括: 以图形处理单元GPU接收至少第一图像表面和第二图像表面,其中所述第二图像表面至少部分地重叠于所述第一图像表面; 以所述GPU对所述第一图像表面执行分格遍次;以及 在所述第一图像表面的所述分格遍次期间: 以所述GPU将所述第一图像表面划分为所述第一图像表面的多个表面像素块;以及以所述GPU将所述第一图像表面的表面识别符值存储在低分辨率缓冲器内的多个存储位置中的对应于所述第一图像表面的所述多个表面像素块中的块的存储位置内,其中所述低分辨率缓冲器内的所述多个存储位置中的每一者还对应于显示器上的一像素块。
2.根据权利要求1所述的方法,其进一步包括: 将所述第一图像表面的所述表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的每一者内,所述每一者各自对应于所述第一图像表面的所述多个表面像素块中的每一者。
3.根据权利要求1所述的方法,其进一步包括: 将所述显示器划分为多个瓦片, 其中执行所述分格遍次包括: 确定所述第一图像表面属于哪些瓦片;以及 在瓦片存储器的层的对应于所述第一图像表面的存储位置中存储所述第一图像表面的所述表面识别符值。
4.根据权利要求1所述的方法,其进一步包括: 对所述第二图像表面执行分格遍次;以及 在所述第二图像表面的所述分格遍次期间: 将所述第二图像表面划分为所述第二图像表面的多个表面像素块;以及当所述第二图像表面的所述多个表面像素块中的一块与所述第一图像表面的所述像素块完全位于同一地点时,将所述第二图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第二图像表面的所述多个表面像素块中的所述块的存储位置内。
5.根据权利要求1所述的方法,其进一步包括: 对所述第二图像表面执行分格遍次;以及 在所述第二图像表面的所述分格遍次期间: 将所述第二图像表面划分为所述第二图像表面的多个表面像素块;以及当所述第二图像表面的所述多个表面像素块中的一块与所述第一图像表面的所述多个像素块中的任一者均不位于同一地点时,将所述第二图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第二图像表面的所述多个表面像素块中的所述块的存储位置内。
6.根据权利要求1所述的方法,其进一步包括: 对所述第二图像表面执行分格遍次;以及 在所述第二图像表面的所述分格遍次期间: 将所述第二图像表面划分为所述第二图像表面的多个表面像素块;以及当所述第二图像表面的所述多个表面像素块中的一块与所述第一图像表面的所述像素块部分地位于同一地点时,不将所述第二图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第二图像表面的所述多个表面像素块中的所述块的存储位置内。
7.根据权利要求1所述的方法,其中所述第一图像表面的所述多个表面像素块中的每一者包含所述第一图像表面的两个或两个以上表面像素,且其中所述显示器上的所述像素块包含所述显示器上的两个或两个以上像素。
8.根据权利要求1所述的方法,其中接收至少所述第一图像表面和所述第二图像表面包括从处理器接收至少所述第一图像表面和所述第二图像表面。
9.根据权利要求1所述的方法,其进一步包括: 以处理器和所述GPU中的至少一者来指派所述第一图像表面的所述表面识别符值和所述第二图像表面的表面识别符值,且其中存储所述第一图像表面的表面识别符值包括存储所述第一图像表面的所述经指派表面识别符值。
10.根据权利要求1所述的方法,其进一步包括: 接收多个图像表面,其中所述多个图像表面包含所述第一图像表面和所述第二图像表面;以及 以处理器和所述GPU中的至少一者以所述多个图像表面中的最后方图像表面开始且继续到所述多个图像表面中的最前方图像表面来将表面识别符值指派于所述多个图像表面中的每一者。
11.根据权利要求1所述的方法,其进一步包括: 基于存储在所述低分辨率缓冲器中的所述表面识别符值来确定所述第一图像表面的哪些部分被所述第二图像表面重叠; 基于所述确定来再现所述第一图像表面的未被所述第二图像表面重叠的部分;以及 基于所述确定从再现中消除所述第一图像表面的被所述第二图像表面重叠的所述部分。
12.—种设备,其包括: 低分辨率缓冲器,其包含多个存储位置;以及 图形处理单元GPU,其经配置以: 接收至少第一图像表面和第二图像表面,其中所述第二图像表面至少部分地重叠于所述第一图像表面; 对所述第一图像表面执行分格遍次;以及 在所述第一图像表面的所述分格遍次期间,所述GPU进一步经配置以: 将所述第一图像表面划分为所述第一图像表面的多个表面像素块;以及 将所述第一图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第一图像表面的所述多个表面像素块中的块的存储位置内,其中所述低分辨率缓冲器内的所述多个存储位置中的每一者还对应于显示器上的一像素块。
13.根据权利要求12所述的设备,其中所述GPU进一步经配置以: 将所述第一图像表面的所述表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的每一者内,所述每一者各自对应于所述第一图像表面的所述多个表面像素块中的每一者。
14.根据权利要求12所述的设备,其进一步包括: 瓦片存储器,其包含层, 其中所述GPU将所述显示器划分为多个瓦片,且 其中所述GPU确定所述第一图像表面属于哪些瓦片,且在所述瓦片存储器的所述层的对应于所述第一图像表面的存储位置中存储所述第一图像表面的所述表面识别符值以对所述第一图像表面执行所述分格遍次。
15.根据权利要求12所述的设备,其中所述GPU进一步经配置以: 对所述第二图像表面执行分格遍次;以及 在所述第二图像表面的所述分格遍次期间: 将所述第二图像表面划分为所述第二图像表面的多个表面像素块;以及当所述第二图像表面的所述多个表面像素块中的一块与所述第一图像表面的所述像素块完全位于同一地点时,将所述第二图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第二图像表面的所述多个表面像素块中的所述块的存储位置内。
16.根据权利要求12所述的设备,其中所述GPU进一步经配置以: 对所述第二图像表面执行分格遍次;以及 在所述第二图像表面的所述分格遍次期间:` 将所述第二图像表面划分为所述第二图像表面的多个表面像素块;以及当所述第二图像表面的所述多个表面像素块中的一块与所述第一图像表面的所述多个像素块中的任一者均不位于同一地点时,将所述第二图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第二图像表面的所述多个表面像素块中的所述块的存储位置内。
17.根据权利要求12所述的设备,其中所述GPU进一步经配置以: 对所述第二图像表面执行分格遍次;以及 在所述第二图像表面的所述分格遍次期间: 将所述第二图像表面划分为所述第二图像表面的多个表面像素块;以及当所述第二图像表面的所述多个表面像素块中的一块与所述第一图像表面的所述像素块部分地位于同一地点时,不将所述第二图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第二图像表面的所述多个表面像素块中的所述块的存储位置内。
18.根据权利要求12所述的设备,其中所述第一图像表面的所述多个表面像素块中的每一者包含所述第一图像表面的两个或两个以上表面像素,且其中所述显示器上的所述像素块包含所述显示器上的两个或两个以上像素。
19.根据权利要求12所述的设备,其进一步包括处理器,其中所述GPU从所述处理器接收至少所述第一图像表面和所述第二图像表面。
20.根据权利要求12所述的设备,其中所述GPU进一步经配置以指派所述第一图像表面的所述表面识别符值和所述第二图像表面的表面识别符值,且其中所述GPU存储所述第一图像表面的所述经指派表面识别符值。
21.根据权利要求12所述的设备,其中所述GPU进一步经配置以接收多个图像表面,其中所述多个图像表面包含所述第一图像表面和所述第二图像表面,且配置而以所述多个图像表面中的最后方图像表面开始且继续到所述多个图像表面中的最前方图像表面来将表面识别符值指派于所述多个图像表面中的每一者。
22.根据权利要求12所述的设备,其中所述GPU进一步经配置以: 基于存储在所述低分辨率缓冲器中的所述表面识别符值来确定所述第一图像表面的哪些部分被所述第二图像表面重叠; 基于所述确定来再现所述第一图像表面的未被所述第二图像表面重叠的部分;以及 基于所述确定从再现中消除所述第一图像表面的被所述第二图像表面重叠的所述部分。
23.根据权利要求12所述的设备,其中所述设备包括以下各项中的至少一者:无线装置、移动电话、个人数字助理PDA、包含视频显示器的视频游戏控制台、移动视频会议单元、膝上型计算机、桌上型计算机、电视机机顶盒、平板计算装置,和电子书阅读器。
24.一种包括指令的非暂时性计算机可读存储媒体,所述指令致使图形处理单元GPU: 接收至少第一图像表面和第二图像表面,其中所述第二图像表面至少部分地重叠于所述第一图像表面; 对所述第一图像表面执行分格遍次;以及 在所述第一图像表面的所述分格遍次期间: 将所述第一图像表面划分为所述第一图像表面的多个表面像素块;以及将所述第一图像表面的表面识别符值存储在低分辨率缓冲器内的多个存储位置中的对应于所述第一图像表面的所述多个表面像素块中的块的存储位置内,其中所述低分辨率缓冲器内的所述多个存储位置中的每一者还对应于显示器上的一像素块。
25.根据权利要求24所述的非暂时性计算机可读存储媒体,其进一步包括用以进行以下操作的指令: 将所述第一图像表面的所述表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的每一者内,所述每一者各自对应于所述第一图像表面的所述多个表面像素块中的每一者。
26.根据权利要求24所述的非暂时性计算机可读存储媒体,其进一步包括用以进行以下操作的指令: 将所述显示器划分为多个瓦片, 其中所述用以执行所述分格遍次的指令包括用以进行以下操作的指令: 确定所述第一图像表面属于哪些瓦片;以及 在瓦片存储器的层的对应于所述第一图像表面的存储位置中存储所述第一图像表面的所述表面识别符值。
27.根据权利要求24所述的非暂时性计算机可读存储媒体,其进一步包括用以进行以下操作的指令: 对所述第二图像表面执行分格遍次;以及 在所述第二图像表面的所述分格遍次期间: 将所述第二图像表面划分为所述第二图像表面的多个表面像素块;以及当所述第二图像表面的所述多个表面像素块中的一块与所述第一图像表面的所述像素块完全位于同一地点时,将所述第二图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第二图像表面的所述多个表面像素块中的所述块的存储位置内。
28.根据权利要求24所述的非暂时性计算机可读存储媒体,其进一步包括用以进行以下操作的指令: 对所述第二图像表面执行分格遍次;以及 在所述第二图像表面的所述分格遍次期间: 将所述第二图像表面划分为所述第二图像表面的多个表面像素块;以及 当所述第二图像表面的所述多个表面像素块中的一块与所述第一图像表面的所述多个像素块中的任一者均不位于同一地点时,将所述第二图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第二图像表面的所述多个表面像素块中的所述块的存储位置内。
29.根据权利要求24所述的非暂时性计算机可读存储媒体,其进一步包括用以进行以下操作的指令: 对所述第二图像表面执行分格遍次;以及 在所述第二图像表面的所述分格遍次期间: 将所述第二图像表面划分为所述第二图像表面的多个表面像素块;以及 当所述第二图像表面的所述 多个表面像素块中的一块与所述第一图像表面的所述像素块部分地位于同一地点时,不 将所述第二图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第二图像表面的所述多个表面像素块中的所述块的存储位置内。
30.根据权利要求24所述的非暂时性计算机可读存储媒体,其中所述第一图像表面的所述多个表面像素块中的每一者包含所述第一图像表面的两个或两个以上表面像素,且其中所述显示器上的所述像素块包含所述显示器上的两个或两个以上像素。
31.根据权利要求24所述的非暂时性计算机可读存储媒体,其中所述用以接收至少所述第一图像表面和所述第二图像表面的指令包括用以从处理器接收至少所述第一图像表面和所述第二图像表面的指令。
32.根据权利要求24所述的非暂时性计算机可读存储媒体,其进一步包括用以进行以下操作的指令: 指派所述第一图像表面的所述表面识别符值和所述第二图像表面的表面识别符值,且其中所述用以存储所述第一图像表面的表面识别符的指令包括用以存储所述第一图像表面的所述经指派表面识别符的指令。
33.根据权利要求24所述的非暂时性计算机可读存储媒体,其进一步包括用以进行以下操作的指令: 接收多个图像表面,其中所述多个图像表面包含所述第一图像表面和所述第二图像表面;以及 以所述多个图像表面中的最后方图像表面开始且继续到所述多个图像表面中的最前方图像表面来将表面识别符值指派于所述多个图像表面中的每一者。
34.根据权利要求24所述的非暂时性计算机可读存储媒体,其进一步包括用以进行以下操作的指令: 基于存储在所述低分辨率缓冲器中的所述表面识别符值来确定所述第一图像表面的哪些部分被所述第二图像表面重叠;基于所述确定来再现所述第一图像表面的未被所述第二图像表面重叠的部分;以及基于所述确定从再现中消除所述第一图像表面的被所述第二图像表面重叠的所述部分。
35.一种设备,其包括: 低分辨率缓冲器,其包含多个存储位置;以及 图形处理单元GPU,其中所述GPU包括: 用于接收至少第一图像表面和第二图像表面的装置,其中所述第二图像表面至少部分地重叠于所述第一图像表面; 用于对所述第一图像表面执行分格遍次的装置;以及 在所述第一图像表面的所述分格遍次期间:用于将所述第一图像表面划分为所述第一图像表面的多个表面像素块的装置;以及用于将所述第一图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第一图像表面的所述多个表面像素块中的块的存储位置内的装置,其中所述低分辨率缓冲器内的所述多个存储位置中的每一者还对应于显示器上的一像素块。
36.根据权利要求35所述的设备,其中所述GPU进一步包括: 用于将所述第一图像表面的所述表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的每一者内的装置,所述每一者各自对应于所述第一图像表面的所述多个表面像素块中的每一者。
37.根据权利要求35所述的设备,其进一步包括: 用于将所述显示器划分为多个瓦片的装置, 其中所述用于执行所述分格遍次的装置包括: 用于确定所述第一图像表面属于哪些瓦片的装置;以及 用于在瓦片存储器的层的对应于所述第一图像表面的存储位置中存储所述第一图像表面的所述表面识别符值的装置。
38.根据权利要求35所述的设备,其中所述GPU进一步包括: 用于对所述第二图像表面执行分格遍次的装置;以及 在所述第二图像表面的所述分格遍次期间:用于将所述第二图像表面划分为所述第二图像表面的多个表面像素块的装置;以及用于当所述第二图像表面的所述多个表面像素块中的一块与所述第一图像表面的所述像素块完全位于同一地点时将所述第二图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第二图像表面的所述多个表面像素块中的所述块的存储位置内的装置。
39.根据权利要求35所述的设备,其中所述GPU进一步包括: 用于对所述第二图像表面执行分格遍次的装置;以及在所述第二图像表面的所述分格遍次期间:用于将所述第二图像表面划分为所述第二图像表面的多个表面像素块的装置;以及用于当所述第二图像表面的所述多个表面像素块中的一块与所述第一图像表面的所述多个像素块中的任一者均不位于同一地点时将所述第二图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第二图像表面的所述多个表面像素块中的所述块的存储位置内的装置。
40.根据权利要求35所述的设备,其中所述GPU进一步包括: 用于对所述第二图像表面执行分格遍次的装置;以及 在所述第二图像表面的所述分格遍次期间:用于将所述第二图像表面划分为所述第二图像表面的多个表面像素块的装置;以及用于当所述第二图像表面的所述多个表面像素块中的一块与所述第一图像表面的所述像素块部分地位于同一地点时不将所述第二图像表面的表面识别符值存储在所述低分辨率缓冲器内的所述多个存储位置中的对应于所述第二图像表面的所述多个表面像素块中的所述块的存储位置内的装置。
41.根据权利要求35所述的设备,其中所述第一图像表面的所述多个表面像素块中的每一者包含所述第一图像表面的两个或两个以上表面像素,且其中所述显示器上的所述像素块包含所述显示器上的两个或两个以上像素。
42.根据权利要求35所述的设备,其中所述用于接收至少所述第一图像表面和所述第二图像表面的装置包括用于从处理器接收至少所述第一图像表面和所述第二图像表面的 装直。
43.根据权利要求35所述的设备,其进一步包括: 用于指派所述第一图像表面的所述表面识别符值和所述第二图像表面的表面识别符值的装置,且其中所述用于存储所述第一图像表面的表面识别符值的装置包括用于存储所述第一图像表面的所述经指派表面识别符值的装置。
44.根据权利要求35所述的设备,其中所述GPU进一步包括: 用于接收多个图像表面的装置,其中所述多个图像表面包含所述第一图像表面和所述第二图像表面;以及 用于以所述多个图像表面中的最后方图像表面开始且继续到所述多个图像表面中的最前方图像表面来将表面识别符值指派于所述多个图像表面中的每一者的装置。
45.根据权利要求35所述的设备,其中所述GPU进一步包括: 用于基于存储在所述低分辨率缓冲器中的所述表面识别符值来确定所述第一图像表面的哪些部分被所述第二图像表面重叠的装置; 用于基于所述确定来再现所述第一图像表面的未被所述第二图像表面重叠的部分的装置;以及 用于基于所述确定从再现中消除所述第一图像表面的被所述第二图像表面重叠的所述部分的装置。
46.根据权利要求35所述的设备,其中所述设备包括以下各项中的至少一者:无线装置、移动电话、个人数字助理PDA、包含视频显示器的视频游戏控制台、移动视频会议单元、膝上型计算机、桌上型计算机、电视机机顶盒、平板计算装置,和电子书阅读器。
【文档编号】G06T15/40GK103503031SQ201280021663
【公开日】2014年1月8日 申请日期:2012年5月4日 优先权日:2011年5月4日
【发明者】佩特里·努德隆德 申请人:高通股份有限公司

最新回复(0)