專利名稱:用于3d中硬件加速的抗圖形失真方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及計算機(jī),尤其涉及圖像。
背景技術(shù):
抗圖形失真用于減少對計算機(jī)圖像中的斜邊或曲邊常見的圖形失真典型產(chǎn)物。當(dāng)前用于3D模型抗圖形失真光柵化的技術(shù)要么要求過多的時間量、專用硬件的支持,要么導(dǎo)致不可接受的典型產(chǎn)物,諸如對象膨脹。而且,用于3D模型的抗圖形失真在各個圖形卡之間的質(zhì)量和性能也不同。需要一種用于加速3D模型的抗圖形失真的方法。理想上,這樣的方法可以在不同的圖形卡上提供一致的結(jié)果。
發(fā)明內(nèi)容
簡而言之,本發(fā)明提供了用于對象的抗圖形失真光柵化的方法和系統(tǒng)。從由形狀表示的對象的特定視點(diǎn),選擇具有對象的輪廓上的邊的形狀。在位于對象的輪廓上的形狀的邊上創(chuàng)建邊幾何形狀。呈現(xiàn)該邊幾何形狀?;蛘咴谑褂蒙疃葴y試裝置呈現(xiàn)邊幾何形狀之后呈現(xiàn)形狀,使得不允許該形狀的各部分與邊幾何形狀重疊,或者修改該形狀本身來去除與邊幾何形狀重疊的任何部分。這可以對位于對象輪廓上的每一形狀的每一邊重復(fù)。
在本發(fā)明的一個方面,邊幾何形狀用匹配形狀的邊上的紋理來紋理化。邊幾何形狀也具有置于其上的紋理,該紋理具有從不透明到完全透明的變化的透明度。這使得來自邊幾何形狀下層的像素的顏色與來自邊幾何形狀的像素的顏色混合。這具有對于對象的輪廓的抗圖形失真效果。
當(dāng)結(jié)合附圖閱讀以下具體實施方式
,本發(fā)明的其它方面會變得顯而易見,附圖中
圖1是表示可在其中包含本發(fā)明的計算機(jī)系統(tǒng)的框圖;
圖2是根據(jù)本發(fā)明的各方面示出網(wǎng)格上的三角形的圖示;圖3是根據(jù)本發(fā)明的各方面示出三角形和像素的圖示;圖4是根據(jù)本發(fā)明的各方面示出可在抗圖形失真中執(zhí)行的動作的流程圖;圖5是根據(jù)本發(fā)明的各方面對應(yīng)于圖4的框425的流程圖;圖6是根據(jù)本發(fā)明的各方面示出圖3的三角形以及新的邊幾何形狀的示例的圖示;以及圖7是根據(jù)本發(fā)明的各方面示出圖3的三角形以及邊幾何形狀的另一示例的圖示。
具體實施例方式
示例性操作環(huán)境圖1示出了可在其上實現(xiàn)本發(fā)明的合適的計算系統(tǒng)環(huán)境100的示例。計算系統(tǒng)環(huán)境100只是合適的計算環(huán)境的一個示例,并不旨在對本發(fā)明的使用范圍或功能提出任何限制。也不應(yīng)該把計算環(huán)境100解釋為對示例性操作環(huán)境100中示出的任一組件或其組合有任何依賴性或要求。
本發(fā)明可用眾多其它通用或?qū)S糜嬎阆到y(tǒng)環(huán)境或配置來操作。適合在本發(fā)明中使用的公知的計算系統(tǒng)、環(huán)境和/或配置的示例包括,但不限于,個人計算機(jī)、服務(wù)器計算機(jī)、手持或膝上型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、機(jī)頂盒、可編程消費(fèi)者電子產(chǎn)品、網(wǎng)絡(luò)PC、小型機(jī)、大型機(jī)、包含上述系統(tǒng)或設(shè)備中的任一個的分布式計算機(jī)環(huán)境等。
本發(fā)明可在諸如由計算機(jī)執(zhí)行的程序模塊等計算機(jī)可執(zhí)行指令的通用語境中描述。一般而言,程序模塊包括例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等,它們執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型。本發(fā)明也可以在分布式計算環(huán)境中實現(xiàn),其中任務(wù)由通過通信網(wǎng)絡(luò)連接的遠(yuǎn)程處理設(shè)備來執(zhí)行。在分布式計算環(huán)境中,程序模塊可以位于包括存儲器存儲設(shè)備在內(nèi)的本地和遠(yuǎn)程計算機(jī)存儲介質(zhì)中。
參考圖1,用于實現(xiàn)本發(fā)明的一個示例性系統(tǒng)包括計算機(jī)110形式的通用計算設(shè)備。計算機(jī)110的組件可以包括,但不限于,處理單元120、系統(tǒng)存儲器130和將包括系統(tǒng)存儲器在內(nèi)的各種系統(tǒng)組件耦合至處理單元120的系統(tǒng)總線121。系統(tǒng)總線121可以是若干類型的總線結(jié)構(gòu)中的任一種,包括存儲器總線或存儲器控制器、外圍總線和使用各種總線體系結(jié)構(gòu)中的任一種的局部總線。作為示例,而非限制,這樣的體系結(jié)構(gòu)包括工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線、微通道體系結(jié)構(gòu)(MCA)總線、擴(kuò)展的ISA(EISA)總線、視頻電子技術(shù)標(biāo)準(zhǔn)協(xié)會(VESA)局部總線和外圍部件互連(PCI)總線(也被稱為Mezzanine總線)。
計算機(jī)110通常包括各種計算機(jī)可讀介質(zhì)。計算機(jī)可讀介質(zhì)可以是能夠被計算機(jī)11O訪問的任何可用介質(zhì),且包括易失性和非易失性介質(zhì)、可移動和不可移動介質(zhì)。作為示例,而非限制,計算機(jī)可讀介質(zhì)可以包括計算機(jī)存儲介質(zhì)和通信介質(zhì)。計算機(jī)存儲介質(zhì)包括以任何方法或技術(shù)實現(xiàn)的用于存儲諸如計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)等信息的易失性和非易失性、可移動和不可移動介質(zhì)。計算機(jī)存儲介質(zhì)包括,但不限于,RAM、ROM、EEPROM、閃存或其它存儲器技術(shù)、CD-ROM、數(shù)字多功能盤(DVD)或其它光盤存儲、磁帶盒、磁帶、磁盤存儲或其它磁性存儲設(shè)備、或能用于存儲所需信息且可以由計算機(jī)110訪問的任何其它介質(zhì)。通信介質(zhì)通常具體化為諸如載波或其它傳輸機(jī)制等已調(diào)制數(shù)據(jù)信號中的計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù),且包含任何信息傳遞介質(zhì)。術(shù)語“已調(diào)制數(shù)據(jù)信號”指的是這樣一種信號,其一個或多個特征以在信號中編碼信息的方式被設(shè)定或更改。作為示例,而非限制,通信介質(zhì)包括有線介質(zhì),諸如有線網(wǎng)絡(luò)或直接線連接,以及無線介質(zhì),諸如聲學(xué)、RF、紅外線和其它無線介質(zhì)。上述中任一個的組合也應(yīng)包括在計算機(jī)可讀介質(zhì)的范圍之內(nèi)。
系統(tǒng)存儲器130包括易失性或非易失性存儲器形式的計算機(jī)存儲介質(zhì),諸如只讀存儲器(ROM)131和隨機(jī)存取存儲器(RAM)132?;据斎?輸出系統(tǒng)133(BIOS)包含有助于諸如啟動時在計算機(jī)110中元件之間傳遞信息的基本例程,它通常存儲在ROM 131中。RAM 132通常包含處理單元120可以立即訪問和/或目前正在操作的數(shù)據(jù)和/或程序模塊。作為示例,而非限制,圖1示出了操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137。
計算機(jī)110也可以包括其它可移動/不可移動、易失性/非易失性計算機(jī)存儲介質(zhì)。僅作為示例,圖1示出了從不可移動、非易失性磁介質(zhì)中讀取或向其寫入的硬盤驅(qū)動器141,從可移動、非易失性磁盤152中讀取或向其寫入的磁盤驅(qū)動器151,以及從諸如CD ROM或其它光學(xué)介質(zhì)等可移動、非易失性光盤156中讀取或向其寫入的光盤驅(qū)動器155??梢栽谑纠圆僮鳝h(huán)境中使用的其它可移動/不可移動、易失性/非易失性計算機(jī)存儲介質(zhì)包括,但不限于,盒式磁帶、閃存卡、數(shù)字多功能盤、數(shù)字錄像帶、固態(tài)RAM、固態(tài)ROM等。硬盤驅(qū)動器141通常由不可移動存儲器接口,諸如接口140連接至系統(tǒng)總線121,磁盤驅(qū)動器151和光盤驅(qū)動器155通常由可移動存儲器接口,諸如接口150連接至系統(tǒng)總線121。
以上描述和在圖1中示出的驅(qū)動器及其相關(guān)聯(lián)的計算機(jī)存儲介質(zhì)為計算機(jī)110提供了對計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲。例如,在圖1中,硬盤驅(qū)動器141被示為存儲操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147。注意,這些組件可以與操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137相同或不同。操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147在這里被標(biāo)注了不同的標(biāo)號是為了說明至少它們是不同的副本。用戶可以通過輸入設(shè)備,諸如鍵盤162和定點(diǎn)設(shè)備161(通常指鼠標(biāo)、跟蹤球或觸摸墊)向計算機(jī)110輸入命令和信息。其它輸入設(shè)備(未示出)可以包括麥克風(fēng)、操縱桿、游戲墊、圓盤式衛(wèi)星天線、掃描儀、手持式PC或其它書寫輸入板的觸敏屏等。這些和其它輸入設(shè)備通常由耦合至系統(tǒng)總線的用戶輸入接口160連接至處理單元120,但也可以由其它接口或總線結(jié)構(gòu),諸如并行端口、游戲端口或通用串行總線(USB)連接。監(jiān)視器191或其它類型的顯示設(shè)備也經(jīng)由接口,諸如視頻接口190連接至系統(tǒng)總線121。除監(jiān)視器以外,計算機(jī)也可以包括其它外圍輸出設(shè)備,諸如揚(yáng)聲器197和打印機(jī)196,它們可以通過輸出外圍接口195連接。
計算機(jī)110可使用至一個或多個遠(yuǎn)程計算機(jī),諸如遠(yuǎn)程計算機(jī)180的邏輯連接在網(wǎng)絡(luò)化環(huán)境中操作。遠(yuǎn)程計算機(jī)180可以是個人計算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對等設(shè)備或其它常見網(wǎng)絡(luò)節(jié)點(diǎn),且通常包括上文相對于計算機(jī)110描述的許多或所有元件,盡管在圖1中只示出存儲器存儲設(shè)備181。圖1中所示的邏輯連接包括局域網(wǎng)(LAN)171和廣域網(wǎng)(WAN)173,但也可以包括其它網(wǎng)絡(luò)。這樣的網(wǎng)絡(luò)環(huán)境在辦公室、企業(yè)范圍計算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng)中是常見的。
當(dāng)在LAN網(wǎng)絡(luò)環(huán)境中使用時,計算機(jī)110通過網(wǎng)絡(luò)接口或適配器170連接至局域網(wǎng)171。當(dāng)在WAN網(wǎng)絡(luò)環(huán)境中使用時,計算機(jī)110通常包括調(diào)制解調(diào)器172或用于通過諸如因特網(wǎng)等WAN 173建立通信的其它裝置。調(diào)制解調(diào)器172可以是內(nèi)部或外部的,它可以通過用戶輸入接口160或其它合適的機(jī)制連接至系統(tǒng)總線121。在網(wǎng)絡(luò)化環(huán)境中,相對于計算機(jī)110所描述的程序模塊或其部分可以存儲在遠(yuǎn)程存儲器存儲設(shè)備中。作為示例,而非限制,圖1示出了遠(yuǎn)程應(yīng)用程序185駐留在存儲器設(shè)備181上??梢岳斫?,所示的網(wǎng)絡(luò)連接是示例性的,且可以使用在計算機(jī)之間建立通信鏈路的其它手段。
3D中的加速的抗圖形失真圖2是根據(jù)本發(fā)明的各方面示出網(wǎng)格上的三角形的圖示。顯示器可以被劃分成以網(wǎng)格排列的像素,諸如圍繞三角形210示出的網(wǎng)格,且顯示可以包括在顯示器邊緣上的其它像素。通常,計算機(jī)可以促使顯示器上的每一像素顯示一種顏色顏色,該顏色獨(dú)立于在顯示器上顯示的其它像素中顯示的顏色。
像素中心位于三角形210內(nèi)的像素可以被促使顯示與三角形210相關(guān)聯(lián)的顏色,而像素中心位于三角形外的像素可以被促使顯示諸如黑色等背景色。如果沒有抗圖形失真,那么這樣會導(dǎo)致在三角形210邊界上的像素的鋸齒狀圖案。
包括三維(3D)對象的對象可以由形狀的集合來表示。在實踐中,每一形狀可以是三角形或可以被劃分為三角形。這些三角形中的某一些可以完全位于對象的邊界之內(nèi),而其它三角形當(dāng)從特定的視點(diǎn)觀察對象時,可位于對象的邊上。位于對象的邊上(從特定視點(diǎn))的三角形可以具有形成對象輪廓邊的一部分的一條或多條邊。對由三角形組成的3D對象,輪廓邊是同時接觸朝向視點(diǎn)的三角形和不朝向該視點(diǎn)的三角形的邊。如果三角形駐留其中的平面的法線指向視點(diǎn),則三角形朝向該視點(diǎn)。
圖3是根據(jù)本發(fā)明的各方面示出三角形和像素的圖示。像素310落在三角形205的邊上,且落在一圖像(未示出)的輪廓上。在沒有抗圖形失真的操作中,因為像素310的中心位于三角形305的內(nèi)部,所以像素310可以使用三角形305的顏色來著色。然而,為了避免或減少圖形失真,落在三角形305的邊(和圖像輪廓)上的每一像素可被促使顯示這樣一種顏色,該顏色是背景像素顏色(或者是三角形背后的對象的像素的顏色)和三角形305的顏色的混合物。例如,如果像素310的百分之九十位于三角形305內(nèi)部而百分之十位于三角形305的外部,那么像素310的顏色可以是對三角形的顏色百分之九十加權(quán)并對背景色百分之十加權(quán)的混合。部分位于三角形內(nèi)部的像素的百分比可以被計算為與像素中心到三角形邊的距離成比例。
圖4是根據(jù)本發(fā)明的各方面示出可在抗圖形失真中執(zhí)行的動作的流程圖。在框405處,該過程開始。在框410處開始,檢測要抗圖形失真的對象的輪廓(從一視點(diǎn))。這可以通過使用每一三角形面向的鄰接信息來找出同時接觸朝向視點(diǎn)的三角形和不朝向視點(diǎn)的三角形的邊來完成??梢允褂闷渌喞獧z測方法而不背離本發(fā)明的精神和范圍。在Sander,P.V.、Gortler,S.J.、Hoppe,H.以及Snyder,J.的Symposium on Interactive 3D Graphics中第167-174頁的Discontinuity edge overdraw中描述了示例性輪廓檢測算法,該文獻(xiàn)通過引用包含在此。
在本發(fā)明的一個實施例中,出現(xiàn)不連續(xù)邊的任何地方作為在輪廓上來處理??梢哉J(rèn)識到,將這樣的邊作為在輪廓上來處理可以允許對不位于對象實際輪廓上的銳邊執(zhí)行抗圖形失真。
在框415處,構(gòu)成對象的三角形相對于視點(diǎn)從后方到前方進(jìn)行排序。在框420處,將Z-測試(Z-Test)函數(shù)設(shè)置為“嚴(yán)格小于”。將Z-測試函數(shù)設(shè)置為嚴(yán)格小于具有這樣的效果確保像素不會覆蓋在現(xiàn)有像素上繪制,除非新像素的Z值嚴(yán)格小于現(xiàn)有像素的Z值。
在框425處,如結(jié)合圖5更詳細(xì)地描述的來呈現(xiàn)三角形。在框430處,該過程結(jié)束。
圖5是根據(jù)本發(fā)明的各方面對應(yīng)于圖4的框425的流程圖。在框505處,進(jìn)入該過程。在框510處,選擇要呈現(xiàn)的第一個三角形。這是最遠(yuǎn)離觀察該對象的視點(diǎn)最遠(yuǎn)的三角形。在框515處,作出關(guān)于該三角形的邊是否在對象的輪廓上的判斷。如果是,那么處理分支到框520,否則處理分支到框530。
在框520處,為位于對象輪廓上的三角形的邊創(chuàng)建新的邊幾何形狀。圖6是根據(jù)本發(fā)明的各方面示出圖3的三角形以及新的邊幾何形狀的圖示。新的邊幾何形狀605可以是一個像素寬,且可以被如此放置使得新的邊幾何形狀的中心落在三角形305的輪廓邊上。這促使新的邊幾何形狀605在輪廓邊上延長半個像素進(jìn)入三角形305內(nèi),并延長半個像素到三角形305外。在本發(fā)明的其它實施例中,邊的幾何形狀可以寬于或窄于一個像素。
邊幾何形狀605可以在與包括三角形305的平面相同的平面上創(chuàng)建。這保證了它會擁有與其所重疊的三角形的像素相同的Z值。而且,因為邊幾何形狀605是在三角形305之前繪制的,因此當(dāng)繪制三角形305時,由于Z-測試的“嚴(yán)格小于”設(shè)置,它不會覆蓋在邊幾何形狀605中的任何像素上繪制。
作為將Z-測試函數(shù)設(shè)置為“嚴(yán)格小于”的替換,邊幾何形狀605可以是偏斜的,使得其Z值指示邊幾何形狀605在邊幾何形狀605所重疊的三角形的像素的稍微前方。另外,Z-測試函數(shù)可以被設(shè)置為如果另一像素含有小于或等于一個像素的Z緩沖值,則不覆蓋該像素繪制另一像素。這可以完成來確保當(dāng)呈現(xiàn)三角形時,三角形的像素不會覆蓋受邊幾何形狀605影響的任何像素。
在本發(fā)明的另一實施例中,三角形305可以被修改,使得它不再與邊幾何形狀605重疊,而非使用Z測試的“嚴(yán)格小于”設(shè)置來防止三角形305的呈現(xiàn)覆蓋邊幾何形狀605的像素來繪制。另外,邊幾何形狀605可以被置于視點(diǎn)的平面中或置于三角形的平面中。將邊幾何形狀605置于視點(diǎn)的平面中而不是三角形的平面中可以避免如果邊幾何形狀605延長至附近的裁剪平面的前方時可能會發(fā)生的錯誤。為了避免當(dāng)以這種方式修改三角形305時三角形的紋理和邊幾何形狀的紋理之間的視覺上的不連續(xù),也可能需要修改三角形的紋理坐標(biāo)。
邊幾何形狀605可以使用共同調(diào)制的兩種紋理來紋理化。這兩種紋理可以通過提供具有兩種紋理的呈現(xiàn)器并指示每一紋理應(yīng)被應(yīng)用于邊幾何形狀605來共同調(diào)制。紋理中的一種可以與三角形的紋理相同,使得沿著邊幾何形狀605的顏色與三角形305的顏色相匹配。邊幾何形狀的另一種紋理可以是阿爾法漸變,它從在邊幾何形狀605位于三角形內(nèi)部的一側(cè)上的不透明(即,完全不透明)到在邊幾何形狀605位于三角形305外部的一側(cè)上的透明連續(xù)變化。
將阿爾法漸變置于邊幾何形狀605上使得具有位于邊幾何形狀605內(nèi)部邊上的中心的像素是不透明的,具有位于邊幾何形狀605內(nèi)的三角形305的邊上的中心的像素是半透明的,以及具有位于邊幾何形狀605外部邊上的中心的像素是完全透明的。
在本發(fā)明的另一實施例中,邊幾何形狀605可以寬于一個像素。而且,邊幾何形狀605的每一部分的透明度可以由函數(shù)(例如,sin(x)/x)來確定,而不是從透明到不透明的斜坡。在這樣的情況下,與更寬的邊幾何形狀組合這一函數(shù)可以比與像素寬的邊幾何形狀組合的線形透明度更準(zhǔn)確地重建對象的輪廓。
紋理是可以用來確定與邊幾何形狀相關(guān)聯(lián)的像素的顏色的內(nèi)插機(jī)制的一種形式。在本發(fā)明的其它實施例中,可以使用其它內(nèi)插機(jī)制來確定與邊幾何形狀相關(guān)聯(lián)的像素的顏色。某些示例性內(nèi)插機(jī)制包括Gouraud著色、紋理、像素著色器等。
可將一種以上像素著色器應(yīng)用于與邊幾何形狀相關(guān)聯(lián)的像素。這可以通過將一個像素著色器應(yīng)用于各像素,然后將另一像素著色器應(yīng)用于各像素,依此類推來完成。像素著色器可以包括為與幾何形狀相關(guān)聯(lián)的每一像素計算顏色的組件或方法。
盡管被示為矩形,但是邊幾何形狀605可以是不同的幾何形狀或大小,而不背離本發(fā)明的精神或范圍。例如,邊幾何形狀可以被塑造為如圖7的邊幾何形狀705所示,圖7是根據(jù)本發(fā)明的各方面示出圖3的三角形以及另一示例性邊幾何形狀的圖示?;陲@示的對象也可以使用其它幾何形狀。
而且,對大小接近于一個像素或更小的三角形,可以不創(chuàng)建邊幾何形狀。
再次參考圖5,在框520處創(chuàng)建了邊幾何形狀之后,該邊幾何形狀可以使其Z緩沖值稍微偏斜,使得呈現(xiàn)器如上所述不會在邊幾何形狀內(nèi)繪制來自三角形的任何像素。之后,在框525處呈現(xiàn)邊幾何形狀。在框530處,呈現(xiàn)三角形。在框535處,作出關(guān)于是否存在另一個要呈現(xiàn)的三角形的判斷。如果是,那么處理分支到框540,否則處理分支到框545。
在框540處,獲取下一個將要呈現(xiàn)的三角形。對三角形的選擇從離視點(diǎn)最遠(yuǎn)的三角形開始到離視點(diǎn)最近的三角形。這至少部分可以完成,使得來自較遠(yuǎn)三角形的像素的顏色與來自較近三角形的部分重疊透明像素的顏色混合。
在框545處,該過程返回。
再次參考圖1,上述各種動作可以由視頻接口190上的處理器單獨(dú)或與計算機(jī)110的處理單元120結(jié)合來執(zhí)行。在某些實施例中,上述動作中的多個或全部可以由視頻接口190來執(zhí)行,而在其它實施例中,上述動作中的多個或全部可以由處理單元120來執(zhí)行。也可以使用位于計算機(jī)120上的或遠(yuǎn)程的其它處理器(未示出),而不背離本發(fā)明的精神或范圍。
如從前述詳細(xì)描述中可見,提供了用于3D中的硬件加速抗圖形失真的改進(jìn)的方法。盡管本發(fā)明對多種修改和替換構(gòu)造是敏感的,但其某些示出的實施例在附圖中示出,并在上文中詳細(xì)描述。然而,應(yīng)該理解,不存在將本發(fā)明限制于所揭示的具體形式的意圖,相反,本發(fā)明覆蓋落入本發(fā)明的精神和范圍之內(nèi)的所有修改、替換結(jié)構(gòu)和等價效技術(shù)方案。
權(quán)利要求
1.一種具有計算機(jī)可執(zhí)行指令的計算機(jī)可讀介質(zhì),包括選擇具有對象的輪廓上的邊的形狀;在所述邊上創(chuàng)建邊幾何形狀;呈現(xiàn)所述邊幾何形狀;以及在呈現(xiàn)所述邊幾何形狀之后,呈現(xiàn)所述形狀。
2.如權(quán)利要求1所述的計算機(jī)可讀介質(zhì),其特征在于,所述形狀包括三角形。
3.如權(quán)利要求1所述的計算機(jī)可讀介質(zhì),其特征在于,所述輪廓是由觀察所述對象的視點(diǎn)定義的。
4.如權(quán)利要求3所述的計算機(jī)可讀介質(zhì),其特征在于,所述輪廓包括同時接觸朝向所述視點(diǎn)的形狀和不朝向所述視點(diǎn)的形狀的邊。
5.如權(quán)利要求1所述的計算機(jī)可讀介質(zhì),其特征在于,所述邊幾何形狀包括寬為一個像素的形狀。
6.如權(quán)利要求1所述的計算機(jī)可讀介質(zhì),其特征在于,所述形狀位于一個平面中,且所述邊幾何形狀位于所述平面中。
7.如權(quán)利要求1所述的計算機(jī)可讀介質(zhì),其特征在于,所述形狀位于一個平面中,且所述邊幾何形狀位于另一個平面中。
8.如權(quán)利要求7所述的計算機(jī)可讀介質(zhì),其特征在于,所述另一個平面包括觀察所述對象的視點(diǎn)的平面。
9.如權(quán)利要求1所述的計算機(jī)可讀介質(zhì),其特征在于,所述在邊上創(chuàng)建邊幾何形狀包括將第一像素著色器應(yīng)用于與所述邊幾何形狀相關(guān)聯(lián)的像素。
10.如權(quán)利要求9所述的計算機(jī)可讀介質(zhì),其特征在于,所述在邊上創(chuàng)建邊幾何形狀還包括將第二像素著色器應(yīng)用于與所述邊幾何形狀相關(guān)聯(lián)的像素。
11.如權(quán)利要求1所述的計算機(jī)可讀介質(zhì),其特征在于,所述在邊上創(chuàng)建邊幾何形狀包括將內(nèi)插機(jī)制應(yīng)用于與所述邊幾何形狀相關(guān)聯(lián)的像素。
12.如權(quán)利要求11所述的計算機(jī)可讀介質(zhì),其特征在于,所述內(nèi)插機(jī)制包括Gouraud著色器。
13.如權(quán)利要求11所述的計算機(jī)可讀介質(zhì),其特征在于,所述內(nèi)插機(jī)制包括像素著色器。
14.如權(quán)利要求1所述的計算機(jī)可讀介質(zhì),其特征在于,所述在邊上創(chuàng)建邊幾何形狀包括創(chuàng)建與邊上的像素紋理相匹配的紋理。
15.如權(quán)利要求14所述的計算機(jī)可讀介質(zhì),其特征在于,所述在邊上創(chuàng)建邊幾何形狀還包括創(chuàng)建從不透明到透明變化的另一紋理。
16.如權(quán)利要求15所述的計算機(jī)可讀介質(zhì),其特征在于,所述另一紋理在最接近所述形狀的邊幾何形狀的一側(cè)上是不透明的,而在最遠(yuǎn)離所述形狀的邊幾何形狀的一側(cè)上是透明的。
17.如權(quán)利要求15所述的計算機(jī)可讀介質(zhì),其特征在于,所述另一紋理從不透明到透明線性變化。
18.如權(quán)利要求15所述的計算機(jī)可讀介質(zhì),其特征在于,所述另一紋理基于非線性函數(shù)從不透明到透明變化。
19.如權(quán)利要求18所述的計算機(jī)可讀介質(zhì),其特征在于,所述非線性函數(shù)包括正弦函數(shù)。
20.如權(quán)利要求18所述的計算機(jī)可讀介質(zhì),其特征在于,所述形狀寬于一個像素。
21.如權(quán)利要求1所述的計算機(jī)可讀介質(zhì),其特征在于,還包括將Z-測試函數(shù)設(shè)置為嚴(yán)格小于,使得與所述對象相關(guān)聯(lián)的像素不被另一像素覆蓋繪制,除非所述像素比所述另一像素更接近于視點(diǎn)。
22.一種用于呈現(xiàn)圖像的方法,包括對表示對象的形狀進(jìn)行排序,其中,所述排序是基于所述形狀與關(guān)聯(lián)于所述對象的視點(diǎn)的距離;為位于所述對象的輪廓上的形狀創(chuàng)建邊幾何形狀;以及修改所述形狀,使得它不會與所述邊幾何形狀重疊。
23.如權(quán)利要求22所述的方法,其特征在于,還包括按從最遠(yuǎn)離視點(diǎn)到最接近視點(diǎn)的順序呈現(xiàn)所述形狀。
24.如權(quán)利要求22所述的方法,其特征在于,還包括修改所述形狀的紋理以與所述邊幾何形狀的紋理連續(xù)。
25.如權(quán)利要求22所述的方法,其特征在于,所述形狀是多邊形。
26.如權(quán)利要求25所述的方法,其特征在于,所述多邊形是三角形。
27.如權(quán)利要求22所述的方法,其特征在于,所述為位于所述對象的輪廓上的形狀創(chuàng)建邊幾何形狀包括創(chuàng)建所述邊幾何形狀以與所述形狀的邊重疊。
28.如權(quán)利要求27所述的方法,其特征在于,所述邊幾何形狀包括多邊形。
29.如權(quán)利要求28所述的方法,其特征在于,所述多邊形包括矩形。
30.如權(quán)利要求27所述的方法,其特征在于,所述形狀位于一個平面中,且其中,所述創(chuàng)建邊幾何形狀以與所述形狀的邊重疊包括在所述平面中創(chuàng)建所述邊幾何形狀,且所述邊幾何形狀的至少一部分位于所述形狀所存在的平面的一部分中。
31.一種用于呈現(xiàn)圖像的裝置,包括一個或多個處理器的集合,它們被安排成檢測對象的輪廓;在位于所述對象的輪廓上的形狀的邊上創(chuàng)建邊幾何形狀;呈現(xiàn)所述邊幾何形狀;以及修改所述形狀以去除與所述邊幾何形狀重疊的任何部分,或者在呈現(xiàn)所述邊幾何形狀之后呈現(xiàn)所述形狀。
32.如權(quán)利要求31所述的裝置,其特征在于,還包括被安排成顯示所述對象的表示的顯示器。
33.如權(quán)利要求31所述的裝置,其特征在于,所述一個或多個處理器的集合包括圖形卡的處理器。
34.如權(quán)利要求33所述的裝置,其特征在于,所述一個或多個處理器的集合還包括放置所述圖形卡的計算機(jī)中的處理器。
35.如權(quán)利要求31所述的裝置,其特征在于,所述一個或多個處理器的集合僅包括一個處理器。
全文摘要
一種用于對象的抗圖形失真光柵化的方法和系統(tǒng)。從由圖形表示的對象的特定視點(diǎn),選擇具有對象輪廓上的邊的形狀。在位于對象的輪廓上的形狀的邊上創(chuàng)建邊幾何形狀。呈現(xiàn)該邊幾何形狀?;蛘咴谑褂蒙疃葴y試裝置呈現(xiàn)邊幾何形狀之后呈現(xiàn)形狀,使得不允許形狀的各部分與該邊幾何形狀重疊,或者修改形狀本身來去除與邊幾何形狀重疊的任何部分。這可以對位于對象輪廓上的每一形狀的每一邊重復(fù)。
文檔編號G06T15/50GK1763786SQ20051011611
公開日2006年4月26日 申請日期2005年10月18日 優(yōu)先權(quán)日2004年10月19日
發(fā)明者A·史蒂文森, A·A·米沙爾 申請人:微軟公司