亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

單通道邊框計(jì)算的制作方法

文檔序號(hào):6348251閱讀:160來源:國(guó)知局
專利名稱:?jiǎn)瓮ǖ肋吙蛴?jì)算的制作方法
單通道邊框計(jì)算背景在3維渲染中,組成多邊形模型的幾何圖元(例如三角形)可以被投影到2維表面上(例如顯示屏區(qū)域)。投影的幾何圖元可以被柵格化和渲染為完成的圖像。屏幕擴(kuò)展報(bào)告(SER)是使用投影三角形的2維坐標(biāo)以為這些三角形的渲染區(qū)域計(jì)算2維邊框的圖形功能。計(jì)算得到的三角形的邊框可以進(jìn)一步用于三角形碰撞檢測(cè)、三角形遮擋檢測(cè)、以及去除冗余的三角形渲染。SER圖形功能可以由專門的圖形處理單元(GPU)實(shí)現(xiàn),該專門的圖形處理單元包括諸如各游戲系統(tǒng)中包括的GPU等的專用SER硬件。盡管一般地使用GPU上的專用SER硬件來實(shí)現(xiàn)SER,但是也可能通過在圖形渲染期間執(zhí)行多個(gè)處理通道或者將計(jì)算轉(zhuǎn)移到中央處理單元(CPU),來在沒有專用SER硬件的情況下實(shí)現(xiàn)SER功能。例如,在一些多通道基于區(qū)塊(tile-based)的渲染過程中,2維渲染目標(biāo)(例如顯示屏區(qū)域)可以首先被再劃分為一組矩形區(qū)塊。在矩形上的初始處理通道中,GPU可以通過為每個(gè)矩形區(qū)塊中的三角形計(jì)算邊框來執(zhí)行SER功能。在第二處理通道中,GPU可以執(zhí)行基于區(qū)塊的渲染?;趨^(qū)塊的渲染過程可以使用屏幕擴(kuò)展信息,即在初始處理通道期間計(jì)算邊框以確定實(shí)際為每個(gè)矩形區(qū)塊做出貢獻(xiàn)的三角形(例如每個(gè)矩形區(qū)塊表面上可見的三角形)。因此,基于區(qū)塊的渲染可以在過程期間僅渲染有貢獻(xiàn)的三角形,而不是每個(gè)矩形區(qū)塊所包含的所有三角形。概述提供本概述以便用一種簡(jiǎn)單的形式介紹將在以下詳細(xì)描述中進(jìn)一步描述的一些概念。本概述并不旨在確定所要求保護(hù)的主題的關(guān)鍵或必要特征,也不旨在用于限制所要求保護(hù)的主題的范圍。此處描述的是用于實(shí)現(xiàn)使用通用圖形處理單元(GPU)來執(zhí)行2維邊框計(jì)算的單通道圖形渲染過程的實(shí)施例。如此處所使用的,通用GPU指不包括專用屏幕擴(kuò)展報(bào)告(SER) 硬件的GPU。依照各實(shí)施例執(zhí)行的2維邊框計(jì)算等效于由在包括專用SER硬件的GPU上執(zhí)行的SER功能所執(zhí)行的計(jì)算。作為單通道圖形渲染過程一部分的SER等效的2維邊框計(jì)算的實(shí)現(xiàn),相比于獨(dú)立的處理通道,可以通過降低處理開銷來提高處理效率?;蛘哒f,作為單通道圖形渲染過程一部分的SER等效的2維邊框計(jì)算的實(shí)現(xiàn)可以降低或去除在由通用GPU處理圖形期間給中央處理單元(CPU)施加SER計(jì)算的負(fù)擔(dān)的需要。在一個(gè)實(shí)施例中,單通道邊框計(jì)算包括渲染第一目標(biāo)至2維屏幕空間,該第一目標(biāo)包括至少六個(gè)像素。計(jì)算進(jìn)一步包括基于應(yīng)用程序指定的變換來產(chǎn)生一組幾何圖元中變換的頂點(diǎn)。計(jì)算還包括為一組幾何圖元中每個(gè)變換的頂點(diǎn)生成六個(gè)新的點(diǎn)。計(jì)算另外包括通過渲染為每個(gè)像素生成的至少六個(gè)新的點(diǎn)至每個(gè)對(duì)應(yīng)的像素,來產(chǎn)生每個(gè)像素的初始第三坐標(biāo)值。計(jì)算進(jìn)一步包括通過柵格化用每個(gè)對(duì)應(yīng)像素渲染至每個(gè)像素的至少六個(gè)新的點(diǎn),來產(chǎn)生每個(gè)像素的柵格化后(post-rasterization)的值。最后,計(jì)算包括基于產(chǎn)生的第三坐標(biāo)值來為幾何圖元集合計(jì)算邊框信息。
通過結(jié)合附圖時(shí)給出的以下詳細(xì)描述,其它實(shí)施例將變得更加顯而易見。附圖簡(jiǎn)述詳細(xì)描述包括對(duì)附圖的參考。在附圖中,標(biāo)號(hào)最左邊的數(shù)字標(biāo)識(shí)了該標(biāo)號(hào)最先出現(xiàn)的附圖。在不同附圖中使用相同的標(biāo)號(hào)指示相似或相同的項(xiàng)目。

