用于將經(jīng)修改的覆蓋數(shù)據(jù)輸入像素著色器的系統(tǒng)和方法
【專利摘要】提供用于將經(jīng)修改的覆蓋數(shù)據(jù)輸入像素著色器的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品。在使用中,將由深度/模板測試所修改的覆蓋數(shù)據(jù)輸入像素著色器。此外,利用經(jīng)修改的覆蓋數(shù)據(jù)在像素著色器處實(shí)施一個(gè)或多個(gè)動(dòng)作。
【專利說明】用于將經(jīng)修改的覆蓋數(shù)據(jù)輸入像素著色器的系統(tǒng)和方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)圖形,并且更具體地涉及實(shí)施圖形渲染。
【背景技術(shù)】
[0002]像素著色器通常在圖形渲染期間使用。例如,像素著色器可以在渲染過程期間在逐像素的基礎(chǔ)上計(jì)算效果。在另一個(gè)示例中,可以在像素內(nèi)的多個(gè)位置(例如子樣本等)處計(jì)算覆蓋,其中這類位置可以之后被轉(zhuǎn)發(fā)到Z/模板(Z/Stencil)測試以確定將寫哪些樣本。此外,之后可以將覆蓋發(fā)送到一個(gè)或多個(gè)像素著色器。然而,當(dāng)前用于將數(shù)據(jù)傳達(dá)到像素著色器的技術(shù)一直與各種限制相關(guān)聯(lián)。
[0003]例如,當(dāng)前的像素著色器不直接接收深度/模板測試信息。結(jié)果,由像素著色器所實(shí)施的某些圖形處理任務(wù)可能不被優(yōu)化。因此存在對于解決與現(xiàn)有技術(shù)相關(guān)聯(lián)的這些和/或其他問題的需要。
【發(fā)明內(nèi)容】
[0004]提供用于將經(jīng)修改的覆蓋數(shù)據(jù)輸入像素著色器的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品。在使用中,將由深度/模板測試所修改的覆蓋數(shù)據(jù)輸入像素著色器。此外,利用經(jīng)修改的覆蓋數(shù)據(jù)在像素著色器處實(shí)施一個(gè)或多個(gè)動(dòng)作。
【專利附圖】
【附圖說明】
[0005]圖1示出了根據(jù)一個(gè)實(shí)施例的、用于將經(jīng)修改的覆蓋數(shù)據(jù)輸入像素著色器的方法。
[0006]圖2示出了根據(jù)另一個(gè)實(shí)施例的示例性渲染管線。
[0007]圖3示出了在其中可以實(shí)現(xiàn)各種先前實(shí)施例的各種架構(gòu)和/或功能性的示例性系統(tǒng)。
【具體實(shí)施方式】
[0008]圖1示出根據(jù)一個(gè)實(shí)施例的、用于將經(jīng)修改的覆蓋數(shù)據(jù)輸入像素著色器的方法100。如在操作102中所示的,將由深度/模板測試所修改的覆蓋數(shù)據(jù)輸入像素著色器。在一個(gè)實(shí)施例中,可以由深度/模板測試對未經(jīng)修改的覆蓋數(shù)據(jù)進(jìn)行修改以創(chuàng)建由深度/模板測試所修改的覆蓋數(shù)據(jù)。在另一個(gè)實(shí)施例中,未經(jīng)修改的覆蓋數(shù)據(jù)可以代表光柵覆蓋數(shù)據(jù)。例如,未經(jīng)修改的覆蓋數(shù)據(jù)可以包括關(guān)于在經(jīng)多重采樣的圖案內(nèi)的哪些子樣本由所生成的基元所覆蓋的指示。在又一個(gè)實(shí)施例中,未經(jīng)修改的覆蓋數(shù)據(jù)可以與將被顯示的一個(gè)或多個(gè)像素相關(guān)聯(lián)。
[0009]此外,在一個(gè)實(shí)施例中,未經(jīng)修改的覆蓋數(shù)據(jù)可以利用覆蓋位掩碼來代表。例如,位掩碼可以指示在經(jīng)多重采樣的圖案內(nèi)的哪些子樣本由輸入基元所覆蓋。例如,由基元所覆蓋的樣本可以在位掩碼中利用I加以注釋,而未被基元所覆蓋的樣本可以在位掩碼中利用O加以注釋。在另一個(gè)實(shí)施例中,可以在由深度/模板測試修改覆蓋數(shù)據(jù)之前由光柵化器創(chuàng)建未經(jīng)修改的覆蓋數(shù)據(jù)。例如,光柵化器可以接收輸入幾何體并且可以在這類幾何體上實(shí)施光柵化以創(chuàng)建覆蓋數(shù)據(jù)。在另一個(gè)示例中,光柵化器可以包括在光柵化模塊內(nèi)。
[0010]進(jìn)一步地,在一個(gè)實(shí)施例中,可以將未經(jīng)修改的覆蓋數(shù)據(jù)從光柵化器輸入深度/模板測試(例如Z/模板測試等)。例如,光柵化器可以將未經(jīng)修改的覆蓋數(shù)據(jù)提供到深度/模板測試模塊。在另一個(gè)實(shí)施例中,深度/模板測試可以包括對未經(jīng)修改的覆蓋數(shù)據(jù)實(shí)施的深度測試和模板測試二者。例如,深度/模板測試可以包括可將用于與經(jīng)光柵化的輸入幾何體相關(guān)聯(lián)的像素的深度值和深度緩沖區(qū)中的深度值作比較的深度測試。在又一個(gè)實(shí)施例中,深度/模板測試可以包括可將深度緩沖區(qū)中的深度值與指定的最小和最大深度值作比較的深度測試。
[0011]還進(jìn)一步地,在另一個(gè)示例中,深度/模板測試可以包括可將與經(jīng)光柵化的輸入幾何體相關(guān)聯(lián)的參考值與模板緩沖區(qū)中的值作比較的模板測試。在另一個(gè)實(shí)施例中,可以基于深度/模板測試對未經(jīng)修改的覆蓋數(shù)據(jù)進(jìn)行修改。例如,未經(jīng)修改的覆蓋數(shù)據(jù)可以包括覆蓋位掩碼,并且覆蓋位掩碼中的一個(gè)或多個(gè)位可以作為深度/模板測試的結(jié)果而被更改。在另一個(gè)示例中,深度/模板測試可以通過關(guān)閉覆蓋位掩碼內(nèi)用于在經(jīng)多重采樣的圖案內(nèi)的、使深度/模板測試失敗的子樣本的位來修改覆蓋位掩碼。
[0012]另外,在一個(gè)實(shí)施例中,可以在管線內(nèi)由深度/模板測試對未經(jīng)修改的覆蓋數(shù)據(jù)進(jìn)行修改。在另一個(gè)實(shí)施例中,可以利用多路復(fù)用器將經(jīng)修改的覆蓋數(shù)據(jù)輸入像素著色器,其中多路復(fù)用器可以用來在經(jīng)修改的覆蓋數(shù)據(jù)和未經(jīng)修改的覆蓋數(shù)據(jù)之間進(jìn)行選擇。在又一個(gè)實(shí)施例中,像素著色器可以包括像素著色器模塊。
[0013]另外,如在操作104中所示的,利用經(jīng)修改的覆蓋數(shù)據(jù)在像素著色器處實(shí)施一個(gè)或多個(gè)動(dòng)作。在一個(gè)實(shí)施例中,像素著色器可以在像素內(nèi)的多個(gè)位置處實(shí)施著色操作。在另一個(gè)實(shí)施例中,像素著色器可以在由經(jīng)修改的覆蓋數(shù)據(jù)所指定的位置處實(shí)施著色操作。例如,像素著色器可以在經(jīng)多重采樣的圖案內(nèi)尚未使深度/模板測試失敗的位置(例如,未被確定由深度/模板測試遮掩/覆蓋的位置等)處實(shí)施著色運(yùn)算。
[0014]此外,在一個(gè)實(shí)施例中,像素著色器可以將經(jīng)修改的覆蓋數(shù)據(jù)存儲到存儲器。例如,像素著色器可以將經(jīng)修改的覆蓋數(shù)據(jù)寫到存儲器用于稍后通過一個(gè)或多個(gè)進(jìn)程(例如,順序無關(guān)透明度(OIT)處理、混合渲染、反鋸齒等)進(jìn)行處理。在另一個(gè)實(shí)施例中,像素著色器可以接收由深度/模板測試所修改的覆蓋數(shù)據(jù)以及未經(jīng)修改的覆蓋數(shù)據(jù)二者。在又一個(gè)實(shí)施例中,像素著色器可以在已被接收的未經(jīng)修改的覆蓋數(shù)據(jù)和經(jīng)修改的覆蓋數(shù)據(jù)之間進(jìn)行選擇。
[0015]以此方式,可以將已經(jīng)由深度/模板測試所修改的覆蓋數(shù)據(jù)讀入像素著色器,并且像素著色器可以之后具有基于經(jīng)修改的覆蓋來改變其行為的機(jī)會。此外,覆蓋數(shù)據(jù)可以指示在經(jīng)多重采樣的圖案內(nèi)的哪些子樣本對于顯示器的每個(gè)像素是不可見的,并且該信息可以用來為每個(gè)像素計(jì)算特有屬性,同時(shí)以更高效和直接的方式來解釋在重疊幾何體之間的遮蔽而非必須求助于附加的渲染通道。
[0016]現(xiàn)在將關(guān)于各可選架構(gòu)和特征來闡述更多示例性的信息,根據(jù)用戶的期望可以采用所述架構(gòu)和特征來實(shí)現(xiàn)或不實(shí)現(xiàn)前述的框架。應(yīng)該強(qiáng)烈注意下面的信息出于示例性的目的而闡述并且其不應(yīng)該被認(rèn)為是以任何方式進(jìn)行限制。下面特征中的任何一個(gè)可以可選地合并,排斥或無需排斥所述的其他特征。
[0017]圖2示出根據(jù)另一個(gè)實(shí)施例的示例性渲染管線200。作為選項(xiàng),渲染管線200可以在圖1的功能性的上下文中實(shí)行。然而當(dāng)然,渲染管線200可以在任何期望的環(huán)境中實(shí)現(xiàn)。還應(yīng)該注意前述定義可以在本描述期間應(yīng)用。
[0018]如所示的,渲染管線200包括接收輸入幾何體204并且輸出二維(2D)光柵覆蓋數(shù)據(jù)206的光柵化模塊202。在一個(gè)實(shí)施例中,輸入幾何體204可以包括一個(gè)或多個(gè)形狀。例如,輸入幾何體204可以包括以矢量圖形格式所描述的圖像或圖像的一部分。在另一個(gè)實(shí)施例中,渲染管線200可以包括Z前(early-Z)管線(例如,以Z前模式運(yùn)行的管線,其中在二維(2D)光柵覆蓋數(shù)據(jù)206被發(fā)送到像素著色器模塊210之前,由深度/模板測試模塊208對這類二維(2D)光柵覆蓋數(shù)據(jù)206實(shí)施深度/模板測試)。
[0019]此外,在一個(gè)實(shí)施例中,光柵化模塊202可以利用輸入幾何體204實(shí)施一個(gè)或多個(gè)光柵化操作。在一個(gè)實(shí)施例中,光柵化模塊202可以將輸入幾何體204轉(zhuǎn)化為光柵圖像(例如一個(gè)或多個(gè)像素等)用于輸出在顯示器上。在另一個(gè)實(shí)施例中,光柵化模塊202可以確定與輸入幾何體相關(guān)聯(lián)的片段覆蓋。例如,光柵化模塊202可以通過確定在光柵圖像的經(jīng)多重采樣的圖案內(nèi)的哪些子樣本由所生成的基元所覆蓋來實(shí)施經(jīng)多重采樣的光柵化。在另一個(gè)示例中,二維(2D)光柵覆蓋數(shù)據(jù)206可以包括對由光柵化模塊所確定的、將由輸入基元覆蓋的子樣本的指示。
[0020]進(jìn)一步地,在一個(gè)實(shí)施例中,二維(2D)光柵覆蓋數(shù)據(jù)206可以包括位掩碼。例如,二維(2D)光柵覆蓋數(shù)據(jù)206可以包括指示在光柵圖像的經(jīng)多重采樣的圖案內(nèi)的哪些子樣本(例如樣本位置、像素等)由輸入基元覆蓋的位的序列。
[0021]還進(jìn)一步地,將二維(2D)光柵覆蓋數(shù)據(jù)206發(fā)送到深度/模板測試模塊208和像素著色器模塊210 二者。響應(yīng)于接收二維(2D)光柵覆蓋數(shù)據(jù)206,深度/模板測試模塊208確定并且輸出減少的Z后(post-Z)光柵覆蓋數(shù)據(jù)212。在一個(gè)實(shí)施例中,深度/模板測試模塊208可以分析二維(2D)光柵覆蓋數(shù)據(jù)206并且可以關(guān)閉用于在二維(2D)光柵覆蓋數(shù)據(jù)206內(nèi)的、使深度/模板測試失敗的子樣本的覆蓋。
[0022]例如,深度/模板測試模塊208可以實(shí)施深度測試,所述深度測試可將用于與二維(2D)光柵覆蓋數(shù)據(jù)206相關(guān)聯(lián)的像素的深度值與存儲在深度緩沖區(qū)中的深度值作比較。在另一個(gè)示例中,深度/模板測試模塊208可以實(shí)施模板測試,所述模板測試可將與二維(2D)光柵覆蓋數(shù)據(jù)206相關(guān)聯(lián)的參考值與模板緩沖區(qū)中的值作比較。
[0023]另外,在一個(gè)實(shí)施例中,減少的Z后光柵覆蓋數(shù)據(jù)212可以包括被輸入到了深度/模板測試模塊208的二維(2D)光柵覆蓋數(shù)據(jù)206的經(jīng)修改版本。例如,可以基于由深度/模板測試模塊208所實(shí)施的深度/模板測試來對二維(2D)光柵覆蓋數(shù)據(jù)206進(jìn)行修改,使得二維(2D)光柵覆蓋數(shù)據(jù)206中的一個(gè)或多個(gè)位可以作為深度/模板測試的結(jié)果而被更改。
[0024]在另一個(gè)實(shí)施例中,深度/模板測試可以通過關(guān)閉二維(2D)光柵覆蓋數(shù)據(jù)206內(nèi)用于在二維(2D )光柵覆蓋數(shù)據(jù)206內(nèi)的、使深度/模板測試失敗的子樣本的覆蓋來修改二維(2D)光柵覆蓋數(shù)據(jù)206以創(chuàng)建減少的Z后光柵覆蓋數(shù)據(jù)212。以此方式,深度/模板測試模塊208可以消除在二維(2D)光柵覆蓋數(shù)據(jù)206內(nèi)的一個(gè)或多個(gè)樣本位置以創(chuàng)建減少的Z后光柵覆蓋數(shù)據(jù)212。[0025]另外,將減少的Z后光柵覆蓋數(shù)據(jù)212發(fā)送到像素著色器模塊210和顏色操作模塊214。在一個(gè)實(shí)施例中,像素著色器模塊210可以選擇從光柵化模塊202所輸入的二維(2D)光柵覆蓋數(shù)據(jù)206或從深度/模板測試模塊208所發(fā)送的減少的Z后光柵覆蓋數(shù)據(jù)212用于在著色期間使用。
[0026]例如,像素著色器模塊210可以利用位于像素著色器模塊210的輸入處的多路復(fù)用器來選擇二維(2D)光柵覆蓋數(shù)據(jù)206或減少的Z后光柵覆蓋數(shù)據(jù)212。在另一個(gè)實(shí)施例中,像素著色器模塊210可以選擇二維(2D)光柵覆蓋數(shù)據(jù)206和減少的Z后光柵覆蓋數(shù)據(jù)212 二者用于在著色期間使用。在另一個(gè)實(shí)施例中,可僅將減少的Z后光柵覆蓋數(shù)據(jù)212發(fā)送到像素著色器模塊210。例如,二維(2D)光柵覆蓋數(shù)據(jù)206可能不被發(fā)送到像素著色器模塊210,使得像素著色器模塊210可以默認(rèn)選擇減少的Z后光柵覆蓋數(shù)據(jù)212。
[0027]此外,在一個(gè)實(shí)施例中,像素著色器模塊210可以利用從深度/模板測試模塊208所發(fā)送的減少的Z后光柵覆蓋數(shù)據(jù)212來實(shí)施一個(gè)或多個(gè)動(dòng)作。例如,像素著色器模塊210可以在由減少的Z后光柵覆蓋數(shù)據(jù)212所指示的樣本位置處對顏色運(yùn)算216和其他屬性進(jìn)行計(jì)算。以此方式,像素著色器模塊210可以知道哪些樣本位置將被寫到幀緩沖區(qū),并且像素著色器模塊210對已經(jīng)被遮掩的樣本位置可不實(shí)施運(yùn)算。
[0028]在另一個(gè)實(shí)施例中,像素著色器模塊210可以將減少的Z后光柵覆蓋數(shù)據(jù)212存儲在存儲器中用于稍后由運(yùn)行一個(gè)或多個(gè)算法的一個(gè)或多個(gè)進(jìn)程進(jìn)行訪問。例如,減少的Z后光柵覆蓋數(shù)據(jù)212可以存儲在存儲器中并且可以被訪問用于順序無關(guān)透明度(OIT)處理,其中這類OIT處理可以在需要多重采樣的OIT處理的合成(例如片段融合等)步驟中使用減少的Z后光柵覆蓋數(shù)據(jù)212,其可以使能更高效的合成。在另一個(gè)示例中,減少的Z后光柵覆蓋數(shù)據(jù)212可以存儲在存儲器中并且可以用作輸入用于實(shí)施混合渲染或反鋸齒。
[0029]以此方式,可以將Z后覆蓋數(shù)據(jù)提供到像素著色器模塊210,使得像素著色器模塊210可以知道在覆蓋數(shù)據(jù)內(nèi)的哪些樣本使深度/模板測試模塊208的Z/模板測試失敗。這可以使能更高效的處理并且可以減少在經(jīng)多重采樣的延期著色、順序無關(guān)透明度和混合渲染場景(例如將光柵化的圖形與逐樣本處理結(jié)合等)中的若干渲染通道。
[0030]圖3示出了在其中可以實(shí)現(xiàn)各種先前實(shí)施例的各種架構(gòu)和/或功能性的示例性系統(tǒng)300。如所示的,提供系統(tǒng)300,包括至少一個(gè)主機(jī)處理器301,其連接到通信總線302。系統(tǒng)300還包括主存儲器304。控制邏輯(軟件)和數(shù)據(jù)存儲在主存儲器304中,主存儲器304可以采取隨機(jī)存取存儲器(RAM)的形式。
[0031]系統(tǒng)300還包括圖形處理器306和顯示器308,即計(jì)算機(jī)監(jiān)視器。在一個(gè)實(shí)施例中,圖形處理器306可以包括多個(gè)著色器模塊、光柵化模塊等。前述模塊中的每一個(gè)甚至可以布置于單個(gè)半導(dǎo)體平臺上以形成圖形處理單元(GPU)。
[0032]在本描述中,單個(gè)半導(dǎo)體平臺可以指單獨(dú)一個(gè)的基于半導(dǎo)體的集成電路或芯片。應(yīng)該注意術(shù)語單個(gè)半導(dǎo)體平臺還可以指具有增強(qiáng)連通性的多芯片模塊,其仿真片上操作,并且通過利用常規(guī)的中央處理單元(CPU)和總線實(shí)現(xiàn)方案來做出實(shí)質(zhì)的改進(jìn)。當(dāng)然,各模塊還可以根據(jù)用戶的期望分開地或以半導(dǎo)體平臺的各種組合來布置。
[0033]系統(tǒng)300還可以包括二級存儲310。二級存儲310包括例如硬盤驅(qū)動(dòng)器和/或代表軟盤驅(qū)動(dòng)器、磁帶驅(qū)動(dòng)器、壓縮光盤驅(qū)動(dòng)器等的可移動(dòng)存儲驅(qū)動(dòng)器??梢苿?dòng)存儲驅(qū)動(dòng)器以眾所周知的方式讀取自和/或?qū)懭氲娇梢苿?dòng)存儲單元。[0034]計(jì)算機(jī)程序或計(jì)算機(jī)控制邏輯算法可以存儲在主存儲器304和/或二級存儲310中。這類計(jì)算機(jī)程序當(dāng)執(zhí)行時(shí)使得系統(tǒng)300能夠?qū)嵤└鞣N功能。存儲器304、存儲310和/或任何其他存儲是計(jì)算機(jī)可讀介質(zhì)的可能示例。
[0035]在一個(gè)實(shí)施例中,各先前圖片的架構(gòu)和/或功能性可以在主機(jī)處理器301、圖形處理器306、能夠具有主機(jī)處理器301和圖形處理器306 二者的至少部分能力的集成電路(未示出)、芯片集(即設(shè)計(jì)為作為用于實(shí)施相關(guān)功能的單元來工作和出售的集成電路組等)、和/或用于該問題的任何其他集成電路的上下文中實(shí)現(xiàn)。
[0036]此外,各先前圖片的架構(gòu)和/或功能性可以在通用計(jì)算機(jī)系統(tǒng)、電路板系統(tǒng)、專用于娛樂目的的游戲控制臺系統(tǒng)、特定于應(yīng)用的系統(tǒng)、和/或任何其他期望系統(tǒng)的上下文中實(shí)現(xiàn)。例如,系統(tǒng)300可以采取臺式計(jì)算機(jī)、膝上型計(jì)算機(jī)和/或任何其他類型的邏輯的形式。此外,系統(tǒng)300可以采取各種其他設(shè)備的形式,包括但不限于個(gè)人數(shù)字助理(PDA)設(shè)備、移動(dòng)電話設(shè)備、電視機(jī)等。
[0037]進(jìn)一步地,雖然未示出,但是系統(tǒng)300可以耦連到網(wǎng)絡(luò)(例如電信網(wǎng)絡(luò)、局域網(wǎng)(LAN)、無線網(wǎng)絡(luò)、諸如因特網(wǎng)的廣域網(wǎng)(WAN)、點(diǎn)對點(diǎn)網(wǎng)絡(luò)、電纜網(wǎng)絡(luò)等)用于通信目的。
[0038]雖然以上已經(jīng)描述了各實(shí)施例,但是應(yīng)該理解它們通過僅示例而非限制的方式加以呈現(xiàn)。因此,優(yōu)選實(shí)施例的寬度和范圍不應(yīng)該被上述示例性實(shí)施例中的任何一個(gè)所限制,而應(yīng)該僅根據(jù)下面的權(quán)利要求及其等同物所定義。
【權(quán)利要求】
1.一種方法,包括: 將由深度/模板測試所修改的覆蓋數(shù)據(jù)輸入像素著色器;以及 利用經(jīng)修改的覆蓋數(shù)據(jù)在所述像素著色器處實(shí)施一個(gè)或多個(gè)動(dòng)作。
2.如權(quán)利要求1所述的方法,其中未經(jīng)修改的覆蓋數(shù)據(jù)由所述深度/模板測試所修改以創(chuàng)建由深度/模板測試所修改的所述覆蓋數(shù)據(jù)。
3.如權(quán)利要求2所述的方法,其中所述未經(jīng)修改的覆蓋數(shù)據(jù)包括光柵覆蓋數(shù)據(jù)。
4.如權(quán)利要求2所述的方法,其中所述未經(jīng)修改的覆蓋數(shù)據(jù)包括關(guān)于在經(jīng)多重采樣的圖案內(nèi)的哪些子樣本由所生成的基元所覆蓋的指示。
5.如權(quán)利要求2所述的方法,其中所述未經(jīng)修改的覆蓋數(shù)據(jù)包括覆蓋位掩碼。
6.如權(quán)利要求2所述的方法,其中所述未經(jīng)修改的覆蓋數(shù)據(jù)包括指示在經(jīng)多重采樣的圖案內(nèi)的哪些子樣本由輸入基元所覆蓋的位掩碼。
7.如權(quán)利要求2所述的方法,其中所述未經(jīng)修改的覆蓋數(shù)據(jù)在由所述深度/模板測試修改所述覆蓋數(shù)據(jù)之前由光柵化器所創(chuàng)建。
8.如權(quán)利要求7所述的方法,其中所述光柵化器將所述未經(jīng)修改的覆蓋數(shù)據(jù)提供到所述深度/模板測試模塊。
9.如權(quán)利要求5所述的方法,其中所述深度/模板測試通過關(guān)閉所述覆蓋位掩碼內(nèi)用于在經(jīng)多重采樣的圖案內(nèi)的、使所述深度/模板測試失敗的子樣本的覆蓋來修改所述覆蓋位掩碼。
10.如權(quán)利要求2所述的方法,其中所述未經(jīng)修改的覆蓋數(shù)據(jù)在以Z前(深度)模式運(yùn)行的管線內(nèi)由所述深度/模板測試所修改,其中在所述覆蓋數(shù)據(jù)被發(fā)送到像素著色器之前對這類覆蓋數(shù)據(jù)實(shí)施所述深度/模板測試。
11.如權(quán)利要求1所述的方法,其中利用多路復(fù)用器將所述經(jīng)修改的覆蓋數(shù)據(jù)輸入所述像素著色器。
12.如權(quán)利要求1所述的方法,其中所述像素著色器根據(jù)所述經(jīng)修改的覆蓋數(shù)據(jù)對經(jīng)多重采樣的圖案實(shí)施著色操作。
13.如權(quán)利要求1所述的方法,其中所述像素著色器在經(jīng)多重采樣的圖案內(nèi)尚未使所述深度/模板測試失敗的位置處實(shí)施著色運(yùn)算。
14.如權(quán)利要求1所述的方法,其中所述像素著色器將所述經(jīng)修改的覆蓋數(shù)據(jù)存儲到存儲器。
15.如權(quán)利要求1所述的方法,其中所述像素著色器將所述經(jīng)修改的覆蓋數(shù)據(jù)寫到存儲器用于稍后的順序無關(guān)透明度(OIT)處理。
16.如權(quán)利要求2所述的方法,其中所述像素著色器接收由所述深度/模板測試所修改的所述覆蓋數(shù)據(jù)以及所述未經(jīng)修改的覆蓋數(shù)據(jù)二者。
17.如權(quán)利要求16所述的方法,其中所述像素著色器在已被接收的所述未經(jīng)修改的覆蓋數(shù)據(jù)和所述經(jīng)修改的覆蓋數(shù)據(jù)之間進(jìn)行選擇。
18.一種具體化在計(jì)算機(jī)可讀介質(zhì)上的計(jì)算機(jī)程序產(chǎn)品,包括: 用于將由深度/模板測試所修改的覆蓋數(shù)據(jù)輸入像素著色器的代碼;以及 用于利用經(jīng)修改的覆蓋數(shù)據(jù)在所述像素著色器處實(shí)施一個(gè)或多個(gè)動(dòng)作的代碼。
19.一種系統(tǒng),包括:處理器,用于將由深度/模板測試所修改的覆蓋數(shù)據(jù)輸入像素著色器,以及利用經(jīng)修改的覆蓋數(shù)據(jù)在所述像素著色器處實(shí)施一個(gè)或多個(gè)動(dòng)作。
20.如權(quán)利要求19所 述的系統(tǒng),其中所述處理器經(jīng)由總線耦連到存儲器。
【文檔編號】G06T7/40GK103810728SQ201310485125
【公開日】2014年5月21日 申請日期:2013年10月16日 優(yōu)先權(quán)日:2012年11月1日
【發(fā)明者】尤里·烏拉爾斯基, 亨利·帕爾德·莫爾頓 申請人:輝達(dá)公司