用于渲染圖像數(shù)據(jù)的多個(gè)剪刀平面寄存器的制造方法
【專利摘要】描述了包括接收指示正在顯示的三維(3D)應(yīng)用的各部分的可視矩形數(shù)據(jù)的操作的系統(tǒng)、裝置、制品和方法。可以至少部分地基于可視矩形數(shù)據(jù)做出對(duì)兩個(gè)或更多個(gè)剪刀平面的確定??梢灾辽俨糠值鼗谒_定的兩個(gè)或更多個(gè)剪刀平面設(shè)置兩個(gè)或更多個(gè)剪刀平面寄存器??梢灾辽俨糠值鼗谒_定的兩個(gè)或更多個(gè)剪刀平面把圖像數(shù)據(jù)渲染到渲染緩沖器。
【專利說(shuō)明】用于渲染圖像數(shù)據(jù)的多個(gè)剪刀平面寄存器
[0001]背景
[0002]當(dāng)前,當(dāng)三維(3D)應(yīng)用準(zhǔn)備重繪與該3D應(yīng)用相關(guān)聯(lián)的窗口時(shí),驅(qū)動(dòng)器可以繪制與3D應(yīng)用相關(guān)聯(lián)的整個(gè)窗口的所有屏幕數(shù)據(jù),且然后,把可視內(nèi)容分塊圖像傳輸(blockimage transfer:BLIT)給幀緩沖器。因?yàn)椴煌拇翱诘闹丿B,可以不顯示為該3D應(yīng)用渲染(render)的一些內(nèi)容。
[0003]當(dāng)前,許多GPU支持剪刀(scissor)測(cè)試函數(shù),剪刀測(cè)試函數(shù)可以被用來(lái)把渲染強(qiáng)制為發(fā)生在一個(gè)期望的區(qū)域中。在這樣的剪刀測(cè)試函數(shù)中,可以在進(jìn)一步處理在剪刀測(cè)試期間丟棄所有剪刀區(qū)域之外的像素。 [0004]類似地,在Linux型窗口系統(tǒng)中,3D應(yīng)用的窗口是可繪制的,且可以具有可以被存儲(chǔ)為剪貼矩形的可視信息。通常,在3D應(yīng)用重繪其窗口時(shí),剪貼矩形中的可視部分可以被BLIT到幀緩沖器。
[0005]在一些應(yīng)用編程接口(API)(例如,OpenGL API和/或Direct3D API)中,程序員可以設(shè)置剪刀平面。然而,許多GPU支持表示一個(gè)矩形區(qū)域的一個(gè)剪刀平面。因此程序員僅可以設(shè)置一個(gè)活躍剪刀平面。
[0006]附圖簡(jiǎn)述
[0007]在附圖中作為示例而非限制闡釋在此描述的材料。出于闡釋的簡(jiǎn)單和清晰起見(jiàn),并不必定按比例繪制各圖中所闡釋的元素。例如,為清晰起見(jiàn),相對(duì)于其他元素,可以放大一些元素的尺寸。進(jìn)一步,在認(rèn)為合適時(shí),在各圖當(dāng)中已經(jīng)重復(fù)參考標(biāo)簽以指示相應(yīng)的或類似的元素。附圖中:
[0008]圖1是示例圖形處理系統(tǒng)的示意圖;
[0009]圖2是闡釋不例?宣染過(guò)程的流程圖;
[0010]圖3是操作中的示例圖形處理系統(tǒng)的示意圖;
[0011]圖4是示例圖形處理系統(tǒng)的示意圖;
[0012]圖5是示例系統(tǒng)的示意圖;以及
[0013]圖6是均根據(jù)本公開(kāi)內(nèi)容的至少一些實(shí)現(xiàn)布置的示例系統(tǒng)的示意圖。
[0014]詳細(xì)描述
[0015]現(xiàn)在參考附圖描述一個(gè)或多個(gè)實(shí)施例或?qū)崿F(xiàn)。盡管討論了特定的配置和布置,但應(yīng)理解,僅處于說(shuō)明性目的而這樣做。相關(guān)領(lǐng)域中的技術(shù)人員將認(rèn)識(shí)到,可以在不偏離本描述的精神和范圍的前提下采用其他配置和布置。相關(guān)領(lǐng)域中的技術(shù)人員將明顯看出,在不同于在此描述的各種其他系統(tǒng)和應(yīng)用中也可以采用在此描述的技術(shù)和/或布置。
[0016]雖然下面的描述中闡述了可以在諸如例如片上系統(tǒng)(SoC)體系結(jié)構(gòu)的體系結(jié)構(gòu)中表現(xiàn)各種實(shí)現(xiàn),但本文所描述的技術(shù)和/或布置的實(shí)現(xiàn)并不限于特定的結(jié)構(gòu)和/或計(jì)算系統(tǒng),并且可以由用于類似目的的任何結(jié)構(gòu)和/或計(jì)算系統(tǒng)實(shí)現(xiàn)。舉例來(lái)說(shuō),采用例如多個(gè)集成電路(IC)芯片和/或封裝和/或諸如機(jī)頂盒、智能電話等等的各種計(jì)算設(shè)備和/或消費(fèi)性電子(CE)設(shè)備的各種體系結(jié)構(gòu),可以實(shí)現(xiàn)在此描述的技術(shù)和/或布置。進(jìn)一步,盡管下列的描述可以陳述眾多特定的細(xì)節(jié),例如邏輯實(shí)現(xiàn)、系統(tǒng)組件的類型和相互關(guān)系、邏輯劃分/集成選擇等等,但無(wú)需這樣的特定細(xì)節(jié)就可以實(shí)踐所要求保護(hù)的本主題。在其他實(shí)例中,可以不詳細(xì)示出諸如例如控制結(jié)構(gòu)和完全軟件指令序列等的一些材料,以便不模糊在此公開(kāi)的材料。
[0017]在此公開(kāi)的材料可以以硬件、固件、軟件或其任何組合實(shí)現(xiàn)。在此公開(kāi)的材料也可以被實(shí)現(xiàn)為存儲(chǔ)在機(jī)器可讀介質(zhì)上的可以由一個(gè)或多個(gè)處理器讀取和執(zhí)行的指令。機(jī)器可讀介質(zhì)可以包括用于存儲(chǔ)或傳輸以機(jī)器(例如,計(jì)算設(shè)備)可讀的形式的信息的任何介質(zhì)和/或機(jī)制。例如,機(jī)器可讀介質(zhì)可以包括只讀存儲(chǔ)器(ROM);隨機(jī)存取存儲(chǔ)器(RAM);磁盤存儲(chǔ)介質(zhì);光存儲(chǔ)介質(zhì);閃速存儲(chǔ)器設(shè)備;電、光、聲或其他形式的所傳播的信號(hào)(例如,載波、紅外信號(hào)、數(shù)字信號(hào)等等)以及其他。
[0018]本說(shuō)明書(shū)中對(duì)“一個(gè)實(shí)現(xiàn)”、“一種實(shí)現(xiàn)”、“一個(gè)示例實(shí)現(xiàn)”等等的引用指示所描述的實(shí)現(xiàn)可以包括具體的特征、結(jié)構(gòu)或特性,但每一實(shí)現(xiàn)并不必定包括該具體的特征、結(jié)構(gòu)或特性。此外,這樣的短語(yǔ)并不必定指代相同的實(shí)現(xiàn)。進(jìn)一步,在結(jié)合一種實(shí)現(xiàn)描述具體的特征、結(jié)構(gòu)或特性時(shí),應(yīng)當(dāng)認(rèn)為,無(wú)論在此是否明確描述,這是在本領(lǐng)域的技術(shù)人員結(jié)合其他實(shí)現(xiàn)來(lái)實(shí)施這樣的特征、結(jié)構(gòu)或特性的知識(shí)范圍內(nèi)。
[0019]如下面更詳細(xì)地描述的,一些示例實(shí)現(xiàn)可以包括接收指示正在顯示的三維(3D)應(yīng)用的各部分的可視矩形數(shù)據(jù)的操作??梢灾辽俨糠值鼗诳梢暰匦螖?shù)據(jù)做出對(duì)兩個(gè)或更多個(gè)剪刀平面的確定??梢灾辽俨糠值鼗谒_定的兩個(gè)或更多個(gè)剪刀平面設(shè)置兩個(gè)或更多個(gè)剪刀平面寄存器??梢灾辽俨糠值鼗谒_定的兩個(gè)或更多個(gè)剪刀平面把圖像數(shù)據(jù)渲染到渲染緩沖器。
[0020]例如,可以修改圖形處理單元(GPU)以便支持多個(gè)剪刀。在3D渲染流水線中,可以結(jié)合來(lái)自窗口管理器的剪貼/可視信息使用這樣的多個(gè)剪刀。例如,多個(gè)剪刀可以用來(lái)減少不必要的渲染,這可以增加3D渲染性能和/或也可以節(jié)省整體系統(tǒng)功率(例如,當(dāng)在智能電話/平板平臺(tái)上使用多個(gè)剪刀時(shí))。
[0021]圖1是根據(jù)本公開(kāi)內(nèi)容的至少一些實(shí)現(xiàn)布置的圖形處理系統(tǒng)100的示意圖。在所闡釋的實(shí)現(xiàn)中,圖形處理系統(tǒng)100可以包括圖形處理單元(GPU) 102、窗口管理器120、渲染緩沖器112和/或幀緩沖器114。正如所闡釋的,GPU102、窗口管理器120、渲染緩沖器112和/或幀緩沖器114能夠彼此通信。在一些示例中,圖形處理系統(tǒng)100可以包括出于清晰起見(jiàn)在圖1中沒(méi)有示出的附加項(xiàng)目。例如,圖形處理系統(tǒng)100可以包括出于清晰起見(jiàn)在圖1中沒(méi)有示出的射頻型(RF)收發(fā)器、天線、揚(yáng)聲器、顯示器、加速度計(jì)、存儲(chǔ)器、路由器、網(wǎng)絡(luò)接口邏輯等等。
[0022]在一些實(shí)現(xiàn)中,圖形處理單元102可以包括三維(3D)應(yīng)用模塊104、3D驅(qū)動(dòng)器模塊106和/或類似物。另外,圖形處理單元102可以包括兩個(gè)或更多個(gè)剪刀平面寄存器,例如第一剪刀平面寄存器108到第N個(gè)剪刀平面寄存器110。在一些示例中,剪刀平面寄存器108/110可以被實(shí)現(xiàn)為八個(gè)寄存器、十六個(gè)平面寄存器和/或類似物。
[0023]在所闡釋的示例中,屏幕120可以包括3D應(yīng)用模塊104的可視呈現(xiàn)122。3D應(yīng)用模塊104的各部分可以被諸如窗口 124和/或窗口 126等的一個(gè)或多個(gè)窗口遮掩。例如,窗口 124可以與不同于3D應(yīng)用模塊104的第二應(yīng)用相關(guān)聯(lián),而窗口 126可以與不同于3D應(yīng)用模塊104的第三應(yīng)用相關(guān)聯(lián)。
[0024]在所闡釋的示例中,3D應(yīng)用模塊104的可視呈現(xiàn)122可以與諸如可視矩形130、可視矩形132、可視矩形134等的一個(gè)或多個(gè)可視矩形或更多或更少的可視矩形相關(guān)聯(lián)。例如,窗口管理器120可以把3D應(yīng)用模塊104的可視呈現(xiàn)122與這樣的一個(gè)或多個(gè)可視矩形130/132/134關(guān)聯(lián)起來(lái)。在這樣的示例中,窗口管理器120可以生成關(guān)于這樣的一個(gè)或多個(gè)可視矩形130/132/134的可視矩形數(shù)據(jù)。
[0025]在操作中,圖形處理單元102可以接收來(lái)自窗口管理器120的可視矩形數(shù)據(jù),其中可視矩形數(shù)據(jù)可以指示正在顯示的3D應(yīng)用模塊104的部分122。至少部分地基于可視矩形數(shù)據(jù),圖形處理單元102可以確定兩個(gè)或更多個(gè)剪刀平面。至少部分地基于所確定的剪刀平面,圖形處理單元102可以設(shè)置剪刀平面寄存器108/110。至少部分地基于剪刀平面寄存器108/110,圖形處理單元102可以把圖像數(shù)據(jù)渲染到渲染緩沖器112。在一些示例中,把圖像數(shù)據(jù)渲染到渲染緩沖器112可以涉及僅渲染對(duì)應(yīng)于與剪刀平面寄存器108/110相關(guān)聯(lián)的剪刀平面的圖像數(shù)據(jù)。
[0026]在操作中,圖形處理單元102可以支持多個(gè)剪刀平面。在一些實(shí)現(xiàn)中,3D驅(qū)動(dòng)器模塊106可以使用來(lái)自窗口管理器120的剪貼(clip)/可視信息。例如,在渲染之前可以調(diào)用3D驅(qū)動(dòng)器模塊106中的函數(shù),以便從窗口管理器120獲取可視矩形數(shù)據(jù)。作為響應(yīng),至少部分地基于該可視矩形數(shù)據(jù),3D驅(qū)動(dòng)器模塊106可以在剪刀平面寄存器108/110中設(shè)置多個(gè)剪刀平面。例如,這樣的多個(gè)剪刀平面可以獨(dú)立地啟用/禁用,且可以允許圖形處理單元102在渲染期間移除在活躍剪刀平面外的像素。
[0027]圖2是闡釋根據(jù)本公開(kāi)內(nèi)容的至少一些實(shí)現(xiàn)布置的示例渲染過(guò)程200的流程圖。在所闡釋的實(shí)現(xiàn)中,過(guò)程200可以包括正如框202、204、206和/或208中的一個(gè)或多個(gè)所闡釋的一種或多種操作、函數(shù)或動(dòng)作。作為非限制性示例,在此將參考圖1的示例圖形處理系統(tǒng)100描述過(guò)程200。
[0028]過(guò)程200可以在框202開(kāi)始,“接收可視矩形數(shù)據(jù)”,其中可以接收可視矩形數(shù)據(jù)。例如,可以經(jīng)由圖形處理單元從窗口管理器接收可視矩形數(shù)據(jù)。在一些實(shí)現(xiàn)中,這樣的可視矩形數(shù)據(jù)可以指示正在顯示的三維(3D)應(yīng)用的各部分。
[0029]處理可以從操作202繼續(xù)到操作204,“確定兩個(gè)或更多個(gè)剪刀平面”,其中可以確定兩個(gè)或更多個(gè)剪刀平面。例如,經(jīng)由圖形處理單元,至少部分地基于可視矩形數(shù)據(jù),可以確定兩個(gè)或更多個(gè)剪刀平面。
[0030]處理可以從操作204繼續(xù)到操作206,“在兩個(gè)或更多個(gè)剪刀平面寄存器中設(shè)置剪刀平面”,其中可以在兩個(gè)或更多個(gè)剪刀平面寄存器中設(shè)置剪刀平面。例如,經(jīng)由圖形處理單元,至少部分地基于所確定的兩個(gè)或更多個(gè)剪刀平面,可以設(shè)置兩個(gè)或更多個(gè)剪刀平面寄存器。
[0031]處理可以從操作206繼續(xù)到操作208,“至少部分地基于兩個(gè)或更多個(gè)剪刀平面寄存器中所設(shè)置的剪刀平面渲染圖像數(shù)據(jù)”,其中可以至少部分地基于兩個(gè)或更多個(gè)剪刀平面寄存器渲染圖像數(shù)據(jù)。例如,經(jīng)由圖形處理單元,至少部分地基于兩個(gè)或更多個(gè)剪刀平面寄存器,可以把圖像數(shù)據(jù)渲染到渲染緩沖器。在一些示例中,把圖像數(shù)據(jù)渲染到渲染緩沖器可以涉及僅渲染對(duì)應(yīng)于兩個(gè)或更多個(gè)剪刀平面的圖像數(shù)據(jù)。
[0032]在下面參見(jiàn)圖3更詳細(xì)地討論的各實(shí)現(xiàn)的一個(gè)或多個(gè)示例中闡釋與過(guò)程200相關(guān)的一些附加的和/或替代的細(xì)節(jié)。
[0033]圖3是根據(jù)本公開(kāi)內(nèi)容的至少一些實(shí)現(xiàn)布置的示例圖形處理系統(tǒng)100的示意圖,且渲染操作中的過(guò)程300。在所闡釋的實(shí)現(xiàn)中,過(guò)程300可以包括正如由動(dòng)作310、312、314、316、318、320、322和/或324中的一個(gè)或多個(gè)所闡釋的一種或多種操作、函數(shù)或動(dòng)作。作為非限制性示例,在此將參考圖1的示例圖形處理系統(tǒng)100描述過(guò)程300。
[0034]在所闡釋的實(shí)現(xiàn)中,圖形處理系統(tǒng)100可以包括GPU102、窗口管理器120、渲染緩沖器112和/或幀緩沖器114。正如所闡釋的,GPU102、窗口管理器120、渲染緩沖器112和/或幀緩沖器114能夠相互通信。如圖3中所示出,盡管圖形處理系統(tǒng)100可以包括與具體的模塊相關(guān)聯(lián)的一組具體的框或動(dòng)作,這些框或動(dòng)作可以與不同于在這里闡釋的具體模塊的模塊相關(guān)聯(lián)。
[0035]過(guò)程300可以在框310開(kāi)始,“接收渲染請(qǐng)求”,其中可以接收渲染請(qǐng)求。例如,可以經(jīng)由3D驅(qū)動(dòng)器模塊106接收來(lái)自三維(3D)應(yīng)用模塊104的渲染請(qǐng)求。
[0036]處理可以從操作310繼續(xù)到操作312,“通信可視矩形數(shù)據(jù)”,其中可以傳輸可視矩形數(shù)據(jù)。例如,可以經(jīng)由圖形處理單元102從窗口管理器120接收可視矩形數(shù)據(jù)。在一些實(shí)現(xiàn)中,這樣的可視矩形數(shù)據(jù)可以指示正在顯示的3D應(yīng)用模塊104的各部分。
[0037]在一些實(shí)現(xiàn)中,可以從窗口管理器120推送這樣的可視矩形數(shù)據(jù)。在其他實(shí)現(xiàn)中,通過(guò)經(jīng)由3D驅(qū)動(dòng)器模塊106從窗口管理器120請(qǐng)求可視矩形數(shù)據(jù)(未例示),可以從窗口管理器120拉出這樣的可視矩形數(shù)據(jù)。例如,響應(yīng)于操作310的渲染請(qǐng)求,可以做出對(duì)可視矩形數(shù)據(jù)的這樣的請(qǐng)求。
[0038]處理可以從操作312繼續(xù)到操作314,“確定剪刀平面”,其中可以確定兩個(gè)或更多個(gè)剪刀平面。例如,經(jīng)由3D驅(qū)動(dòng)器模塊106,至少部分地基于可視矩形數(shù)據(jù),可以確定兩個(gè)或更多個(gè)剪刀平面。
[0039]處理可以從操作314繼續(xù)到操作316,“設(shè)置剪刀平面”,其中可以在兩個(gè)或更多個(gè)剪刀平面寄存器中設(shè)置剪刀平面。例如,經(jīng)由3D驅(qū)動(dòng)器模塊106,至少部分地基于所確定的兩個(gè)或更多個(gè)剪刀平面,可以設(shè)置兩個(gè)或更多個(gè)剪刀平面寄存器。
[0040]處理可以從操作316繼續(xù)到操作318,“渲染圖像數(shù)據(jù)”,其中可以至少部分地基于兩個(gè)或更多個(gè)剪刀平面寄存器渲染圖像數(shù)據(jù)。例如,經(jīng)由3D驅(qū)動(dòng)器模塊106,至少部分地基于兩個(gè)或更多個(gè)剪刀平面寄存器,可以把圖像數(shù)據(jù)渲染到渲染緩沖器112。在一些示例中,把圖像數(shù)據(jù)渲染到渲染緩沖器112可以涉及僅渲染對(duì)應(yīng)于兩個(gè)或更多個(gè)剪刀平面的圖像數(shù)據(jù)。
[0041]處理可以從操作318繼續(xù)到操作320,“傳輸當(dāng)前可視矩形數(shù)據(jù)”,其中可以傳輸當(dāng)前可視矩形數(shù)據(jù)。例如,經(jīng)由圖形處理單元102,可以從窗口管理器120接收當(dāng)前可視矩形數(shù)據(jù)。在一些實(shí)現(xiàn)中,這樣的當(dāng)前可視矩形數(shù)據(jù)可以指示正在顯示的三維(3D)應(yīng)用的各部分。
[0042]在一些實(shí)現(xiàn)中,可以從窗口管理器120推送這樣的當(dāng)前可視矩形數(shù)據(jù)。在其他實(shí)現(xiàn)中,通過(guò)經(jīng)由3D驅(qū)動(dòng)器模塊106從窗口管理器120請(qǐng)求可視矩形數(shù)據(jù)(未例示),可以從窗口管理器120拉出這樣的可視矩形數(shù)據(jù)。例如,在操作318處渲染圖像數(shù)據(jù)之后,可以做出對(duì)當(dāng)前可視矩形數(shù)據(jù)的這樣的請(qǐng)求。
[0043]處理可以從操作320繼續(xù)到操作322,“確定可視矩形的改變”,其中可以確定可視矩形的改變。例如,經(jīng)由3D驅(qū)動(dòng)器模塊106,可以確定相比于可視矩形數(shù)據(jù)當(dāng)前可視矩形數(shù)據(jù)是否已被改變。[0044]處理可以從操作322繼續(xù)到操作324,“傳送圖像數(shù)據(jù)”,其中可以傳輸圖像數(shù)據(jù)。例如,可以經(jīng)由分塊圖像傳輸(BLIT)傳輸圖像數(shù)據(jù)。在一些實(shí)現(xiàn)中,可以經(jīng)由3D驅(qū)動(dòng)器模塊106把圖像數(shù)據(jù)從渲染緩沖器112傳輸?shù)綆彌_器114。
[0045]例如,響應(yīng)于在操作322處相比于可視矩形數(shù)據(jù)當(dāng)前可視矩形數(shù)據(jù)未被改變的確定,可以執(zhí)行在操作324處傳輸圖像數(shù)據(jù)。
[0046]除了操作310-324之外,過(guò)程300可以包括圖3中未例示的其他操作。例如,響應(yīng)于在操作322處相比于可視矩形數(shù)據(jù)當(dāng)前可視矩形數(shù)據(jù)已被改變的確定,過(guò)程300可以重復(fù)操作314-318。在這樣的示例中,過(guò)程300可以重復(fù)在操作314處的兩個(gè)或更多個(gè)剪刀平面的確定、在操作316處設(shè)置兩個(gè)或更多個(gè)剪刀平面寄存器、在操作318處把圖像數(shù)據(jù)渲染到渲染緩沖器312。
[0047]在操作中,過(guò)程300(和/或過(guò)程200)可以引起3D驅(qū)動(dòng)器模塊106接收來(lái)自3D應(yīng)用模塊104的請(qǐng)求(例如,glFlush/glSwapBuffer型命令)。作為響應(yīng),3D驅(qū)動(dòng)器模塊106可以為3D硬件準(zhǔn)備命令緩沖器。3D驅(qū)動(dòng)器模塊106可以調(diào)用函數(shù)來(lái)從窗口管理器120獲取可視矩形信息,并把可視矩形設(shè)置到剪刀平面寄存器GPU102中。在一些實(shí)現(xiàn)中,窗口管理器120可以具有用于每一窗口的可視矩形數(shù)據(jù)。例如,在X窗口中,窗口管理器120可以把可視矩形數(shù)據(jù)存儲(chǔ)在每一可繪制元素(例如,在X窗口中,每一窗口可以被看作是一種類型的可繪制件(drawable))的剪貼矩形中。3D驅(qū)動(dòng)器模塊106可以從窗口管理器120請(qǐng)求這種可視矩形數(shù)據(jù)并至少部分地基于這樣的可視矩形數(shù)據(jù)調(diào)整剪刀平面。
[0048]然后,,3D驅(qū)動(dòng)器模塊106可以斷開(kāi)命令緩沖器并開(kāi)始3D渲染。接下來(lái),3D驅(qū)動(dòng)器模塊106可以調(diào)用函數(shù)以便再次從窗口管理器120獲取當(dāng)前可視矩形信息。3D驅(qū)動(dòng)器模塊106可以把當(dāng)前可視矩形信息與先前的當(dāng)前可視矩形信息進(jìn)行比較。通常,在其中可視矩形信息不改變的情況中,渲染緩沖器112可以被BLIT給幀緩沖器114。替代地,在其中可視矩形信息改變的情況中,3D驅(qū)動(dòng)器模塊106可以清除剪刀平面寄存器以便再次重繪(re-draw)渲染緩沖器112,且然后根據(jù)當(dāng)前可視矩形把經(jīng)更新的渲染緩沖器112BLIT到幀緩沖器114。例如,在一些條件下,在渲染期間,3D應(yīng)用模塊104的窗口或其重疊窗口可以移動(dòng)或改變。如果這種改變發(fā)生在渲染期間,則3D驅(qū)動(dòng)器模塊106可以再次渲染該景物;否則,3D驅(qū)動(dòng)器模塊106可以直接轉(zhuǎn)到BLIT。因?yàn)槊恳粓?chǎng)景的渲染通常是非??焖俚?通常是幾毫秒),在這種渲染期間窗口改變的可能性非常小。并且,往往可以經(jīng)由窗口改變觸發(fā)渲染請(qǐng)求發(fā)起過(guò)程300,因此在許多情況下,窗口的改變將直接轉(zhuǎn)到BLIT。
[0049]盡管正如圖2和圖3中所闡釋的示例過(guò)程200和300的實(shí)現(xiàn)可以包括采取按所闡釋的次序示出的所有框,但本公開(kāi)內(nèi)容不限于此,并且在各種示例中,過(guò)程200和300的實(shí)現(xiàn)可以包括僅采用所示出的框的子集和/或按照不同于所闡釋的次序。
[0050]另外,可以響應(yīng)于由一個(gè)或多個(gè)計(jì)算機(jī)程序產(chǎn)品提供的指令采取圖2和圖3中的各框中的任何一個(gè)或多個(gè)。這樣的程序產(chǎn)品可以包括提供指令的信號(hào)承載介質(zhì),當(dāng)指令例如由處理器執(zhí)行時(shí),可以提供在此描述的功能性??梢砸匀魏涡问降挠?jì)算機(jī)可讀介質(zhì)提供計(jì)算機(jī)程序產(chǎn)品。因而,例如,響應(yīng)于由計(jì)算機(jī)可讀介質(zhì)傳輸給處理器的指令,包括一個(gè)或多個(gè)處理器核的處理器可以采取圖5和圖6中所示出的各框中的一個(gè)或多個(gè)。
[0051]在此描述的任何實(shí)現(xiàn)中所使用的術(shù)語(yǔ)“模塊”是指被配置為提供在此描述的功能性的軟件、固件和/或硬件的任何組合。軟件可以被實(shí)現(xiàn)為軟件包、代碼和/或指令集或指令,并且,在此描述的任何實(shí)現(xiàn)中所使用的“硬件”可以包括例如分別包括或者以任何組合包括硬布線電路、可編程電路、狀態(tài)機(jī)電路和/或存儲(chǔ)由可編程電路執(zhí)行的指令的固件。各模塊可以共同地或分別地被實(shí)現(xiàn)為形成更大系統(tǒng)的部分的電路,例如,集成電路(IC)、片上系統(tǒng)(SoC)等等。
[0052]圖4是根據(jù)本公開(kāi)內(nèi)容的至少一些實(shí)現(xiàn)布置的圖形處理系統(tǒng)100的另一實(shí)現(xiàn)的示意圖。在所闡釋的實(shí)現(xiàn)中,圖形處理系統(tǒng)100可以包括增強(qiáng)P0WerVR(能力VR)型3D引擎402。在此公開(kāi)的圖形處理系統(tǒng)100可以被應(yīng)用到不同的GPU和操作系統(tǒng)(OS)。在所闡釋的示例中,把圖形處理系統(tǒng)100描述為利用增強(qiáng)PowerVR型3D引擎402和Linux系統(tǒng),作為3D驅(qū)動(dòng)器模塊邏輯路徑(例如,參見(jiàn)3D圖1的驅(qū)動(dòng)器模塊106)的示例實(shí)現(xiàn)。
[0053]在所闡釋的實(shí)現(xiàn)中,增強(qiáng)PowerVR型3D引擎402可以包括頂點(diǎn)TOS/USSE (可編程數(shù)據(jù)定序器/通用可擴(kuò)展著色器引擎)410、頂點(diǎn)MTE/TE (宏瓦片化(tiling)引擎/瓦片化引擎)412、帶有多剪刀支持的ISP(圖像合成處理器)414、紋理/著色器設(shè)置模塊416、像素PDS/USSE (可編程數(shù)據(jù)定序器/通用可擴(kuò)展著色器引擎)418、像素協(xié)處理器420、類似物和/或其組合。在一些示例中,增強(qiáng)PowerVR型3D引擎402可以包括出于清晰起見(jiàn)在圖4中沒(méi)有示出的附加項(xiàng)。
[0054]在操作中,增強(qiáng)PowerVR型3D引擎402可以接收頂點(diǎn)數(shù)據(jù)404并把圖像數(shù)據(jù)渲染到渲染緩沖器112。例如,增強(qiáng)PowerVR型3D引擎402可以執(zhí)行包括頂點(diǎn)流水線的3D渲染流水線以處理頂點(diǎn)數(shù)據(jù)404(例如,諸如矢量點(diǎn)數(shù)據(jù)等的幾何形狀數(shù)據(jù)),以便向要顯示的2D平面創(chuàng)建場(chǎng)景中的3D數(shù)據(jù)點(diǎn)。
[0055]更具體地,頂點(diǎn)PDS/USSE410可以執(zhí)行頂點(diǎn)變換和/或照明。例如,頂點(diǎn)I3DS/USSE410的PDS部分可以控制增強(qiáng)PowerVR型3D引擎402中的硬件邏輯。例如,頂點(diǎn)I3DS/USSE410的PDS部分可以取出頂點(diǎn)數(shù)據(jù)404并設(shè)置頂點(diǎn)/像素著色器程序。另外或替代地,頂點(diǎn)TOS/USSE410的USSE可以指示硬件執(zhí)行單元運(yùn)行這樣的頂點(diǎn)/像素著色器程序。
[0056]進(jìn)一步,頂點(diǎn)MTE/TE412可以履行剪貼/視口(viewport)函數(shù)并輸出顯示器列表(例如,頂點(diǎn)處理的基于瓦片(tile)的輸出緩沖器,其可以用作像素處理的輸入數(shù)據(jù))。例如,頂點(diǎn)MTE/TE412的MTE部分可以執(zhí)行一系列操作,包括視口變換、屏幕投影、剪貼和/或背面剔除。另外或替代地,頂點(diǎn)MTE/TE412的TE部分可以瓦片化所得到的數(shù)據(jù)以便在存儲(chǔ)器中創(chuàng)建顯不器列表。
[0057]在頂點(diǎn)MTE/TE412完成工作之后,可以完成在3D頂點(diǎn)階段內(nèi)的操作。可以把生成結(jié)果顯示器列表430 (其可以包含2D計(jì)算數(shù)據(jù))發(fā)送給像素TOS/USSE418,用于可以在諸如紋理化和片段著色等3D像素階段發(fā)生的進(jìn)一步處理。例如,ISP414可以執(zhí)行像素處理流水線的第一階段,其執(zhí)行隱藏表面移除。在一些實(shí)現(xiàn)中,增強(qiáng)PowerVR型3D引擎402可以支持多個(gè)剪刀(例如,八個(gè)剪刀、十六個(gè)剪刀等等);每一剪刀可以與一個(gè)平面相關(guān)聯(lián)且可以獨(dú)立地啟用和禁用。在這樣的示例中,僅與活躍剪刀相關(guān)聯(lián)的像素?cái)?shù)據(jù)可在此階段中通過(guò)。
[0058]進(jìn)一步,紋理/著色器設(shè)置模塊416可以為每一可視像素產(chǎn)生顏色和紋理坐標(biāo)系,并準(zhǔn)備著色器以便修改像素。接下來(lái),像素TOS/USSE418可以執(zhí)行像素處理。最后,像素協(xié)處理器420可以執(zhí)行像素混合/格式化并把圖像數(shù)據(jù)輸出給渲染緩沖器112。
[0059]圖5闡釋根據(jù)本公開(kāi)內(nèi)容的示例系統(tǒng)500。在各種實(shí)現(xiàn)中,系統(tǒng)500可以是媒體系統(tǒng),但系統(tǒng)500不限于這種上下文。例如,系統(tǒng)500可以被合并到個(gè)人計(jì)算機(jī)(PC)、膝上型計(jì)算機(jī)、超膝上型計(jì)算機(jī)(ultra-laptop computer)、平板、觸控板、便攜式計(jì)算機(jī)、手持式計(jì)算機(jī)、掌上計(jì)算機(jī)、個(gè)人數(shù)字助理(PDA)、蜂窩式電話、組合蜂窩式電話/PDA、電視、智能設(shè)備(例如、智能電話、智能平板或智能電視)、移動(dòng)因特網(wǎng)設(shè)備(MID)、消息接發(fā)設(shè)備、數(shù)據(jù)通信設(shè)備等等。
[0060]在各種實(shí)現(xiàn)中,系統(tǒng)500包括耦合到顯示器520的平臺(tái)502。平臺(tái)502可以接收來(lái)自諸如內(nèi)容服務(wù)設(shè)備530或內(nèi)容傳輸設(shè)備540或其他類似內(nèi)容源等的內(nèi)容設(shè)備的內(nèi)容。包括一個(gè)或多個(gè)導(dǎo)航部件的導(dǎo)航控制器550可以被用來(lái)與例如平臺(tái)502和/或顯示器520交互。下面更詳細(xì)地描述這些組件中的每一種。
[0061]在各種實(shí)現(xiàn)中,平臺(tái)502可以包括芯片組505、處理器510、存儲(chǔ)器512、存儲(chǔ)514、圖形子系統(tǒng)515、應(yīng)用516和/或無(wú)線電518的任何組合。芯片組505可以提供在處理器510、存儲(chǔ)器512、存儲(chǔ)514、圖形子系統(tǒng)515、應(yīng)用516和/或無(wú)線電518當(dāng)中的相互通信。例如,芯片組505可以包括能夠提供與存儲(chǔ)514的相互通信的存儲(chǔ)適配器(未描繪)。
[0062]處理器510可以被實(shí)現(xiàn)為復(fù)雜指令集計(jì)算機(jī)(CISC)或精簡(jiǎn)指令集計(jì)算機(jī)(RISC)處理器;兼容x86指令集的處理器、多多核或任何其他微處理器或中央處理單元(CPU)。在各種實(shí)現(xiàn)中,處理器510可以是(多個(gè))雙核處理器、(多個(gè))雙多核移動(dòng)處理器等等。
[0063]存儲(chǔ)器512可以被實(shí)現(xiàn)為易失性存儲(chǔ)器設(shè)備,例如但不限于隨機(jī)存取存儲(chǔ)器(RAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)或靜態(tài)RAM (SRAM)。
[0064]存儲(chǔ)514可以被實(shí)現(xiàn)為非易失性存儲(chǔ)設(shè)備,例如但不限于磁盤驅(qū)動(dòng)器、光盤驅(qū)動(dòng)器、磁帶驅(qū)動(dòng)、內(nèi)部存儲(chǔ)設(shè)備、附加存儲(chǔ)設(shè)備、閃速存儲(chǔ)器、電池供電的SDRAM (同步DRAM)和/或網(wǎng)絡(luò)可訪問(wèn)存儲(chǔ)設(shè)備。在各種實(shí)現(xiàn)中,例如在包括多個(gè)硬盤驅(qū)動(dòng)器時(shí),存儲(chǔ)514可以包括增加對(duì)有價(jià)值的數(shù)字媒體的存儲(chǔ)性能增強(qiáng)的保護(hù)的技術(shù)。
[0065]圖形子系統(tǒng)515可以執(zhí)行例如用于顯示靜態(tài)或視頻的圖像的處理。例如,圖形子系統(tǒng)515可以是圖形處理單元(GPU)或視覺(jué)處理單元(VPU)。模擬接口或數(shù)字接口可以被用來(lái)通信上耦合圖形子系統(tǒng)515和顯示器520。例如,該接口可以是高清多媒體接口、DisplayPort (顯示端口)、無(wú)線HDMI和/或兼容無(wú)線HD的技術(shù)中的任何。圖形子系統(tǒng)515可以被集成到處理器510或芯片組505中。在一些實(shí)現(xiàn)中,圖形子系統(tǒng)515可以是通信上耦合到芯片組505的獨(dú)立板卡。
[0066]可以在各種硬件體系結(jié)構(gòu)中實(shí)現(xiàn)在此描述的圖形和/或視頻處理技術(shù)。例如,圖形和/或視頻功能性可以被集成在芯片組內(nèi)。替代地,可以使用分離的圖形和/或視頻處理器。作為再一種實(shí)現(xiàn),可以由包括多多核處理器的通用處理器提供圖形和/或視頻功能。在進(jìn)一步的實(shí)施例中,可以在消費(fèi)性電子設(shè)備中實(shí)現(xiàn)各功能。
[0067]無(wú)線電518可以包括能夠使用各種合適的無(wú)線通信技術(shù)傳送和接收信號(hào)的一個(gè)或多個(gè)無(wú)線電。這樣的技術(shù)可以涉及跨越一個(gè)或多個(gè)無(wú)線網(wǎng)絡(luò)通信。示例無(wú)線網(wǎng)絡(luò)包括(但不限于)無(wú)線局域網(wǎng)(WLAN)、無(wú)線個(gè)域網(wǎng)(WPAN)、無(wú)線城域網(wǎng)(WMAN)、蜂窩式網(wǎng)絡(luò)和衛(wèi)星網(wǎng)絡(luò)。在跨越這樣的網(wǎng)絡(luò)通信時(shí),無(wú)線電518可以根據(jù)任何版本的一種或多種適用標(biāo)準(zhǔn)操作。
[0068]在各種實(shí)現(xiàn)中,顯示器520可以包括任何電視型監(jiān)視器或顯示器。顯示器520可以包括例如計(jì)算機(jī)顯示器屏幕、觸摸屏幕顯示器、視頻監(jiān)視器、類似電視的設(shè)備和/或電視。顯示器520可以是數(shù)字顯示器和/或模擬顯示器。在各種實(shí)現(xiàn)中,顯示器520可以是全息顯示器。而且,顯示器520可以是可以接收可視投影的透明表面。這樣的投影可以表達(dá)各種形式的信息、圖像和/或?qū)ο?。例如,這樣的投影可以是移動(dòng)增強(qiáng)現(xiàn)實(shí)(MAR)應(yīng)用的可視覆蓋。在個(gè)或多個(gè)軟件應(yīng)用516的控制下,平臺(tái)502可以在顯示器520上顯示用戶界面522。
[0069]在各種實(shí)現(xiàn)中,(多個(gè))內(nèi)容服務(wù)設(shè)備530可以由任何國(guó)家、國(guó)際和/或獨(dú)立的服務(wù)主控,且因而可由平臺(tái)502例如經(jīng)由因特網(wǎng)訪問(wèn)。(多個(gè))內(nèi)容服務(wù)設(shè)備530可以耦合到平臺(tái)502和/或顯示器520。平臺(tái)502和/或(多個(gè))內(nèi)容服務(wù)設(shè)備530可以耦合到網(wǎng)絡(luò)560,以便向網(wǎng)絡(luò)560或從其傳輸(例如,發(fā)送和/或接收)媒體信息。(多個(gè))內(nèi)容傳輸設(shè)備540也可以耦合到平臺(tái)502和/或顯示器520。
[0070]在各種實(shí)現(xiàn)中,(多個(gè))內(nèi)容服務(wù)設(shè)備530可以包括有線電視盒、個(gè)人計(jì)算機(jī)、網(wǎng)絡(luò)、電話、啟用因特網(wǎng)的設(shè)備或能夠傳輸數(shù)字信息和/或內(nèi)容的電器,以及能夠經(jīng)由網(wǎng)絡(luò)560或直接地在內(nèi)容提供商和平臺(tái)502和/顯示器520之間單向地或雙向地傳輸內(nèi)容的任何其他類似設(shè)備。應(yīng)明白,經(jīng)由網(wǎng)絡(luò)560,可以單向地或雙向地向系統(tǒng)500中的組件中的任何一個(gè)和內(nèi)容提供商或者從其傳輸內(nèi)容。內(nèi)容的示例可以包括任何媒體信息,包括例如視頻、首樂(lè)、醫(yī)療和游戲?目息等等。
[0071](多個(gè))內(nèi)容服務(wù)設(shè)備530可以接收包括媒體信息、數(shù)字信息和/或其他內(nèi)容的、諸如有線電視節(jié)目等的內(nèi)容。內(nèi)容提供商的示例可以包括任何有線或衛(wèi)星電視或無(wú)線電或因特網(wǎng)內(nèi)容提供商。所提供的示例不預(yù)期以任何方式限制根據(jù)本公開(kāi)內(nèi)容的實(shí)現(xiàn)。
[0072]在各種實(shí)現(xiàn)中,平臺(tái)502可以接收來(lái)自具有一個(gè)或多個(gè)導(dǎo)航部件的導(dǎo)航控制器550的控制信號(hào)。例如,控 制器550的導(dǎo)航部件可以被用來(lái)與用戶界面522交互。在各實(shí)施例中,導(dǎo)航控制器550可以是指點(diǎn)設(shè)備,指點(diǎn)設(shè)備可以是允許用戶向計(jì)算機(jī)輸入空間(例如,持續(xù)和多維的)數(shù)據(jù)的計(jì)算機(jī)硬件組件(具體地,人機(jī)界面設(shè)備)。諸如圖形用戶界面(GUI)和電視以及監(jiān)視器等的多種系統(tǒng)允許用戶使用物理手勢(shì)來(lái)控制計(jì)算機(jī)或電視并向其提供數(shù)據(jù)。
[0073]通過(guò)在顯示器上顯示的指針、光標(biāo)、聚焦環(huán)或其他可視指示符的移動(dòng),可以在顯示器(例如,顯示器520)上復(fù)制控制器550的導(dǎo)航部件的移動(dòng)。例如,在軟件應(yīng)用516的控制下,位于導(dǎo)航控制器550上的導(dǎo)航部件可以被映射到例如在用戶界面522上顯示的虛擬導(dǎo)航部件。在各實(shí)施例中,控制器550可以不是分離的組件,而是可以被集成到平臺(tái)502和/或顯示器520。然而,本公開(kāi)內(nèi)容不限于在此示出或描述的元素或上下文。
[0074]在各種實(shí)現(xiàn)中,驅(qū)動(dòng)器(未示出)可以包括允許用戶借助于在初始引導(dǎo)之后觸摸按鈕(例如在啟用時(shí))立即開(kāi)啟和關(guān)閉平臺(tái)502例如電視的技術(shù)。程序邏輯可以允許平臺(tái)502即使在“關(guān)閉”平臺(tái)時(shí)也把內(nèi)容傳輸給介質(zhì)適配器或(多個(gè))其他內(nèi)容服務(wù)設(shè)備530或(多個(gè))內(nèi)容傳輸設(shè)備540。另外,芯片組505可以包括例如對(duì)(5.1)環(huán)繞聲音頻和/或高清晰度(7.1)環(huán)繞聲音頻的硬件和/或軟件支持。驅(qū)動(dòng)器可以包括用于集成圖形平臺(tái)的圖形驅(qū)動(dòng)器。在各實(shí)施例中,圖形驅(qū)動(dòng)器可以包括高速外圍組件互連(PCI)圖形卡。
[0075]在各種實(shí)現(xiàn)中,可以集成系統(tǒng)500中所示出的組件中的任何一個(gè)或多個(gè)。例如,可以集成平臺(tái)502和(多個(gè))內(nèi)容服務(wù)設(shè)備530,或者可以集成平臺(tái)502和(多個(gè))內(nèi)容傳輸設(shè)備540,或者例如可以集成平臺(tái)502、(多個(gè))內(nèi)容服務(wù)設(shè)備530和(多個(gè))內(nèi)容傳輸設(shè)備540。在各種實(shí)施例中,平臺(tái)502和顯示器520可以是集成的單元。可以集成顯示器520和(各)內(nèi)容服務(wù)設(shè)備530,或者例如可以集成顯示器520和(多個(gè))內(nèi)容傳輸設(shè)備540。這些示例不意味著限制本公開(kāi)內(nèi)容。
[0076]在各種實(shí)施例中,系統(tǒng)500可以被實(shí)現(xiàn)為無(wú)線系統(tǒng)、有線系統(tǒng)或兩者的組合。在被實(shí)現(xiàn)為無(wú)線系統(tǒng)時(shí),系統(tǒng)500可以包括適于在無(wú)線共享介質(zhì)上通信的組件和接口,例如一個(gè)或多個(gè)天線、發(fā)射機(jī)、接收機(jī)、收發(fā)器、放大器、濾波器、控制邏輯等等。無(wú)線共享介質(zhì)的示例可以包括無(wú)線頻譜的各部分,例如RF譜等等。在實(shí)現(xiàn)為有線系統(tǒng)時(shí),系統(tǒng)500可以包括適于在有線通信介質(zhì)上通信的組件和接口,例如輸入/輸出(I/O)適配器、把I/O適配器與相應(yīng)的有線通信介質(zhì)連接起來(lái)的物理連接器、網(wǎng)絡(luò)接口卡(NIC)、盤控制器、視頻控制器、音頻控制器等等。有線通信介質(zhì)的示例可以包括電線、電纜、金屬引線、印刷電路板(PCB)、底板、交換織物、半導(dǎo)體材料、雙絞線、同軸電纜、光纖等等。
[0077]平臺(tái)502可以建立一個(gè)或多個(gè)邏輯或物理信道以便傳輸信息。信息可以包括媒體信息和控制信息。媒體信息可以是指表示預(yù)期送給用戶的內(nèi)容的任何數(shù)據(jù)。內(nèi)容示例可以包括,例如,來(lái)自語(yǔ)音會(huì)話、視頻會(huì)議、流媒體視頻、電子郵件(“email”)消息、語(yǔ)音郵件消息、字母數(shù)字符號(hào)、圖形、圖像、視頻、文本等等的數(shù)據(jù)。來(lái)自語(yǔ)音會(huì)話的數(shù)據(jù)可以是例如語(yǔ)音信息、靜音期、舒適的背景噪聲、樂(lè)音等等??刂菩畔⒖梢允侵副硎绢A(yù)期送給自動(dòng)化系統(tǒng)的命令、指令或控制字的任何數(shù)據(jù)。例如,控制信息可以被用來(lái)通過(guò)系統(tǒng)路由媒體信息,或者指示節(jié)點(diǎn)以預(yù)先確定的方式處理媒體信息。然而,各實(shí)施例不限于圖5中示出或描述的元素或上下文。
[0078]如上所述,可以在不同物理樣式或形狀因子中實(shí)現(xiàn)系統(tǒng)500。圖6闡釋其中可以實(shí)現(xiàn)系統(tǒng)500的小形狀因子設(shè)備600的實(shí)現(xiàn)。在各實(shí)施例中,例如,設(shè)備600可以被實(shí)現(xiàn)為具有無(wú)線能力的移動(dòng)計(jì)算設(shè)備。移動(dòng)計(jì)算設(shè)備可以是指具有處理系統(tǒng)和諸如例如一個(gè)或多個(gè)電池等的移動(dòng)電源或電力供應(yīng)的任何設(shè)備。
[0079]如上所述,移動(dòng)計(jì)算設(shè)備的示例可以包括個(gè)人計(jì)算機(jī)(PC)、膝上型計(jì)算機(jī)、超膝上型計(jì)算機(jī)、平板、觸控板、便攜式計(jì)算機(jī)、手持式計(jì)算機(jī)、掌上計(jì)算機(jī)、個(gè)人數(shù)字助理(PDA)、蜂窩式電話、組合蜂窩式電話/PDA、電視、智能設(shè)備(例如,智能電話、智能平板或智能電視)、移動(dòng)因特網(wǎng)設(shè)備(MID)、通訊設(shè)備、數(shù)據(jù)通信設(shè)備等等。
[0080]移動(dòng)計(jì)算設(shè)備的示例也可以包括被配置為由個(gè)人穿戴的計(jì)算機(jī)例如腕式計(jì)算機(jī)、手指計(jì)算機(jī)、戒指計(jì)算機(jī)、眼鏡計(jì)算機(jī)、皮帶夾計(jì)算機(jī)、臂帶計(jì)算機(jī)、鞋式計(jì)算機(jī)、服裝計(jì)算機(jī)和其他可穿戴計(jì)算機(jī)。在各種實(shí)施例中,例如,移動(dòng)計(jì)算設(shè)備可以被實(shí)現(xiàn)為能夠執(zhí)行計(jì)算機(jī)應(yīng)用以及語(yǔ)音通信和/或數(shù)據(jù)通信的智能電話。盡管可以作為示例借助于被實(shí)現(xiàn)為智能電話的移動(dòng)計(jì)算設(shè)備來(lái)描述一些實(shí)施例,但應(yīng)明白,也可以使用其他無(wú)線移動(dòng)計(jì)算設(shè)備來(lái)實(shí)現(xiàn)其他實(shí)施例。各實(shí)施例不限于這一上下文。
[0081]如圖6中所不出,設(shè)備600可以包括外殼602、顯不器604、輸入/輸出(I/O)設(shè)備606和天線608。設(shè)備600也可以包括導(dǎo)航部件612。顯示器604可以包括用于顯示適用于移動(dòng)計(jì)算設(shè)備的信息的任何合適的顯示單元。I/O設(shè)備606可以包括用于把信息輸入到移動(dòng)計(jì)算設(shè)備的任何合適的I/O設(shè)備。I/O設(shè)備606的示例可以包括字母數(shù)字鍵盤、數(shù)字鍵區(qū)、觸控板、輸入鍵、按鈕、開(kāi)關(guān)、翹板開(kāi)關(guān)、話筒、揚(yáng)聲器、語(yǔ)音識(shí)別設(shè)備和軟件等等。
[0082]也可以通過(guò)話筒(未示出)把信息輸入到設(shè)備600中。這樣的信息可以由語(yǔ)音識(shí)別設(shè)備(未示出)數(shù)字化。各實(shí)施例不限于這一上下文。[0083]可以使用硬件元件、軟件元件或兩者的組合來(lái)實(shí)現(xiàn)各種實(shí)施例。硬件元件的示例可以包括處理器、微處理器、電路、電路元件(例如,晶體管、電阻器、電容器、電感器等等)、集成電路、專用集成電路(ASIC)、可編程邏輯器件(PLD)、數(shù)字信號(hào)處理器(DSP)、現(xiàn)場(chǎng)可編程門陣列(FPGA)、邏輯門、寄存器、半導(dǎo)體設(shè)備、芯片、微芯片、芯片組等等。軟件的示例可以包括軟件組件、程序、應(yīng)用、計(jì)算機(jī)程序、應(yīng)用程序、系統(tǒng)程序、機(jī)器程序、操作系統(tǒng)軟件、中間件、固件、軟件模塊、例程、子例程、函數(shù)、方法、過(guò)程、軟件接口、應(yīng)用程序接口(API)、指令集、計(jì)算代碼、計(jì)算機(jī)代碼、代碼片段、計(jì)算機(jī)代碼片段、字、值、符號(hào)或其任何組合。確定是否使用硬件元件和/或軟件元件實(shí)現(xiàn)實(shí)施例可以根據(jù)任何數(shù)量的因素改變,這些因素例如所期望的計(jì)算速度、功率級(jí)、熱容差、處理循環(huán)預(yù)算、輸入數(shù)據(jù)率、輸出數(shù)據(jù)率、存儲(chǔ)器資源、數(shù)據(jù)總線速度和其他設(shè)計(jì)或性能約束。
[0084]至少一種實(shí)施例一個(gè)或多個(gè)的各方面可以由被存儲(chǔ)在機(jī)器可讀介質(zhì)上的表示性指令實(shí)現(xiàn),表示性指令表示在處理器內(nèi)各種邏輯,在由機(jī)器讀取時(shí),這些邏輯引起機(jī)器構(gòu)造執(zhí)行在此描述的技術(shù)的邏輯。被稱為“IP核”的這樣的表示可以被存儲(chǔ)在有形的機(jī)器可讀介質(zhì)上,且被提供給各種消費(fèi)者或制造設(shè)施,以便加載到實(shí)際上制造邏輯或處理器的制造機(jī)器。
[0085]盡管已經(jīng)參考各種實(shí)現(xiàn)描述了在此陳述的特定特征,但不預(yù)期以限制性意義來(lái)解釋本描述。因此,在此描述的實(shí)現(xiàn)以及本公開(kāi)內(nèi)容所屬于的領(lǐng)域中的技術(shù)人員將明顯看出的其他實(shí)現(xiàn)的各種修改被視為落在本公開(kāi)內(nèi)容的精神和范圍內(nèi)。
【權(quán)利要求】
1.一種計(jì)算機(jī)實(shí)現(xiàn)的方法,包括: 經(jīng)由圖形處理單元從窗口管理器接收可視矩形數(shù)據(jù),其中所述可視矩形數(shù)據(jù)指示正在顯示的三維(3D)應(yīng)用的各部分; 經(jīng)由所述圖形處理單元,至少部分地基于所述可視矩形數(shù)據(jù)確定兩個(gè)或更多個(gè)剪刀平面; 經(jīng)由所述圖形處理單元,至少部分地基于所確定的兩個(gè)或更多個(gè)剪刀平面設(shè)置兩個(gè)或更多個(gè)剪刀平面寄存器;以及 經(jīng)由所述圖形處理單元,把圖像數(shù)據(jù)渲染到渲染緩沖器,其中圖像數(shù)據(jù)的所述渲染至少部分地基于所述兩個(gè)或更多個(gè)剪刀平面寄存器。
2.如權(quán)利要求1所述的方法,其特征在于,所述把圖像數(shù)據(jù)渲染到所述渲染緩沖器包括僅渲染對(duì)應(yīng)于所述兩個(gè)或更多個(gè)剪刀平面的圖像數(shù)據(jù)。
3.如權(quán)利要求1所述的方法,其特征在于,所述兩個(gè)或更多個(gè)剪刀平面寄存器包括八個(gè)或更多個(gè)平面寄存器。
4.如權(quán)利要求1所述的方法,其特征在于,所述兩個(gè)或更多個(gè)剪刀平面寄存器包括十六個(gè)或更多個(gè)平面寄存器。
5.如權(quán)利要求1所述的方法,其特征在于,進(jìn)一步包括: 經(jīng)由所述圖形處理單元,接收來(lái)自所述3D應(yīng)用的渲染請(qǐng)求;以及 經(jīng)由所述圖形處理單元,從所述窗口管理器請(qǐng)求所述可視矩形數(shù)據(jù)。
6.如權(quán)利要求1所述的方法,其特征在于,進(jìn)一步包括: 經(jīng)由所述圖形處理單元,從所述窗口管理器接收當(dāng)前可視矩形數(shù)據(jù);以及經(jīng)由所述圖形處理單元,確定相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)是否已被改變。
7.如權(quán)利要求1所述的方法,其特征在于,進(jìn)一步包括: 經(jīng)由所述圖形處理單元,從所述窗口管理器接收當(dāng)前可視矩形數(shù)據(jù); 經(jīng)由所述圖形處理單元,確定相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)是否已被改變;以及 響應(yīng)于相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)未被改變的確定,經(jīng)由所述圖形處理單元,把所述圖像數(shù)據(jù)從所述渲染緩沖器傳遞到幀緩沖器。
8.如權(quán)利要求1所述的方法,其特征在于,進(jìn)一步包括: 經(jīng)由所述圖形處理單元,從所述窗口管理器接收當(dāng)前可視矩形數(shù)據(jù); 經(jīng)由所述圖形處理單元,確定相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)是否已被改變;以及 響應(yīng)于相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)已被改變的確定,重復(fù)對(duì)所述兩個(gè)或更多個(gè)剪刀平面的確定、設(shè)置所述兩個(gè)或更多個(gè)剪刀平面寄存器、把圖像數(shù)據(jù)渲染到所述渲染緩沖器。
9.如權(quán)利要求1所述的方法,其特征在于,進(jìn)一步包括: 經(jīng)由所述圖形處理單元,接收來(lái)自所述3D應(yīng)用的渲染請(qǐng)求; 經(jīng)由所述圖形處理單元,從所述窗口管理器請(qǐng)求所述可視矩形數(shù)據(jù); 經(jīng)由所述圖形處理單元,在把圖像數(shù)據(jù)渲染到所述渲染緩沖器之后從所述窗口管理器請(qǐng)求當(dāng)前可視矩形數(shù)據(jù); 經(jīng)由所述圖形處理單元,從響應(yīng)于所述對(duì)當(dāng)前可視矩形數(shù)據(jù)的請(qǐng)求的所述窗口管理器接收所述當(dāng)前可視矩形數(shù)據(jù); 經(jīng)由所述圖形處理單元,確定相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)是否已被改變; 響應(yīng)于相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)未被改變的確定,經(jīng)由所述圖形處理單元,把所述圖像數(shù)據(jù)從所述渲染緩沖器傳遞到幀緩沖器;以及 響應(yīng)于相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)已被改變的確定,重復(fù)對(duì)所述兩個(gè)或更多個(gè)剪刀平面的確定、設(shè)置所述兩個(gè)或更多個(gè)剪刀平面寄存器、把圖像數(shù)據(jù)渲染到所述渲染緩沖器; 其中把圖像數(shù)據(jù)渲染到所述渲染緩沖器包括僅渲染對(duì)應(yīng)于所述兩個(gè)或更多個(gè)剪刀平面的圖像數(shù)據(jù), 其中,兩個(gè)或更多個(gè)剪刀平面寄存器包括十六個(gè)或更多個(gè)平面寄存器。
10.一種制品,其包括其中存儲(chǔ)有指令的計(jì)算機(jī)程序產(chǎn)品,如果所述指令被執(zhí)行則引起: 經(jīng)由圖形處理單元,從窗口管理器接收可視矩形數(shù)據(jù),其中所述可視矩形數(shù)據(jù)指示正在顯示的三維(3D)應(yīng)用的 各部分; 經(jīng)由所述圖形處理單元,至少部分地基于所述可視矩形數(shù)據(jù)確定兩個(gè)或更多個(gè)剪刀平面; 經(jīng)由所述圖形處理單元,至少部分地基于所確定的兩個(gè)或更多個(gè)剪刀平面設(shè)置兩個(gè)或更多個(gè)剪刀平面寄存器;以及 經(jīng)由所述圖形處理單元,把圖像數(shù)據(jù)渲染到渲染緩沖器,其中渲染圖像數(shù)據(jù)至少部分地基于所述兩個(gè)或更多個(gè)剪刀平面寄存器。
11.如權(quán)利要求10所述的制品,其特征在于,把圖像數(shù)據(jù)渲染到所述渲染緩沖器包括僅渲染對(duì)應(yīng)于所述兩個(gè)或更多個(gè)剪刀平面的圖像數(shù)據(jù)。
12.如權(quán)利要求10所述的制品,其特征在于,如果所述指令被執(zhí)行還引起: 經(jīng)由所述圖形處理單元,接收來(lái)自所述3D應(yīng)用的渲染請(qǐng)求;以及 經(jīng)由所述圖形處理單元,從所述窗口管理器請(qǐng)求所述可視矩形數(shù)據(jù)。
13.如權(quán)利要求10所述的制品,其特征在于,如果所述指令被執(zhí)行還引起: 經(jīng)由所述圖形處理單元,從所述窗口管理器接收當(dāng)前可視矩形數(shù)據(jù);以及 經(jīng)由所述圖形處理單元,確定相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)是否已被改變。
14.如權(quán)利要求10所述的制品,其特征在于,如果所述指令被執(zhí)行還引起: 經(jīng)由所述圖形處理單元,從所述窗口管理器接收當(dāng)前可視矩形數(shù)據(jù); 經(jīng)由所述圖形處理單元,確定相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)是否已被改變; 響應(yīng)于相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)未被改變的確定,經(jīng)由所述圖形處理單元,把所述圖像數(shù)據(jù)從所述渲染緩沖器傳遞到幀緩沖器;以及 響應(yīng)于相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)已被改變的確定,重復(fù)對(duì)所述兩個(gè)或更多個(gè)剪刀平面的確定、設(shè)置所述兩個(gè)或更多個(gè)剪刀平面寄存器、把圖像數(shù)據(jù)渲染到所述渲染緩沖器。
15.一種裝置,包括: 圖形處理單元,其包括兩個(gè)或更多個(gè)剪刀平面寄存器,其中所述圖形處理單元被配置為: 從窗口管理器接收可視矩形數(shù)據(jù),其中所述可視矩形數(shù)據(jù)指示正在顯示的三維(3D)應(yīng)用的各部分; 至少部分地基于所述可視矩形數(shù)據(jù)確定兩個(gè)或更多個(gè)剪刀平面; 至少部分地基于所確定的兩個(gè)或更多個(gè)剪刀平面設(shè)置所述兩個(gè)或更多個(gè)剪刀平面寄存器;以及 把圖像數(shù)據(jù)渲染到渲染緩沖器,其中圖像數(shù)據(jù)的所述渲染至少部分地基于所述兩個(gè)或更多個(gè)剪刀平面寄存器。
16.如權(quán)利要求15所述的裝置,其特征在于,把圖像數(shù)據(jù)渲染到所述渲染緩沖器包括僅渲染對(duì)應(yīng)于所述兩個(gè)或更多個(gè)剪刀平面的圖像數(shù)據(jù)。
17.如權(quán)利要求15所述的裝置,其特征在于,所述兩個(gè)或更多個(gè)剪刀平面寄存器包括八個(gè)或更多個(gè)平面寄存器。
18.如權(quán)利要求15所述的裝置,其特征在于,所述兩個(gè)或更多個(gè)剪刀平面寄存器包括十六個(gè)或更多個(gè)平面寄存器。
19.如權(quán)利要求15所述的裝置,其特征在于,所述圖形處理單元還被配置為: 接收來(lái)自所述3D應(yīng)用的渲染請(qǐng)求;以及 從所述窗口管理器請(qǐng)求所述可視矩形數(shù)據(jù)。
20.如權(quán)利要求15所述的裝置,其特征在于,所述圖形處理單元還被配置為: 從所述窗口管理器接收當(dāng)前可視矩形數(shù)據(jù);以及 確定相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)是否已被改變。
21.如權(quán)利要求15所述的裝置,其特征在于,所述圖形處理單元還被配置為: 從所述窗口管理器接收當(dāng)前可視矩形數(shù)據(jù); 確定相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)是否已被改變;以及響應(yīng)于相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)未被改變的確定,把所述圖像數(shù)據(jù)從所述渲染緩沖器傳遞到幀緩沖器;以及 響應(yīng)于相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)已被改變的確定,重復(fù)對(duì)所述兩個(gè)或更多個(gè)剪刀平面的確定、設(shè)置所述兩個(gè)或更多個(gè)剪刀平面寄存器、把圖像數(shù)據(jù)渲染到所述渲染緩沖器。
22.—種系統(tǒng),包括: 渲染緩沖器; 窗口管理器模塊;以及 圖形處理單元,其包括兩個(gè)或更多個(gè)剪刀平面寄存器,其中所述圖形處理單元通信地耦合到所述渲染緩沖器和所述窗口管理器模塊,且其中所述圖形處理單元被配置為: 從所述窗口管理器接收可視矩形數(shù)據(jù),其中所述可視矩形數(shù)據(jù)指示正在顯示的三維(3D)應(yīng)用的各部分;至少部分地基于所述可視矩形數(shù)據(jù)確定兩個(gè)或更多個(gè)剪刀平面; 至少部分地基于所確定的兩個(gè)或更多個(gè)剪刀平面設(shè)置所述兩個(gè)或更多個(gè)剪刀平面寄存器;以及 把圖像數(shù)據(jù)渲染到所述渲染緩沖器,其中圖像數(shù)據(jù)的所述渲染至少部分地基于所述兩個(gè)或更多個(gè)剪刀平面寄存器。
23.如權(quán)利要求22所述的所述系統(tǒng),其特征在于,所述把圖像數(shù)據(jù)渲染到所述渲染緩沖器包括僅渲染對(duì)應(yīng)于所述兩個(gè)或更多個(gè)剪刀平面的圖像數(shù)據(jù)。
24.如權(quán)利要求22所述的所述系統(tǒng),其特征在于,所述兩個(gè)或更多個(gè)剪刀平面寄存器包括八個(gè)或更多個(gè)平面寄存器。
25.如權(quán)利要求22所述的所述系統(tǒng),其特征在于,所述兩個(gè)或更多個(gè)剪刀平面寄存器包括十六個(gè)或更多個(gè)平面寄存器。
26.如權(quán)利要求22所述的所述系統(tǒng),其特征在于,所述圖形處理單元還被配置為: 接收來(lái)自所述3 D應(yīng)用的渲染請(qǐng)求;以及 從所述窗口管理器請(qǐng)求所述可視矩形數(shù)據(jù)。
27.如權(quán)利要求22所述的所述系統(tǒng),其特征在于,所述圖形處理單元還被配置為: 從所述窗口管理器接收當(dāng)前可視矩形數(shù)據(jù);以及 確定相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)是否已被改變。
28.如權(quán)利要求22所述的所述系統(tǒng),其特征在于,所述圖形處理單元還被配置為: 從所述窗口管理器接收當(dāng)前可視矩形數(shù)據(jù); 確定相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)是否已被改變;以及 響應(yīng)于相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)未被改變的確定,把所述圖像數(shù)據(jù)從所述渲染緩沖器傳遞到幀緩沖器;以及 響應(yīng)于相比于所述可視矩形數(shù)據(jù)所述當(dāng)前可視矩形數(shù)據(jù)已被改變的確定,重復(fù)對(duì)所述兩個(gè)或更多個(gè)剪刀平面的確定、設(shè)置所述兩個(gè)或更多個(gè)剪刀平面寄存器、把圖像數(shù)據(jù)渲染到所述渲染緩沖器。
【文檔編號(hào)】G06T15/00GK104011774SQ201180075917
【公開(kāi)日】2014年8月27日 申請(qǐng)日期:2011年12月26日 優(yōu)先權(quán)日:2011年12月26日
【發(fā)明者】X·J·徐, L·S·龔 申請(qǐng)人:英特爾公司