圖1是示出依照各實(shí)施例,用于執(zhí)行使用通用圖形處理單元(GPU)來提供屏幕擴(kuò)展報(bào)告(SER)等效的2維邊框計(jì)算功能的單通道圖形渲染過程的計(jì)算環(huán)境的簡(jiǎn)化框圖。圖2是示出依照各實(shí)施例,包括通用圖形處理單元(GPU)并且提供屏幕擴(kuò)展報(bào)告 (SER)等效的2維邊框計(jì)算功能的一個(gè)示例性計(jì)算機(jī)設(shè)備的選定組件的簡(jiǎn)化框圖。圖3是示出依照各實(shí)施例,用于執(zhí)行使用通用圖形處理單元(GPU)來提供屏幕擴(kuò)展報(bào)告(SER)等效的2維邊框計(jì)算功能的單通道圖形渲染過程的示例性過程的流程圖。圖4示出依照各實(shí)施例,用于實(shí)現(xiàn)用于執(zhí)行使用通用圖形處理單元(GPU)來提供屏幕擴(kuò)展報(bào)告(SER)等效的2維邊框計(jì)算功能的單通道圖形渲染過程的技術(shù)和機(jī)制的典型計(jì)算系統(tǒng)。詳細(xì)描述本公開被定向至使用通用圖形處理單元(GPU)來執(zhí)行屏幕擴(kuò)展報(bào)告(SER)等效的 2維邊框計(jì)算功能的單通道圖形渲染實(shí)現(xiàn)。屏幕擴(kuò)展報(bào)告(SER)是使用投影三角形的2維坐標(biāo)以計(jì)算這些三角形的渲染區(qū)域的2維邊框的圖形功能。計(jì)算得到的三角形的邊框可以進(jìn)一步用于三角形碰撞檢測(cè)、三角形遮擋檢測(cè)、以及去除冗余的三角形渲染。在一些計(jì)算系統(tǒng)中,可以在圖形渲染期間由裝備有專用SER硬件的GPU來執(zhí)行SER功能。在GPU缺少專用SER硬件的其它計(jì)算系統(tǒng)中,每個(gè)計(jì)算系統(tǒng)的GPU可以通過多通道處理來執(zhí)行SER功能(例如在實(shí)際渲染圖形圖像之前處理將要渲染的圖形圖像以得到 SER信息)。在另一個(gè)計(jì)算系統(tǒng)中,每個(gè)計(jì)算系統(tǒng)中SER功能的實(shí)現(xiàn)可以從缺少專用SER硬件的GPU中轉(zhuǎn)移到計(jì)算系統(tǒng)的中央處理單元(CPU)。但是,為了執(zhí)行SER功能的多通道處理和轉(zhuǎn)移到CPU的負(fù)擔(dān)都可以導(dǎo)致另外的處理負(fù)擔(dān)和/或處理低效率。此處的各實(shí)施例允許SER等效的2維邊框計(jì)算功能的實(shí)現(xiàn)作為通用GPU的單通道圖形渲染過程的一部分。如此處所使用,通用GPU指不包括專用SER硬件的GPU。使用GPU 在單通道渲染過程中執(zhí)行SER功能的能力可以降低或消除在由通用GPU圖形處理期間給中央處理單元(CPU)施加SER計(jì)算的負(fù)擔(dān)的需要。此外,可以去除在實(shí)際圖形渲染通道之前由通用GPU執(zhí)行專用SER處理通道的需要。這一處理的去除可以提高處理效率、減少處理時(shí)間和/或在各個(gè)的處理器上的負(fù)擔(dān)。參考圖1-4,以下描述了依照各實(shí)施例使用通用GPU 來執(zhí)行SER功能的單通道圖形渲染實(shí)現(xiàn)的各示例。示例性方案圖1示出依照各實(shí)施例,用于執(zhí)行使用通用圖形處理單元(GPU)來提供替代的屏幕擴(kuò)展報(bào)告(SER)功能的單通道圖形渲染過程的計(jì)算環(huán)境100。計(jì)算環(huán)境100可以包括多個(gè)圖形處理組件,例如但不限于,頂點(diǎn)著色器102、柵格化器104、像素著色器106、幾何著色器108、以及邊框計(jì)算器110。圖形處理組件可以以各種組合來從組成多邊形模型的幾何圖元(例如三角形)中提取出SER信息,并且渲染該幾何圖元為在2維屏幕空間上顯示的完成的圖像。如以下參考圖2進(jìn)一步描述的,圖形處理組件可以采用計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和/或在通用GPU上執(zhí)行的其它數(shù)據(jù)的形式。
6
在至少一個(gè)實(shí)施例中,頂點(diǎn)著色器102可以從軟件應(yīng)用程序處接收一組幾何圖元 (例如三角形112)。例如,但不作為限制,軟件程序可以是需要渲染圖形至顯示器的任何程序、計(jì)算機(jī)可讀指令或者數(shù)據(jù)結(jié)構(gòu)。頂點(diǎn)著色器102可以使用GPU以將3維虛擬空間中每個(gè)幾何圖元112的每個(gè)頂點(diǎn)的3維位置變換為諸如屏幕空間114的屏幕空間的2維坐標(biāo)。 在由頂點(diǎn)著色器102處理之后,柵格化器104可以使用GPU來用像素填充幾何圖元112。隨后,像素著色器106可以使用GPU來為組成幾何圖元112的單獨(dú)像素計(jì)算和提供顏色,以生成渲染目標(biāo),例如圖像116。在一些實(shí)施例中,在由頂點(diǎn)著色器102處理之后,幾何圖元112可以在由柵格化器 104處理之前由幾何著色器108進(jìn)一步處理。在這些實(shí)施例中,幾何著色器108可以從幾何圖元中添加或者刪除頂點(diǎn),以及向幾何圖元提供體積細(xì)節(jié)。如進(jìn)一步所述,邊框計(jì)算器110 可以杠桿調(diào)節(jié)幾何著色器108以方便在圖像渲染期間計(jì)算幾何圖元112的渲染區(qū)域的2維邊框。在各實(shí)施例中,由{TQ,T1, ... Tn }表示的例如三角形112的一組幾何圖元可以包括頂點(diǎn)IVtl, V1, N2,... V3n,V3n+1, V3n+2, },其中每個(gè)V表示3維世界空間中的一個(gè)點(diǎn)的。頂點(diǎn)著色器102和像素著色器106可以使用GPU來執(zhí)行用于渲染這些三角形112為一個(gè)或多個(gè)渲染目標(biāo)的應(yīng)用程序指定的變換和計(jì)算,包括渲染目標(biāo)R0(圖像116)。在各示例中,應(yīng)用程序指定的變換和計(jì)算可以由游戲程序、圖形編輯軟件、視頻編輯軟件等的屏幕動(dòng)畫請(qǐng)求控制。如以下所述,三角形112的屏幕擴(kuò)展信息還可以在各實(shí)施例中在同一渲染通道中計(jì)算。 在同一渲染通道中,邊框計(jì)算器110可以激活頂點(diǎn)著色器102和像素著色器106 使用 GPU 以創(chuàng)建新的渲染目標(biāo) R1,其中 R1 = {(xQ,yQ),(X1J1),(x2,y2),(x3,y3)... (x5,y5)}。 新的渲染目標(biāo)R1以包括其屏幕坐標(biāo)即為2維空間中的坐標(biāo)(XQ,yQ)... (x5,y5)的六個(gè)像素。 渲染目標(biāo)R1可以被初始化為0.0??梢悦靼自谄渌鼘?shí)施例中,邊框計(jì)算器110可以被配置為創(chuàng)建包括多于六個(gè)像素的新的渲染目標(biāo)R115但是,如以下進(jìn)一步所述,由于屏幕擴(kuò)展信息包括六個(gè)不同的邊界值(即xmin,,yfflin, yfflax, zfflin, zmax),其中每個(gè)邊界值可以基于像素計(jì)算,因此邊框計(jì)算器110 —般不使用多于六個(gè)的像素。在初始化之后,邊框計(jì)算器110可以上傳三角形112到GPU中以用于由頂點(diǎn)著色器102渲染。在各實(shí)施例中,頂點(diǎn)著色器102可以在渲染期間為三角形的所有頂點(diǎn)IVc^V1, V2, ...v3n v3n+1 v3n+2}執(zhí)行應(yīng)用程序指定的變換和計(jì)算。在這些實(shí)施例中,應(yīng)用程序指定的變換可以是為渲染目標(biāo)Rtl執(zhí)行的相同的變換和計(jì)算。頂點(diǎn)著色器102的這一渲染可以為諸如屏幕空間102的屏幕空間產(chǎn)生變換的頂點(diǎn)118{V’ 0,r ”r 2,...V’ 3n V’ 3n+1 V’ 3n+2}。 例如,變換的頂點(diǎn)V’ i的屏幕坐標(biāo)可以是(X’ i,y’ i,z’ i),x’i可以是頂點(diǎn)V’ ,的屏幕位置,并且ζ’ i可以是頂點(diǎn)V’ 1在
內(nèi)的深度值。為了繼續(xù)計(jì)算三角形112的屏幕擴(kuò)展,邊框計(jì)算器110可以調(diào)用幾何著色器108 以為每個(gè)變換的三角形頂點(diǎn)118生成六個(gè)新的點(diǎn)。在至少一個(gè)實(shí)施例中,為{V’ μ V’” V’ 2,... V’ 3n V' 3 +1 V' 3n+2}中的每個(gè)變換的頂點(diǎn)V’ i (χ,ρ y’ ρ ζ’ i),幾何著色器108可以生成六個(gè)新的點(diǎn) V,i0 (X。,y。,X,i)、V,n (X1, yi; χ「χ,i)、V,i2 (χ2,y2,y,i)、V,i3 (χ3,y3, y「y,i)、V,i4(x4, Ji, z' i)、V,i5(x5, y5,1.0_z,》。隨后,每個(gè)變換的三角形頂點(diǎn)110的每個(gè)新的點(diǎn)可以被幾何著色器108以一對(duì)一的方式渲染為新的渲染目標(biāo)禮中對(duì)應(yīng)的像素(例如六個(gè)以前生成像素中的一個(gè)像素)。幾何著色器108可以在邊框計(jì)算器110的指導(dǎo)下完成這一操作。如在生成六個(gè)新的點(diǎn)中所使用的,X1和yi可以是大的常數(shù)值。例如,在至少一個(gè)實(shí)施例中,渲染目標(biāo)Rtl的寬度測(cè)量可以當(dāng)作X1的值,而渲染目標(biāo)Rtl的高度測(cè)量可以當(dāng)作yi 的值。每個(gè)渲染的像素的第三坐標(biāo)值(即ζ-值或深度值)可以被存儲(chǔ)在ζ-緩存中。在渲染之后,每個(gè)新的點(diǎn)可以被柵格化器104柵格化為渲染目標(biāo)R1中對(duì)應(yīng)的像素。隨后,邊框計(jì)算器110可以比較每個(gè)像素的當(dāng)前(即柵格化后)第三坐標(biāo)值與渲染目標(biāo)R1沖像素以前的(即柵格化前)第三坐標(biāo)值。在至少一個(gè)實(shí)施例中,邊框計(jì)算器Iio可以訪問ζ-緩存中的每個(gè)像素以前的第三坐標(biāo)值。對(duì)于每個(gè)渲染的像素,如果像素當(dāng)前的第三坐標(biāo)值大于像素以前的第三坐標(biāo)值, 則邊框計(jì)算器110可以存儲(chǔ)像素當(dāng)前的第三坐標(biāo)值到Z-緩存的對(duì)應(yīng)陣列元素中。否則,邊框計(jì)算器110可以忽略像素當(dāng)前的第三坐標(biāo)值,并且保留Z-緩存的對(duì)應(yīng)陣列元素中以前的第三坐標(biāo)值。采用這種方式,通過存儲(chǔ)在ζ-緩存的陣列元素中的最終的第三坐標(biāo)值,如由 r0, ri; r2,r3,r4,r5表示,邊框計(jì)算器110可以為三角形112計(jì)算屏幕擴(kuò)展信息120 :xmin = r0,xmax = Xfi^ymin = r2,ymax = y「r3,^in = r4 以及 ^iax = 1. 0_r5。在各實(shí)施例中,屏幕擴(kuò)展信息120可以用于渲染目標(biāo)Rtl(圖像116)的后續(xù)渲染,和/或渲染目標(biāo)Rtl(圖像116)與另外的圖像(例如用于碰撞檢測(cè)、遮擋檢測(cè)、以及去除冗余渲染)的渲染。因此,通過在渲染幾何圖元112 (例如三角形)為在2維屏幕空間上顯示的完成的圖像期間執(zhí)行屏幕擴(kuò)展計(jì)算,屏幕擴(kuò)展信息120可以在一個(gè)渲染通道中用渲染的圖像(例如渲染目標(biāo)Rtl)生成。可以明白盡管在采用三角形形式的幾何圖元的上下文中描述了提供替代的屏幕擴(kuò)展報(bào)告(SER)功能的單通道圖形渲染過程的實(shí)現(xiàn),但是這一實(shí)現(xiàn)可以使用采用其它多邊形(例如矩形、正方形等)形式的幾何圖元進(jìn)一步實(shí)現(xiàn),只要這些多邊形包括至少三個(gè)頂點(diǎn)。此外,盡管用一組三個(gè)幾何圖元(三角形)在圖3中示出渲染過程的實(shí)現(xiàn),應(yīng)當(dāng)明白提供SER功能的單通道圖形渲染過程的實(shí)際實(shí)現(xiàn)可以在包括任意數(shù)量的幾何圖元的集合上用類似的方式實(shí)現(xiàn)。因此,此處描述的實(shí)施例不旨在作為限制。示例性組件圖2是示出包括通用圖形處理單元(GPU) 204的示例性計(jì)算機(jī)設(shè)備200的選定組件的框圖。圖1的計(jì)算環(huán)境100可以在計(jì)算設(shè)備200上實(shí)現(xiàn)。示例性計(jì)算設(shè)備200可以依照各實(shí)施例,使用通用GPU 204來執(zhí)行提供屏幕擴(kuò)展報(bào)告等效的邊框計(jì)算功能的單通道圖形渲染過程。計(jì)算設(shè)備200可以包括一個(gè)或多個(gè)中央處理單元202和存儲(chǔ)器206。存儲(chǔ)器 206可以包括以用于存儲(chǔ)諸如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)等的信息的任何方法或技術(shù)實(shí)現(xiàn)的易失性和/或非易失性的存儲(chǔ)器、可移動(dòng)和/或不可移動(dòng)的介質(zhì)。這一存儲(chǔ)器可以包括但不限于,隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、閃存或其它存儲(chǔ)器技術(shù)、CD-ROM、數(shù)字多功能盤(DVD)或其它光學(xué)存儲(chǔ)、磁帶盒、磁帶、磁盤存儲(chǔ)或其它磁存儲(chǔ)設(shè)備、RAID存儲(chǔ)系統(tǒng)、或能用于存儲(chǔ)所需信息且能夠由計(jì)算機(jī)系統(tǒng)訪問的任何其它介質(zhì)。圖形處理單元(GPU) 204可以是用于處理在計(jì)算機(jī)設(shè)備200的顯示界面(未示出) 上顯示的2維和/或3維圖形的專用圖形渲染設(shè)備。在各實(shí)施例中,GPU 204可以是包括用于執(zhí)行SER功能的專用硬件的GPU、或者不包括專用SER硬件的通用GPU中的一個(gè)。
存儲(chǔ)器206可以存儲(chǔ)程序指令。程序指令或模塊可以包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件和數(shù)據(jù)結(jié)構(gòu)。選定的程序指令可以包括頂點(diǎn)著色器模塊102、柵格化器104、像素著色器106、幾何著色器模塊108、邊框計(jì)算器110、邊框計(jì)算器應(yīng)用程序接口(API)模塊208、用戶界面模塊210以及數(shù)據(jù)存儲(chǔ)模塊212。依次地,邊框計(jì)算器110可以包括復(fù)制渲染組件214、頂點(diǎn)變換組件216、點(diǎn)生成組件218、點(diǎn)渲染組件 220、比較組件222以及邊框計(jì)算組件224。頂點(diǎn)著色器102可以在GPU 204上執(zhí)行。頂點(diǎn)著色器102可以將3維虛擬空間中幾何圖元的每個(gè)頂點(diǎn)的3維位置變換為屏幕空間的2維坐標(biāo)。柵格化器104可以在GPU 204上執(zhí)行。柵格化器104可以在幾何圖元已經(jīng)由頂點(diǎn)著色器處理過之 后,用像素填充幾何圖元(例如三角形)。像素著色器模塊像素著色器106可以在GPU 204上執(zhí)行。像素著色器可以向組成幾何圖元(例如三角形)的個(gè)別像素計(jì)算和提供顏色,以生成諸如圖像116(圖1)的渲染的圖像。幾何著色器108可以在GPU 204上執(zhí)行。幾何著色器108可以為幾何圖元添加和刪除頂點(diǎn),并且向幾何圖元提供體積的細(xì)節(jié)。邊框計(jì)算器模塊110可以在GPU 204上執(zhí)行。例如,邊框計(jì)算器模塊110的復(fù)制渲染組件214可以命令頂點(diǎn)著色器102渲染諸如目標(biāo)R1的包括至少六個(gè)像素的目標(biāo)。頂點(diǎn)變換組件216可以命令頂點(diǎn)著色器102為幾何圖元的頂點(diǎn)產(chǎn)生諸如變換的頂點(diǎn)118的變換的頂點(diǎn)。點(diǎn)生成組件218可以命令幾何著色器108為諸如變換的頂點(diǎn)118的頂點(diǎn)生成點(diǎn)。點(diǎn)渲染組件220可以命令幾何著色器108用由復(fù)制渲染組件214生成的像素來渲染由點(diǎn)生成組件218生成的點(diǎn)。點(diǎn)渲染組件220還可以將每個(gè)像素的初始(例如柵格化前)第三坐標(biāo)值存儲(chǔ)在存儲(chǔ)器206中,諸如ζ-緩存中。同樣地,點(diǎn)柵格化組件222可以命令幾何著色器 108用由復(fù)制渲染組件214生成的像素來柵格化由點(diǎn)生成組件218生成的點(diǎn)。點(diǎn)柵格化組件222還可以將每個(gè)像素的柵格化后的第三坐標(biāo)值存儲(chǔ)在存儲(chǔ)器206中,諸如ζ-緩存中。邊框計(jì)算器模塊110的比較模塊2M可以比較每個(gè)像素柵格化前的第三坐標(biāo)值與其柵格化后的第三坐標(biāo)值,以確定兩個(gè)值中較大的一個(gè),并且保留或者存儲(chǔ)該值于存儲(chǔ)器 206中,諸如ζ-緩存中。計(jì)算組件2 可以允許通過存儲(chǔ)在存儲(chǔ)器206中的第三坐標(biāo)值來計(jì)算2維邊框信息。邊框計(jì)算器應(yīng)用程序接口(API)模塊208可以被軟件應(yīng)用程序調(diào)用以激活邊框計(jì)算器110。采用這種方式,軟件應(yīng)用程序可以在渲染幾何圖元到2維屏幕空間中的期間,使用邊框計(jì)算器110來實(shí)現(xiàn)SER等效的邊框計(jì)算功能。因此,幾何圖元的渲染區(qū)域的2維邊框計(jì)算可以在通過幾何圖元渲染圖像的相同通道中執(zhí)行。在各實(shí)施例中,邊框計(jì)算器API模塊208可以使得軟件應(yīng)用程序能夠杠桿調(diào)節(jié)邊框計(jì)算器110以執(zhí)行單通道圖像渲染。單通道圖像渲染被配置為使用通用GPU 204來計(jì)算 SER等效的邊框信息。這一單通道圖像渲染和SER信息計(jì)算可以取代多通道處理和/或?qū)?SER計(jì)算轉(zhuǎn)移到CPU 202。在GPU 204包括專用SER硬件的其它實(shí)施例中,邊框計(jì)算器API 模塊208可以使得軟件應(yīng)用程序能夠選擇性地執(zhí)行至少某些SER信息計(jì)算而不使用專用 SER硬件,諸如在硬件故障的情況下。邊框計(jì)算器API模塊208還可以當(dāng)作向軟件應(yīng)用程序提供一組幾何圖元的2維邊框信息的界面。
用戶界面模塊210可以通過用戶界面(未示出)與用戶交互。用戶界面可以包括諸如顯示器等的數(shù)據(jù)輸出設(shè)備,以及一個(gè)或多個(gè)數(shù)據(jù)輸入設(shè)備。數(shù)據(jù)輸入設(shè)備可以包括但不限于,小鍵盤、鍵盤、鼠標(biāo)設(shè)備、觸摸屏、話筒、語音識(shí)別包、以及其它合適設(shè)備或其它電子 /軟件選擇方法的一個(gè)或多個(gè)的組合。用戶界面模塊210可以被配置為使得用戶能夠激活或禁用邊框計(jì)算器110。例如, 用戶界面模塊212可以使得用戶能夠選擇性地禁用邊框計(jì)算器110以便SER計(jì)算由通用 GPU 204或者由CPU 202在多個(gè)通道中執(zhí)行?;蛘?,用戶界面模塊210可以被配置為使顯示器向用戶輸出邊框計(jì)算器110的當(dāng)前狀態(tài)(例如活躍的、被禁用的、錯(cuò)誤等)。數(shù)據(jù)存儲(chǔ)模塊212可以被配置為將數(shù)據(jù)存儲(chǔ)在存儲(chǔ)器206的一部分中(例如數(shù)據(jù)庫(kù))。在各實(shí)施例中,數(shù)據(jù)存儲(chǔ)模塊212可以被配置為存儲(chǔ)在SER等效的邊框計(jì)算期間由邊框計(jì)算器110產(chǎn)生的SER等效的邊框信息,以及由邊框計(jì)算器110產(chǎn)生的任何中間數(shù)據(jù)。數(shù)據(jù)存儲(chǔ)模塊212還可以包括ζ-緩存??梢悦靼爪?緩存一般被配置為存儲(chǔ)生成的像素的深度(第三坐標(biāo)值)。ζ-緩存通常被排列為每個(gè)元素對(duì)應(yīng)一個(gè)像素的2維陣列(例如x-y), 陣列中的每個(gè)元素可以用像素的當(dāng)前第三坐標(biāo)值來連續(xù)地更新。示例件過稈圖3示出依照各實(shí)施例,用于執(zhí)行使用通用圖形處理單元(GPU)來提供屏幕擴(kuò)展報(bào)告(SER)等效的邊框計(jì)算功能的單通道圖形渲染過程的示例性過程300。圖3中的示例性流程300被示出為邏輯流程圖中的方框集合,這表示了能夠用硬件、軟件和兩者組合實(shí)現(xiàn)的一系列操作。在軟件的上下文中,方框表示在由一個(gè)或多個(gè)處理器執(zhí)行時(shí)執(zhí)行所述操作的計(jì)算機(jī)可執(zhí)行指令。一般地,計(jì)算機(jī)可執(zhí)行指令包括執(zhí)行特定功能或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等。所述操作的順序不旨在被解釋為限制,并且可以以任何順序和/或并行地組合任何數(shù)量的所述方框以實(shí)現(xiàn)過程。為了論述的目的,參考圖2的示例性計(jì)算設(shè)備200描述過程,盡管過程可以在其它系統(tǒng)體系結(jié)構(gòu)中實(shí)現(xiàn)。在方框302處,頂點(diǎn)著色器102和像素著色器106可以使用圖形處理單元(GPU)來執(zhí)行用于渲染幾何圖元(例如三角形)為2維屏幕空間中的一個(gè)或多個(gè)渲染目標(biāo)圖像的應(yīng)用程序指定的變換和計(jì)算,所述一個(gè)或多個(gè)渲染目標(biāo)圖像可以包括第一渲染目標(biāo)Rtl(圖1)。在方框304處,邊框計(jì)算器110可以激活頂點(diǎn)著色器102和像素著色器106以使用 GPU來創(chuàng)建包括六個(gè)像素的第二渲染目標(biāo)圖像。第二渲染目標(biāo)圖像可以是渲染目標(biāo)R1 (圖 1)。在各實(shí)施例中,第二渲染目標(biāo)圖像可以包含其屏幕坐標(biāo)即為2維空間中的坐標(biāo)( , Y0)... (x5,y5)的六個(gè)像素。在這些實(shí)施例中,第二渲染目標(biāo)可以被初始化為0.0。在方框306處,邊框計(jì)算器110可以激活頂點(diǎn)著色器102以基于幾何圖元為2維屏幕空間產(chǎn)生變換的頂點(diǎn)。在各實(shí)施例中,頂點(diǎn)著色器102可以通過執(zhí)行與在方框302處執(zhí)行的相同的變換和計(jì)算來產(chǎn)生變換的頂點(diǎn)。在方框308處,邊框計(jì)算器110可以使用幾何著色器108來由每個(gè)幾何圖元(例如三角形)的每個(gè)變換的頂點(diǎn)生成六個(gè)新的點(diǎn)。在方框310處,邊框計(jì)算器110可以使用幾何著色器108來渲染每個(gè)變換的頂點(diǎn)的新的點(diǎn)為第二渲染目標(biāo)圖像中對(duì)應(yīng)的像素(例如六個(gè)以前生成像素中的像素)。在各實(shí)施例中,可以采用一對(duì)一的方式來完成渲染每個(gè)變換的頂點(diǎn)的每個(gè)新的點(diǎn)為對(duì)應(yīng)的像素。 換句話說,如圖1中所示,對(duì)于每個(gè)變換的頂點(diǎn),每個(gè)新的點(diǎn)被渲染為六個(gè)以前生成的像素中的一個(gè)唯一的像素。每個(gè)渲染的像素的第三坐標(biāo)值(即Z-值或深度值)然后可以被存儲(chǔ)在Z-緩存的陣列元素中。在方框312 處,邊框計(jì)算器110可以激活柵格化器104柵格化用每個(gè)像素渲染為每個(gè)像素的新的點(diǎn)(來自所有變換的頂點(diǎn))??梢悦靼讝鸥窕梢栽斐擅總€(gè)像素第三坐標(biāo)值的改變。在方框314處,邊框計(jì)算器110可以將來自方框310處的像素柵格化前的第三坐標(biāo)值以及來自方框312處的像素柵格化后的第三坐標(biāo)值進(jìn)行比較。在判定方框316處,邊框計(jì)算器110可以確定像素柵格化后的第三坐標(biāo)值是否大于柵格化前的第三坐標(biāo)值。如果像素柵格化后的第三坐標(biāo)值大于像素柵格化前的第三坐標(biāo)值,(判定方框316處的“是”),則過程300可以進(jìn)行到方框318處。在方框318處,邊框計(jì)算器110可以將柵格化后的第三坐標(biāo)值存儲(chǔ)到存儲(chǔ)像素柵格化前的第三坐標(biāo)值的ζ-緩存的陣列元素中。換句話說,ζ-緩存中像素柵格化前的第三坐標(biāo)值被像素柵格化后的值所取代。返回至方框316,如果邊框計(jì)算器110確定像素柵格化后的第三坐標(biāo)值不大于像素柵格化前的坐標(biāo)值,(判定方框316處的“否”),則過程300可以進(jìn)行到方框320處。在方框320處,邊框計(jì)算器110可以忽略像素柵格化后的第三坐標(biāo)值,并且保留像素的ζ-緩存陣列元素中柵格化前的第三坐標(biāo)值。在判定方框322處,邊框計(jì)算器110可以確定是否將為一個(gè)或更多另外的像素執(zhí)行柵格化前和柵格化后的第三坐標(biāo)值比較。換句話說,邊框計(jì)算器110可以確定是否已經(jīng)為至少六個(gè)像素中的全部實(shí)現(xiàn)了比較。如果邊框計(jì)算器110確定可以為另外的像素執(zhí)行比較,(判定方框322處的“是”),則過程300可以循環(huán)返回至方框314處。可以重復(fù)循環(huán)直至已經(jīng)為至少的像素中的全部實(shí)現(xiàn)了柵格化前和柵格化后的第三坐標(biāo)值比較為止。然而,如果邊框計(jì)算器110確定已經(jīng)為至少六個(gè)像素中的全部執(zhí)行了柵格化前和柵格化后的第三坐標(biāo)值比較(判定方框322處的“否”),則過程300可以進(jìn)行到方框324 處。在方框324處,邊框計(jì)算器110可以基于存儲(chǔ)在z_緩存中的像素的第三坐標(biāo)值來計(jì)算邊框信息。如上所述,在第三坐標(biāo)值可以由A,ri; r2, r3, r4,1~5表示的實(shí)施例中,邊框計(jì)算器110可以計(jì)算幾何圖元的2維邊框信息為xmin = r0, Xmax = X1T1, ymin = r2, ymax =
Υ _Γ3,Zmin — r4,和 Zmax —丄· 0_Γ5ο在方框326處,可以為使用提供計(jì)算的邊框信息(例如用于碰撞檢測(cè)、遮擋檢測(cè)、 以及去除冗余渲染)。在各實(shí)施例中,計(jì)算的邊框信息可以是顯示的、向應(yīng)用程序提供的、存儲(chǔ)在數(shù)據(jù)存儲(chǔ)中的、或者輸入回用于渲染另外的圖像的頂點(diǎn)著色器102、柵格化器104和/ 或像素著色器106中的至少一個(gè)。可以明白可以在與方框302相同的處理通道中實(shí)現(xiàn)方框304到324。因此,可以降低處理開銷并且提高處理效率。示例性計(jì)算環(huán)境圖4示出用于實(shí)現(xiàn)用于執(zhí)行使用通用圖形處理單元(GPU)來提供屏幕擴(kuò)展報(bào)告 (SER)等效的邊框計(jì)算功能的單通道圖形渲染過程的技術(shù)和機(jī)制的典型計(jì)算系統(tǒng)400。如圖2中所述的示例性計(jì)算設(shè)備200可以包括計(jì)算系統(tǒng)400的一個(gè)或多個(gè)組件。但是,可以容易地明白本技術(shù)和機(jī)制可以用其它計(jì)算設(shè)備、系統(tǒng)和環(huán)境實(shí)現(xiàn)。圖4中所示的計(jì)算系統(tǒng) 400僅是計(jì)算設(shè)備的一個(gè)示例,并且不旨在暗示對(duì)計(jì)算機(jī)和網(wǎng)絡(luò)體系結(jié)構(gòu)的使用或功能的范圍的任何限制。計(jì)算系統(tǒng)400也不應(yīng)被解釋為具有與在示例計(jì)算設(shè)備中所示的組件的任何一個(gè)或組合有關(guān)的任何依賴或需求。 在非常基本的配置中,計(jì)算系統(tǒng)400 —般包括至少一個(gè)處理單元402、圖形處理單元(GPU) 404以及系統(tǒng)存儲(chǔ)器406。取決于計(jì)算設(shè)備的確切配置和類型,系統(tǒng)存儲(chǔ)器406可以是易失性的(諸如RAM)、非易失性的(諸如ROM、閃存等)、或者兩者的某些組合。系統(tǒng)存儲(chǔ)器406 —般包括操作系統(tǒng)408、一個(gè)或多個(gè)程序模塊410、并且可以包括程序數(shù)據(jù)412。 操作系統(tǒng)408包括基于組件的框架414,該基于組件的框架414可以支持組件(包括屬性和事件)、對(duì)象、繼承、多態(tài)、反射,并且提供基于面向?qū)ο蟮慕M件的應(yīng)用程序編程接口(API), 例如但不限于,由華盛頓州雷德蒙德市的微軟公司制作的.NET 框架的API設(shè)備。設(shè)備400 具有由虛線416劃分的非常基本的配置。此外,終端可以有更少的組件,但是將與具有這一基本配置的計(jì)算設(shè)備交互。計(jì)算系統(tǒng)400可以有另外的特征或功能。例如,計(jì)算系統(tǒng)400還可以包括另外的數(shù)據(jù)存儲(chǔ)設(shè)備(可移動(dòng)和/或不可移動(dòng)的),例如磁盤、光盤或磁帶等。這一另外的存儲(chǔ)在圖 4中由可移動(dòng)存儲(chǔ)418和不可移動(dòng)存儲(chǔ)420示出。計(jì)算機(jī)存儲(chǔ)介質(zhì)可以包括以用于存儲(chǔ)例如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)等信息的任何方法或技術(shù)實(shí)現(xiàn)的易失性和非易失性、可移動(dòng)和不可移動(dòng)介質(zhì)。系統(tǒng)存儲(chǔ)器406、可移動(dòng)存儲(chǔ)418和不可移動(dòng)存儲(chǔ) 420都是計(jì)算機(jī)存儲(chǔ)介質(zhì)的示例。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括但不限于,RAM、R0M、EEPR0M、閃存或其它存儲(chǔ)器技術(shù)、CD-ROM、數(shù)字多功能盤(DVD)或其它光學(xué)存儲(chǔ)、磁帶盒、磁帶、磁盤存儲(chǔ)或其它磁存儲(chǔ)設(shè)備、或能用于存儲(chǔ)所需信息且能夠由計(jì)算設(shè)備400訪問的任何其它介質(zhì)。任何這樣的計(jì)算機(jī)存儲(chǔ)介質(zhì)都可以是設(shè)備400的一部分。計(jì)算設(shè)備400還可以具有輸入設(shè)備 422,諸如鍵盤、鼠標(biāo)、筆、語音輸入設(shè)備、觸摸輸入設(shè)備等。還可以包括輸出設(shè)備424,諸如顯示器、揚(yáng)聲器、打印機(jī)等。這些設(shè)備在本領(lǐng)域中公知并且無需在此處詳細(xì)討論。 計(jì)算系統(tǒng)400還可以包含允許該設(shè)備與其它計(jì)算設(shè)備428諸如通過網(wǎng)絡(luò)通信的通信連接426。這些網(wǎng)絡(luò)可以包括有線網(wǎng)絡(luò)和無線網(wǎng)絡(luò)。通信連接426是通信介質(zhì)的若干示例。通信介質(zhì)可以一般地由計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊等包含??梢悦靼姿居?jì)算系統(tǒng)400僅是合適設(shè)備的一個(gè)示例,并且不旨在暗示對(duì)所述各實(shí)施例的使用或功能范圍的任何限制。適合于各實(shí)施例使用的其它公知的計(jì)算設(shè)備、系統(tǒng)、 環(huán)境和/或配置包括但不限于,個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手持式或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機(jī)頂盒、游戲控制臺(tái)、可編程消費(fèi)者電子產(chǎn)品、網(wǎng)絡(luò)計(jì)算機(jī)、 小型計(jì)算機(jī)、大型計(jì)算機(jī)、包括任何以上系統(tǒng)或設(shè)備的分布式計(jì)算環(huán)境等。作為通用GPU上單通道圖形渲染過程一部分的SER等效的邊框計(jì)算的實(shí)現(xiàn),相比于獨(dú)立的處理通道,可以通過降低處理開銷來提高處理效率?;蛘哒f,作為單通道圖形渲染過程一部分的SER等效的邊框計(jì)算的實(shí)現(xiàn)可以降低或去除在由通用GPU處理圖形期間給中央處理單元(CPU)施加SER計(jì)算的負(fù)擔(dān)的需要。因此,依照本公開的各實(shí)施例可以提高通用GPU上圖像處理和渲染的效率。Mrk最后,盡管用結(jié)構(gòu)特征和/或方法動(dòng)作專用的語言描述了各實(shí)施例,但是可以理解,所附權(quán)利要求書中定義的主題不必限于所述具體特征或動(dòng)作。相反,所述具體特征和動(dòng)作是作為實(shí)現(xiàn)所要求保護(hù)的主題的示例形式而公開的。
權(quán)利要求
1.一種系統(tǒng),包括多個(gè)渲染組件,所述多個(gè)渲染組件基于一組幾何圖元(11 來渲染一個(gè)或多個(gè)目標(biāo)至 2維屏幕空間(114),所述多個(gè)渲染組件包括頂點(diǎn)著色器(102)、柵格化器(104)、幾何著色器(108)以及像素著色器(106),所述一個(gè)或多個(gè)目標(biāo)包括第一目標(biāo)(116);復(fù)制渲染組件014),所述復(fù)制渲染組件(214)命令頂點(diǎn)著色器(10 渲染第二目標(biāo)至 2維屏幕空間(114),所述第二目標(biāo)包括至少六個(gè)像素;頂點(diǎn)變換組件016),所述頂點(diǎn)變換組件(216)命令頂點(diǎn)著色器(10 為該組幾何圖元 (112)產(chǎn)生變換的頂點(diǎn)(118)點(diǎn)生成組件018),所述點(diǎn)生成組件(218)命令幾何著色器(108)為每個(gè)變換的頂點(diǎn) (118)生成至少六個(gè)新的點(diǎn);點(diǎn)渲染組件020),所述點(diǎn)渲染組件(220)命令幾何著色器渲染為每個(gè)變換的頂點(diǎn) (118)生成的至少六個(gè)新的點(diǎn)為該至少六個(gè)像素中對(duì)應(yīng)的像素,所述每個(gè)渲染為對(duì)應(yīng)的像素產(chǎn)生對(duì)應(yīng)像素的初始第三坐標(biāo)值;點(diǎn)柵格化組件022),所述點(diǎn)柵格化組件(22 命令柵格化器(104)柵格化用每個(gè)對(duì)應(yīng)像素渲染為每個(gè)對(duì)應(yīng)像素的至少六個(gè)新的點(diǎn),所述每個(gè)柵格化為對(duì)應(yīng)的像素產(chǎn)生對(duì)應(yīng)像素柵格化后的第三坐標(biāo)值;比較組件0 ),所述比較組件(224)存儲(chǔ)每個(gè)像素的初始第三坐標(biāo)值和柵格化后的第三坐標(biāo)值中較大的值;以及計(jì)算組件026),所述計(jì)算組件(226)基于至少六個(gè)像素的存儲(chǔ)的較大值來為該組幾何圖元(112)計(jì)算邊框信息。
2.如權(quán)利要求1所述的系統(tǒng),其特征在于,還包括接口組件以向應(yīng)用程序提供計(jì)算的邊框信息,以用于幾何圖元碰撞檢測(cè)、幾何圖元遮擋檢測(cè)、或者去除冗余渲染中的至少一個(gè)。
3.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述邊框計(jì)算模塊通過將較大的值分別表示為rO, rl,r2,r3,r4,r5,并且計(jì)算邊框信息為Xmin = r0, Xmax = Xfr1, ymin = r2, ymax = yfiv zmin = r4,禾口 ^ax = 1. 0_r5,其中 X1 和 Y1 是常數(shù)值,來為幾何圖元集合計(jì)算邊框信息。
4.如權(quán)利要求3所述的系統(tǒng),其特征在于,所述X1是第一目標(biāo)的寬度測(cè)量,并且所述yi 是第一目標(biāo)的長(zhǎng)度測(cè)量。
5.如權(quán)利要求1所述的系統(tǒng),其特征在于,還包括允許在邊框計(jì)算器中激活或禁用組件之一的應(yīng)用程序編程接口(API),所述邊框計(jì)算器包括復(fù)制渲染組件、頂點(diǎn)變換組件、點(diǎn)渲染組件、點(diǎn)柵格化組件、比較組件、以及邊框計(jì)算組件。
6.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述幾何圖元集合包括多邊形。
7.一種方法,包括渲染第一目標(biāo)至2維屏幕空間(114),所述第一目標(biāo)包括至少六個(gè)像素; 基于應(yīng)用程序指定的變換產(chǎn)生一組幾何圖元(108)中變換的頂點(diǎn)(118); 為該組幾何圖元(108)中每個(gè)變換的頂點(diǎn)生成至少六個(gè)新的點(diǎn); 通過渲染為每個(gè)像素生成的至少六個(gè)新的點(diǎn)為每個(gè)對(duì)應(yīng)的像素來產(chǎn)生每個(gè)對(duì)應(yīng)像素的初始第三坐標(biāo)值;通過柵格化用每個(gè)對(duì)應(yīng)像素渲染為每個(gè)像素的至少六個(gè)新的點(diǎn)來產(chǎn)生每個(gè)像素柵格化后的值;存儲(chǔ)每個(gè)像素的初始第三坐標(biāo)值和柵格化后的第三坐標(biāo)值中較大的值;以及基于至少六個(gè)像素的存儲(chǔ)的較大值來為該組幾何圖元(108)計(jì)算邊框信息。
8.如權(quán)利要求7所述的方法,其特征在于,還包括在渲染第一目標(biāo)之前,基于該組幾何圖元以及應(yīng)用程序指定的變換來渲染一個(gè)或多個(gè)其它目標(biāo)至2維屏幕空間,所述一個(gè)或多個(gè)其它目標(biāo)包括第二目標(biāo),所述渲染一個(gè)或多個(gè)其它目標(biāo)在與計(jì)算邊框信息相同的處理通道中進(jìn)行。
9.如權(quán)利要求7所述的方法,其特征在于,所述為該組幾何圖元計(jì)算邊框信息包括將較大的值分別表示為r0,rl, r2, r3, r4, r5,并且計(jì)算邊框信息為Xmin = r0, Xmax = Xfr1, ymin = r2, ymax = yfiv zmin = r4,禾口 zmax = 1. 0_r5,其中 X1 和 y! 是常數(shù)值。
10.如權(quán)利要求9所述的方法,其特征在于,所述X1是第二目標(biāo)的寬度測(cè)量,并且所述 Y1是第二目標(biāo)的長(zhǎng)度測(cè)量。
11.一種存儲(chǔ)在執(zhí)行時(shí)導(dǎo)致一個(gè)或多個(gè)處理器執(zhí)行動(dòng)作的計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀介質(zhì),所述動(dòng)作包括渲染第一目標(biāo)至2維屏幕空間(114),所述第一目標(biāo)包括至少六個(gè)像素;基于應(yīng)用程序指定的變換產(chǎn)生一組幾何圖元(108)中變換的頂點(diǎn)(118);為該組幾何圖元(108)中每個(gè)變換的頂點(diǎn)生成至少六個(gè)新的點(diǎn);通過渲染為每個(gè)像素生成的至少六個(gè)新的點(diǎn)為每個(gè)對(duì)應(yīng)的像素來產(chǎn)生每個(gè)像素的初始第三坐標(biāo)值;將每個(gè)像素的初始第三坐標(biāo)值存儲(chǔ)在緩存中;通過柵格化用每個(gè)對(duì)應(yīng)像素渲染為每個(gè)像素的至少六個(gè)新的點(diǎn)來產(chǎn)生每個(gè)像素柵格化后的值;如果一個(gè)或多個(gè)像素中每個(gè)像素柵格化后的第三坐標(biāo)值大于其對(duì)應(yīng)的初始第三坐標(biāo)值,則替換存儲(chǔ)在緩存中的一個(gè)或多個(gè)像素的初始第三坐標(biāo)值;以及基于至少六個(gè)像素的存儲(chǔ)在緩存中的第三坐標(biāo)值來為該組幾何圖元(108)計(jì)算邊框 fn息ο
12.如權(quán)利要求11所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述計(jì)算機(jī)可執(zhí)行指令在執(zhí)行時(shí),進(jìn)一步導(dǎo)致一個(gè)或多個(gè)處理器執(zhí)行包括向應(yīng)用程序提供計(jì)算的邊框信息的動(dòng)作。
13.如權(quán)利要求11所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述計(jì)算機(jī)可執(zhí)行指令在執(zhí)行時(shí),進(jìn)一步導(dǎo)致一個(gè)或多個(gè)處理器執(zhí)行包括基于該組幾何圖元以及應(yīng)用程序指定的變換來渲染第二目標(biāo)至2維屏幕空間的動(dòng)作,所述渲染第二目標(biāo)在與計(jì)算邊框信息相同的處理通道中進(jìn)行。
14.如權(quán)利要求11所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述為幾何圖元集合計(jì)算邊框信息包括將較大的值分別表示為r0,rl, r2, r3, r4, r5,并且計(jì)算邊框信息為Xmin = r0, Xmax = Xfr1, ymin = r2, ymax = yfiv zmin = r4,禾口 zmax = 1. 0_r5,其中 X1 和 y! 是常數(shù)值。
15.如權(quán)利要求14所述的計(jì)算機(jī)可讀介質(zhì),其特征在于,所述X1是第二目標(biāo)的寬度測(cè)量,并且所述Y1是第二目標(biāo)的長(zhǎng)度測(cè)量。
全文摘要
公開了用于單通道邊框計(jì)算的實(shí)施例。依照一個(gè)實(shí)施例,單通道邊框計(jì)算包括渲染第一目標(biāo)至2維屏幕空間,該第一目標(biāo)包括至少六個(gè)像素。計(jì)算進(jìn)一步包括基于應(yīng)用程序指定的變換來產(chǎn)生一組幾何圖元中變換的頂點(diǎn)。計(jì)算還包括為一組幾何圖元中每個(gè)變換的頂點(diǎn)生成六個(gè)新的點(diǎn)。計(jì)算另外包括通過渲染為每個(gè)像素生成的至少六個(gè)新的點(diǎn)至對(duì)應(yīng)的每個(gè)像素,來產(chǎn)生每個(gè)像素的初始第三坐標(biāo)值。計(jì)算進(jìn)一步包括通過柵格化用每個(gè)對(duì)應(yīng)像素渲染至每個(gè)像素的至少六個(gè)新的點(diǎn),來產(chǎn)生每個(gè)像素的柵格化后的值。最后,計(jì)算包括基于產(chǎn)生的第三坐標(biāo)值來為幾何圖元集合計(jì)算邊框信息。
文檔編號(hào)G06T17/10GK102301401SQ201080006307
公開日2011年12月28日 申請(qǐng)日期2010年1月12日 優(yōu)先權(quán)日2009年1月29日
發(fā)明者C·李, J·李, X·童 申請(qǐng)人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1