專利名稱:折射現(xiàn)象的一種基于硬件的圖形工作站的解決方案的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于生成物體的圖形圖象的裝置。更具體地,涉及在一個(gè)顯示器表面上生成描繪三維目標(biāo)的二維圖象的計(jì)算機(jī)圖形系統(tǒng)。更具體地,本發(fā)明涉及描繪具有非單位折射率的透光三維目標(biāo)的圖形系統(tǒng)。
許多自然界中存在的透光物質(zhì)具有非單位折射率。這又導(dǎo)致透過(guò)這些目標(biāo)的光線彎曲。在計(jì)算機(jī)圖形學(xué)中,透光物質(zhì)是用α混色逼近的。通過(guò)透光物質(zhì)見到的顏色是物體的顏色與原先在對(duì)應(yīng)的象素上的幀緩沖器中的顏色的組合。
這一受限制的模型將折射率限制為1并且在大多數(shù)情況中導(dǎo)致計(jì)算機(jī)生成的透明目標(biāo)偏離現(xiàn)實(shí)。為了正確地描繪通過(guò)光密物質(zhì)看到的圖象,要求在透光物質(zhì)的幾何與物理性質(zhì)的基礎(chǔ)上從屏幕上的周圍取出象素。
我們提供一種裝置與算法,借此光疏與光密透光介質(zhì)都能用一種光柵子系統(tǒng)來(lái)逼近。建立折射過(guò)程的模型實(shí)際上超出了本發(fā)明的范圍,在本發(fā)明中所提供的是一種逼近。對(duì)于在電磁學(xué)說(shuō)水平上的折射過(guò)程的深入討論,請(qǐng)參閱.“光學(xué)原理”(Born,Max與Emil Wolf著,第六版,Pergamon出版社,1980)。具體地,本發(fā)明涉及諸如玻璃等均勻的、各向同性的介電介質(zhì)。
在傳統(tǒng)的硬件光柵圖形系統(tǒng)中從未引入過(guò)折射。過(guò)去,折射是作為光線跟蹤全局照明算法的一部分來(lái)完成的。例如見“計(jì)算機(jī)圖形學(xué)—原理與實(shí)踐”(Foley James D.,Andries van Dam,Steven K.Feiner與John F.Hughes著,第二版,Addison-Wesley出版公司,ReadingMass,1990)或者“光線跟蹤導(dǎo)論”(Andrew S.Glassner編,學(xué)院出版公司,1989)。
折射是光線通過(guò)一種光密度介質(zhì)進(jìn)入另一種光密度介質(zhì)時(shí)出現(xiàn)的一種光學(xué)現(xiàn)象。光密度的改變導(dǎo)致光的速度的改變而引起傳播方向的彎折。
圖6從幾何上描繪存在折射時(shí)出現(xiàn)的光線矢量的彎折。矢量602以相對(duì)于法線矢量603的入射角θi入射在物質(zhì)界面601上。透射矢量604與向內(nèi)朝向的法線形成一個(gè)角θt。Snell定律式(1)提出了在理想化條件下入射角與透射角之間的關(guān)系。Sin(θi)Sin(θt)=ηtηi----(1)]]>空氣的折射率接近一,不同種類的玻璃與塑料可具有稍高于1至2或3的折射率。常見物質(zhì)的折射率的值可參見“CRC化學(xué)與物理手冊(cè)”(第一學(xué)生版,Robert C.Weas編,CRC出版公司,1988)。
圖7中描繪了更完整的透射圖。其中示出了具有折射率ηt的塊厚度為d的透光板。與圖6中一樣,入射光線702以入射角θi到達(dá)。透射光線704形成一個(gè)角θt。當(dāng)?shù)竭_(dá)平板的底面時(shí),透射光再一次被折射而成為與原來(lái)的入射光線706平行的。在滿足下述兩個(gè)條件時(shí)出現(xiàn)這一情況板的兩個(gè)表面是平行的;在板的兩面的物質(zhì)的折射率是相等的,例如,被空氣包圍的一塊板。當(dāng)物體的兩個(gè)表面不平行時(shí),通常光線702與706不再平行。
在一般情況中,當(dāng)一條光線射在一個(gè)表面上時(shí),反射與透射光線的方向可以通過(guò)施加一定的連續(xù)性邊界條件而解麥克斯韋方程計(jì)算出。然而,對(duì)于本發(fā)明而言,一種簡(jiǎn)單的幾何方法已經(jīng)夠用了。
對(duì)于透明介質(zhì),透射光線的矢量為, 其中,θi為入射光線與法向矢量之間的夾角。ηit為包含入射光線的物質(zhì)的折射率相對(duì)于包含透射光線的物質(zhì)的折射率之比,即ηi/ηt=ηit。
指向交點(diǎn)的單位入射矢量 檢溉出的向外的法向矢量 離開交點(diǎn)進(jìn)入物質(zhì)的單位透射矢量注當(dāng)透射光線矢量公式中根式中的變量為負(fù)數(shù)而導(dǎo)致 的一個(gè)復(fù)系數(shù)時(shí)出現(xiàn)全內(nèi)反射。
折射率不一定是實(shí)數(shù)量。一個(gè)復(fù)數(shù)折射率表示一定程度的吸收,虛數(shù)部分對(duì)應(yīng)于吸收指數(shù)。通過(guò)逼近指數(shù)函數(shù)來(lái)計(jì)入透射介質(zhì)的吸收,然后用該指數(shù)函數(shù)來(lái)代替α(ηi是作為輸入的折射率的虛數(shù)部分,而d則為由正面與背面交點(diǎn)上的坐標(biāo)差確定的物體的厚度,例如在圖4中所示)。其結(jié)果為根據(jù)其厚度指數(shù)地降低透射過(guò)樣本的光強(qiáng)。本發(fā)明旨在提供三種精確地表示折射圖象的不同方案。由于第一種方案只考慮一個(gè)單一的面,這一衰減項(xiàng) 只有必要作用在第二與第三種方案上。
下述方案是在硬件光柵發(fā)生器(rasterizer)的當(dāng)前技術(shù)上的一種改進(jìn),因?yàn)樗鼙平凵洮F(xiàn)象。在其它圖形硬件中,折射是完全被忽略的。以前對(duì)這一問(wèn)題的解決全部在軟件中,因此運(yùn)行速度達(dá)不到實(shí)時(shí)。
通過(guò)觀察得到的圖像很容易了解經(jīng)歷折射現(xiàn)象的一個(gè)圖象的質(zhì)量。當(dāng)觀察一半浸在一杯水中的一根尺時(shí)所見到的“折斷”的尺的眾所周知的效果是折射的日常實(shí)例。(見圖8。)現(xiàn)有的光線跟蹤法能夠精確地表示折射圖象,但要付出低性能的代價(jià)。光線跟蹤法是一種計(jì)算量極大的操作;采用光線跟蹤來(lái)考慮折射顯著地減慢繪圖的性能。
本發(fā)明由兩部分構(gòu)成。第一為在逐個(gè)象素控制下將象素?cái)?shù)據(jù)從任一位置移動(dòng)到另一位置的一種機(jī)制,并可認(rèn)為是一種數(shù)據(jù)驅(qū)動(dòng)的屏幕到屏幕的復(fù)制機(jī)制。對(duì)于一個(gè)給定的象素,根據(jù)該象素處的數(shù)值,對(duì)周圍的一個(gè)象素進(jìn)行一次復(fù)制。
本發(fā)明的第二部分包括用于確定何種象素運(yùn)動(dòng)最適合于逼近折射現(xiàn)象的裝置。這一部分提供控制象素?cái)?shù)據(jù)的源與目的地的輸入。其余的討論集中在第二部分上。
為了考慮光線通過(guò)折射物質(zhì)時(shí)的彎折,移動(dòng)象素?cái)?shù)據(jù)是必要的。所生成的圖象不再是由在表面的正“后”方的象素構(gòu)成的了(即沿同一觀察矢量的較大Z深度上)。折射的圖象包含在較大的Z深度上、但由于折射現(xiàn)象而在X與Y方向位移了的象素。要在一個(gè)特定的顯示位置(X,Y)上混和進(jìn)圖象的象素?cái)?shù)據(jù)是通過(guò)沿Z方向跟蹤一個(gè)位移矢量直到它與可顯示的象素?cái)?shù)據(jù)相交為止而定位的。
從幀緩沖器中得到用于與插入的Z進(jìn)行比較的正確Z數(shù)據(jù)的機(jī)制在具有如圖2中所示的一條單一的光柵流水線的一個(gè)系統(tǒng)中是最簡(jiǎn)單的。在本例中,存儲(chǔ)器控制器能訪問(wèn)幀緩沖器中所有象素并能直接讀取在由X、Y所定義的地址上表示最新插入的Z位置的Z緩沖器。這也是用各光柵發(fā)生器(rasterizer)與幀緩沖器的存儲(chǔ)器控制器之間的一個(gè)十字矩陣來(lái)設(shè)計(jì)的并行光柵系統(tǒng)的情況。各流水線的存儲(chǔ)器控制器能夠訪問(wèn)所采用的折射方案所要求的Z緩沖器的任何單元。對(duì)于其存儲(chǔ)器控制器硬接線在幀緩沖器上的平行光柵系統(tǒng)(即不用十字矩陣),訪問(wèn)一個(gè)Z緩沖器值的機(jī)制變成依賴于幀緩沖器的組織。然而在任何情況下,各平行光柵流水線必須能夠與其它流水線通信,或者必須有一個(gè)中央機(jī)構(gòu),數(shù)據(jù)可以在其中在平行流水線之間進(jìn)行交換。
本發(fā)明旨在用于生成多個(gè)三維物體的二維表示的一種系統(tǒng),多個(gè)目標(biāo)中至少有一個(gè)是具有非單位折射率的一個(gè)折射目標(biāo)。本系統(tǒng)包括用于在折射率的基礎(chǔ)上生成一個(gè)位移矢量的裝置;以及用于通過(guò)用位移矢量的一個(gè)函數(shù)在從當(dāng)前象素位置偏離一定距離(該距離是該位移量的一個(gè)函數(shù))的一個(gè)第二象素位置上的第二象素值來(lái)為折射目標(biāo)的各象素位置確定一個(gè)對(duì)當(dāng)前象素值的修正值,而描繪該折射目標(biāo)的裝置。
因此,本發(fā)明的一個(gè)目的是對(duì)一種三維數(shù)據(jù)的逼真圖形顯示進(jìn)行改進(jìn)的方法與裝置。
本發(fā)明的另一個(gè)目的為將透明介質(zhì)納入圖形繪制系統(tǒng)所支持的原語(yǔ)組中。
本發(fā)明的又一個(gè)目的為在描繪透明目標(biāo)時(shí)逼近折射現(xiàn)象。
從下面對(duì)本發(fā)明的例示在附圖中的一個(gè)較佳實(shí)施例的更具體的描述中,本發(fā)明的上述與其它目的、特征及優(yōu)點(diǎn)將是顯而易見的,在附圖中相同的參照數(shù)字表示本發(fā)明的相同部件。
在所附的權(quán)利要求書中提出據(jù)信為本發(fā)明的新穎的特征。然而,在結(jié)合附圖閱讀與參照一個(gè)例示的實(shí)施例的下述詳細(xì)描述時(shí),將對(duì)本發(fā)明本身以及其一種較佳的使用模式更進(jìn)一步的目標(biāo)及優(yōu)點(diǎn),有更好的理解,其中相同的數(shù)字表示相同的目標(biāo)。
圖1描繪一個(gè)圖形適配系統(tǒng)的總體結(jié)構(gòu)。
圖2更詳細(xì)地描繪圖1的光柵發(fā)生器。
圖3a-3d表示用與不用本發(fā)明所描繪一個(gè)三角形的比較。圖3a表示先有技術(shù)。
圖4描述入射在一個(gè)存在折射的目標(biāo)上的一條光線。
圖5描述計(jì)算位移矢量中涉及的幾何學(xué)。
圖6表示出現(xiàn)在一個(gè)空氣/玻璃界面上的折射的有關(guān)的幾何學(xué)。
圖7表示出現(xiàn)在位于空氣中的玻璃板中的折射的有關(guān)的幾何學(xué)。
圖8例示日常情景中的折射效果。
考慮圖1中所描繪的圖形系統(tǒng)。該系統(tǒng)由向幾何處理子系統(tǒng)101發(fā)送圖形命令的主處理器100構(gòu)成。幾何處理器101也可以是作為主處理器100所執(zhí)行的一部分功能包含在主處理器中的,而不一定是一個(gè)物理上或邏輯上的獨(dú)立實(shí)體。在較佳實(shí)施例中,光柵生成子系統(tǒng)102接收一個(gè)原語(yǔ)流。與本發(fā)明有關(guān)的這一原語(yǔ)流的子集由頂點(diǎn)定義三角形構(gòu)成。對(duì)本發(fā)明的數(shù)據(jù)流的擴(kuò)充的詳細(xì)說(shuō)明如下。
在處理該數(shù)據(jù)流時(shí),光柵發(fā)生子系統(tǒng)102生成多個(gè)象素,然后將它們送到幀緩沖器103,通常將一個(gè)象素的可顯示部分導(dǎo)向視頻隨機(jī)存取存儲(chǔ)器(VRAM)104而將指定給Z緩沖器、特征緩沖器等的非顯示部分則導(dǎo)向動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)105。RAMDAC106從VRAM104接收串行掃描的數(shù)據(jù),并將數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換成供CRT監(jiān)視器107使用的模擬控制信號(hào)。
本發(fā)明的較佳實(shí)施例為光柵發(fā)生子系統(tǒng)102的一部分。圖2示出光柵發(fā)生子系統(tǒng)的細(xì)節(jié)。輸入級(jí)200接收來(lái)自幾何處理器101的數(shù)據(jù),并處理一切子系統(tǒng)間的通信協(xié)議。初始化級(jí)201計(jì)算用在三角形插值算法中的部分積。這可包括作為本發(fā)明的一部分的位移矢量的分量。插值器202響應(yīng)初始化級(jí)201提供的部分積并生成多個(gè)供修正邏輯203操作的象素。下面描述作為本發(fā)明的一部分而引入的新概念—位移矢量。修正邏輯203執(zhí)行分段操作、布爾運(yùn)算、混色與Z比較。存儲(chǔ)器控制器204起光柵發(fā)生子系統(tǒng)102與幀緩沖器103之間接口的作用,生成用于包括幀緩沖器103在內(nèi)的多個(gè)VRAM104與DRAM105模塊的標(biāo)準(zhǔn)控制信號(hào)。
在所描述的實(shí)施例中,我們已經(jīng)示出了以超大規(guī)模集成(VLSI)為基礎(chǔ)的解決方案。還設(shè)計(jì)了包含以輔助處理器為基礎(chǔ)的解決方案的其它實(shí)施例。例如,可將一個(gè)通用處理器連接到光柵發(fā)生子系統(tǒng)102上來(lái)執(zhí)行分配給圖2中的方框的一個(gè)或多個(gè)任務(wù)。以處理器為基礎(chǔ)的系統(tǒng)勝過(guò)大量使用VLSI的方案的相對(duì)優(yōu)點(diǎn)為增加了靈活性與通用性。為了減少圖中的混亂與復(fù)雜性,我們只選擇了使用VLSI的方案加以例示。
在已經(jīng)建立了本發(fā)明的來(lái)龍去脈的情況下,我們提出若干實(shí)現(xiàn)替代解決方案的替代實(shí)施例,其中在速度、精度與系統(tǒng)資源之間作出了折衷。在上文物理背景部分引用的參考資料中說(shuō)明折射現(xiàn)象的物理學(xué)基礎(chǔ)。第一種解決方案(性能最快、精度最低)在這一算法中,一種透明物質(zhì)是作為一個(gè)單一的表面逼近的。從而,全部折射現(xiàn)象都約簡(jiǎn)為一種表面邊界效應(yīng)。在圖3中,一個(gè)透明目標(biāo)的同一三角片的兩種型式示出一個(gè)帶條紋的參照背景上。用已有技術(shù)方法繪制的圖3a中的三角形301的圖象是以單位折射率為基礎(chǔ)生成的。在圖3c中,透過(guò)三角形302見到的條紋響應(yīng)一個(gè)非單位折射率而移位了,如用本發(fā)明可能做到的。圖3b描繪存在非單位折射率時(shí)這一情況的側(cè)視圖。作為折射的結(jié)果,光線被彎折了。與三角形302的一個(gè)頂點(diǎn)相關(guān)聯(lián)的數(shù)據(jù)列出在圖3d中。
幾何處理器101將名義上包含作為一個(gè)RGB三元組的色彩、透明度α(A)及位置數(shù)據(jù)X、Y、Z的三角形的坐標(biāo)送至光柵發(fā)生子系統(tǒng)102。此外,與三角形302的各頂點(diǎn)a、b與c相關(guān)聯(lián)的(特別是作為本發(fā)明的一部分)有一個(gè)位移矢量[OX,OY]。這三個(gè)位移矢量(每個(gè)頂點(diǎn)一個(gè))以與Phong上色時(shí)處理用的頂點(diǎn)法向矢量相同的方式插值到三角形的區(qū)域上。在待描繪的一個(gè)特定的象素上,插入的位移矢量是用于控制象素移動(dòng)機(jī)構(gòu)去讀取與折射透過(guò)的光相對(duì)應(yīng)的正確幀緩沖器值的。
在本方案中,系統(tǒng)軟件(應(yīng)用程序或應(yīng)用程序接口)負(fù)責(zé)提供正確的位移矢量,并且?guī)缀翁幚砥?01負(fù)責(zé)響應(yīng)作用在目標(biāo)上的幾何變換矩陣中的改變,變換位移矢量。
在圖3所示的例中,位移矢量是在一定程度上指向右側(cè)的。位移矢量指向經(jīng)過(guò)折射彎折的方向。在繪制三角形302時(shí),對(duì)于三角形上的一個(gè)給定的象素,讀取該給定象素右側(cè)的一個(gè)象素的象素?cái)?shù)據(jù),并將其與來(lái)自該給定的象素的數(shù)據(jù)相混合。雖然我們所關(guān)注的光線是在圖3b中所示的相反方向上傳播的,由于利用了幾何學(xué)與物理學(xué)的可逆性,因此這一構(gòu)造是正確的。
將折射作為一種表面性質(zhì)處理的這一方法的優(yōu)點(diǎn)在于它既快速又簡(jiǎn)單,但它需要主處理器100與幾何處理器101的專門處理來(lái)計(jì)算及變換位移矢量。由于將折射用一種表面現(xiàn)象模型來(lái)逼近而會(huì)出現(xiàn)不精確性。折射實(shí)際上是一種整體現(xiàn)象,在能夠精確地逼近更復(fù)雜的目標(biāo)以前,必須對(duì)物質(zhì)的厚度與表面法線有所了解。第二種解決方案(精確度較高但性能較慢)在本實(shí)施例中,通過(guò)計(jì)入透射目標(biāo)的厚度而犧牲某些性能來(lái)?yè)Q取較精確的折射模型。在圖4中提出了這一配置的側(cè)視圖。假定目標(biāo)的兩個(gè)表面401與402是平行的,但是表面片之間的目標(biāo)厚度不要求保持不變。雖然這是物理上矛盾的假設(shè),但用這種逼近有可能得到滿意的視覺(jué)效果。
通過(guò)下述步驟便能完成確定適當(dāng)?shù)奈灰剖噶康姆椒◤暮笙蚯皩?duì)目標(biāo)的三角形進(jìn)行排序。這一操作可由主處理器100或幾何處理器101或兩者的一定組合執(zhí)行。
將背面的多邊形(三角形)繪制進(jìn)一個(gè)通常位于DRAM105中的Z緩沖器中。
這前兩步驟可通過(guò)兩次繪制目標(biāo)來(lái)完成,第一次只繪背面的三角形,第二次只繪前面的。PHIGS圖形編程界面提供這種選擇性繪制的工具。結(jié)果是將三角形402(表示背面)寫入一個(gè)Z緩沖器中。
在對(duì)透射矢量408進(jìn)行插值的同時(shí),繪制圖象的正面。這一插值采取對(duì)一個(gè)二維位移矢量501進(jìn)行插值的方式。請(qǐng)看圖5。矢量408是用式(2)計(jì)算的。幾何處理器能夠?yàn)楦黜旤c(diǎn)計(jì)算一個(gè)矢量408,然后便能對(duì)這些矢量來(lái)進(jìn)行插值提供用于折射目標(biāo)的前面三角形401上的一個(gè)給定的象素的矢量408。
對(duì)于前面三角形401上的一個(gè)給定的象素,沿透射矢量408在XY平面上的投影(501)插值。對(duì)于沿投影矢量的各象素,執(zhí)行一次插值的Z值與先前繪制進(jìn)幀緩沖器103中的Z值的比較。當(dāng)插入的Z值在一個(gè)給定的ε范圍內(nèi)等于幀緩沖器中的值時(shí),便停止插值而用當(dāng)前象素的色彩作為進(jìn)行混合的色彩。這便是矢量408與先前繪制的表面402的交點(diǎn)。
圖5中描述投影操作。投影501從象素502一直到503、504等。對(duì)于每一個(gè)象素502、503、504…,將Z緩沖器(幀緩沖器103的一部分)中的值與經(jīng)過(guò)插值而得的Z值進(jìn)行比較。繼續(xù)這一插值處理直到插入的值在一個(gè)給定的ε的范圍內(nèi)等于Z緩沖器值,或者到達(dá)當(dāng)前窗口的邊為止。后一個(gè)終止條件防止無(wú)限的搜索。這一條件的一個(gè)原因是一個(gè)象素被遮斷了,如下面討論的。對(duì)于圖5中的布局,透射矢量408的經(jīng)插值后的Z值在象素504上等于Z緩沖器值。從而象素504表示透射矢量408與透射目標(biāo)的背面402的相交位置。
當(dāng)通過(guò)一個(gè)目標(biāo)的透射使本來(lái)遮住的一個(gè)目標(biāo)成為可見時(shí),會(huì)出現(xiàn)一個(gè)潛在的問(wèn)題。例如,如果在一個(gè)平面的前面有一個(gè)細(xì)的園柱體,并且在該圓柱體的后面有一種折射的物質(zhì),則在該園柱體正后方的象素有可能通過(guò)折射物質(zhì)而看見。在這一情況中,折射光線所需要的色彩信息便不能得到。這時(shí)可以選擇某種中性的背景色,或采用沿插值投影矢量的鄰接象素的色彩。減輕這一問(wèn)題的適當(dāng)行動(dòng)取決于環(huán)境。因此,在不能得到一個(gè)象素的信息時(shí),本發(fā)明允許用戶選擇作法。第三種解決方案(最精確但是最慢)第三實(shí)施例對(duì)第二實(shí)施例的精度改進(jìn)在于去掉了平行的正與背目標(biāo)表面的限制。目標(biāo)的幾何形狀是不受限制的,并且目標(biāo)的厚度及表面法線可以變化。
計(jì)算折射的過(guò)程從上述第二替代方法的相同的三個(gè)步驟開始。
從后到前對(duì)物體的三角形進(jìn)行排序。
將背面的多邊形(三角形)繪入一個(gè)備用的Z緩沖器中,并用幀緩沖器存儲(chǔ)法線。繪制前面的三角形并對(duì)透射矢量408進(jìn)行插值。
沿透射矢量在XY平面上的投影501插值。對(duì)于沿投影矢量的每一個(gè)象素執(zhí)行一次插值的Z值與幀緩沖器中的Z值的比較。當(dāng)插值的Z值超過(guò)幀緩沖器中的值時(shí)便停止插值。(前面的步驟與第二解決方案相同)計(jì)算從折射介質(zhì)透射出來(lái)再回到周圍介質(zhì)406中的矢量。這一計(jì)算是利用對(duì)式(2)中給出的透射矢量的公式的逼近來(lái)完成的。再一次沿透射矢量406的投影插值,將插值所得的Z值與讀自相應(yīng)的Z緩沖器單元的Z值進(jìn)行比較。到達(dá)一個(gè)Z交叉點(diǎn)時(shí),讀取幀緩沖器中的色彩。如果在找到一個(gè)目標(biāo)以前便到達(dá)了當(dāng)前窗口的邊,便采用事先設(shè)定的環(huán)境彩色。然后在最后的混色中采用找到的值(或環(huán)境色彩)。
雖然已經(jīng)作為包含一個(gè)幾何處理器前端的一個(gè)系統(tǒng)的一部分描述了本發(fā)明,但這只是為了示例性目的。并不要求存在獨(dú)立的幾何處理器。任何進(jìn)行有限的計(jì)算的單一裝置足以作為計(jì)算裝置。
提供任意象素移動(dòng)的機(jī)構(gòu)可容易地用在其它應(yīng)用中,諸如圖象處理。雖然我們考慮的是各向同性的均勻介質(zhì)中的折射現(xiàn)象,但這些概念也能推廣到更復(fù)雜的光物理學(xué)中,諸如各向異性介質(zhì)。
從上面的描述中應(yīng)能理解,在本發(fā)明的較佳實(shí)施例中可進(jìn)行各種修正與改變而仍不脫離其本質(zhì)。這一描述只是為了示例的目的而不應(yīng)視為一種限制。本發(fā)明的范圍只受以下的權(quán)利要求書的限制。
權(quán)利要求
1.一種用于生成多個(gè)三維目標(biāo)的二維表示的系統(tǒng),所述多個(gè)目標(biāo)中至少一個(gè)為具有非單位折射率的折射目標(biāo),該系統(tǒng)包括用于根據(jù)所述折射率生成一個(gè)位移矢量的裝置;用于通過(guò)用從一個(gè)當(dāng)前象素位置位移到作為所述位移矢量的函數(shù)的一個(gè)第二象素位置上的一個(gè)第二象素值修正所述當(dāng)前象素值,為所述折射目標(biāo)的各象素位置確定一個(gè)當(dāng)前象素值,而繪制所述折射目標(biāo)的裝置。
2.權(quán)利要求1的系統(tǒng),其特征在于所述描繪裝置包括將所述折射目標(biāo)分成供繪制的多個(gè)多邊形的裝置;用于從一個(gè)觀察點(diǎn)的最遠(yuǎn)處到最近處排列所述多個(gè)多邊形的次序的裝置;繪制所述排序的多邊形的裝置;繪制最接近所述觀察點(diǎn)的多邊形的裝置,其中來(lái)自所述繪制的多邊形的象素?cái)?shù)據(jù)是與來(lái)自根據(jù)所述位移矢量的所述最接近的多邊形的象素?cái)?shù)據(jù)組合的。
3.權(quán)利要求2的系統(tǒng),其特征在于還包括用于將所述位移矢量投影在X-Y平面上的裝置以及用于在所述矢量上確定所述矢量與所述背面的平面的交點(diǎn)的裝置。
4.一種用于在顯示設(shè)備上描繪三維目標(biāo)的二維圖象的系統(tǒng),所述顯示設(shè)備包括組織成具有多個(gè)列和多個(gè)行的多個(gè)象素,所述三維目標(biāo)中包括至少一個(gè)具有非單位折射率的折射目標(biāo),該系統(tǒng)包括存儲(chǔ)裝置,用于存儲(chǔ)表示所述三維目標(biāo)的數(shù)據(jù);幀緩沖器裝置,用于存儲(chǔ)表示所述二維圖象的數(shù)據(jù),所述幀緩沖器包含與所述多個(gè)象素中的每一個(gè)相對(duì)應(yīng)的一個(gè)存儲(chǔ)單元;初始化裝置,用于確定指示所述折射目標(biāo)的所述折射率的一個(gè)位移矢量;繪制裝置,用于為所述折射目標(biāo)中的多個(gè)象素中的每一個(gè)確定一個(gè)值,所述繪制裝置根據(jù)由所述位移矢量所指示的一個(gè)位置上的一個(gè)第二象素值修正所述象素值。
5.權(quán)利要求4的系統(tǒng),其特征在于所述描繪裝置通過(guò)將所述位移矢量投影在X-Y平面上,并相對(duì)于一個(gè)早先繪制的多邊形表面的深度值測(cè)試一個(gè)插值的深度值及選擇與所述深度值匹配的所述第二象素位置,而確定所述第二象素位置。
6.權(quán)利要求4的系統(tǒng),其特征在于還包括用于計(jì)算從所述折射目標(biāo)出來(lái)的一個(gè)透射矢量的裝置;用于沿所述透射矢量插值直到所述透射矢量與一個(gè)繪制的多邊形相交的裝置;以及在所述交點(diǎn)上選擇一個(gè)象素值,用于與所述當(dāng)前象素組合。
7.一種繪制具有非單位折射率的一種物質(zhì)的物體的圖象的方法,該物體是由具有多個(gè)頂點(diǎn)的多個(gè)多邊形表示的,該方法包括下述步驟將表示所述物體由折射引起的位移的一個(gè)位移矢量與所述目標(biāo)的各個(gè)所述頂點(diǎn)相關(guān)聯(lián);變換所述目標(biāo)與相關(guān)聯(lián)的位移矢量;通過(guò)將一個(gè)當(dāng)前象素值與所述變換后的位移矢量所指示的一個(gè)位置上的一個(gè)象素值混合而生成多個(gè)象素來(lái)表示所述目標(biāo)中的各多邊形。
8.一種描繪具有菲單位折射率的物質(zhì)的一個(gè)目標(biāo)的二維圖象的方法,該物體是以三維方式的、由具有多個(gè)頂點(diǎn)的多個(gè)多邊形表示的,該方法包括下述步驟將表示折射效應(yīng)的一個(gè)位移矢量與所述頂點(diǎn)中的每一個(gè)相關(guān)聯(lián);從一個(gè)觀察點(diǎn)的一個(gè)最深的背面的多邊形到一個(gè)最近的前面的多邊形的位移排序該多個(gè)多邊形;繪制這些多邊形;在插值位移矢量并將一個(gè)當(dāng)前圖象象素與該插值的矢量所指示的一個(gè)第二象素相混合的同時(shí),第二次繪制這些多邊形。
9.權(quán)利要求8的方法,其特征在于由所述描繪前面的多邊形的步驟所執(zhí)行的插值是通過(guò)投影該位移矢量直到所述投影與所述早先描繪的多邊形相交為止來(lái)完成的。
10.權(quán)利要求8的方法,其特征在于還包括下述步驟計(jì)算從所述目標(biāo)透射到一種周圍介質(zhì)中的一個(gè)矢量;對(duì)所述透射矢量進(jìn)行插值直到它與所述描繪的多邊形之一相交為止;通過(guò)混合來(lái)自所述原象素的數(shù)據(jù)與插值的象素位置的數(shù)據(jù)而繪制所述象素。
11.權(quán)利要求9的方法,其特征在于還包括下述步驟計(jì)算從所述目標(biāo)透射到一種周圍介質(zhì)中的一個(gè)矢量;插值所述透射矢量直到它與所述描繪的多邊形之一相交為止;通過(guò)混合來(lái)自所述原象素的數(shù)據(jù)與插值的象素位置的數(shù)據(jù)而描繪所述象素。
12.一種用于生成多個(gè)三維目標(biāo)的一個(gè)二維表示的系統(tǒng),所述多個(gè)目標(biāo)中至少一個(gè)是具有非單位折射率的折射目標(biāo),該系統(tǒng)工作在具有一個(gè)處理器及存儲(chǔ)器的計(jì)算機(jī)系統(tǒng)中,該處理器根據(jù)所述折射目標(biāo)的所述非單位折射率為所述折射目標(biāo)的各頂點(diǎn)確定一個(gè)位移矢量,該系統(tǒng)包括用于通過(guò)用從一個(gè)當(dāng)前象素位置位移到作為所述位移矢量的一個(gè)函數(shù)的一個(gè)第二象素位置上的一個(gè)第二象素值來(lái)修正所述當(dāng)前象素值,而為所述折射目標(biāo)的各象素位置確定一個(gè)當(dāng)前象素值,而描繪所述折射目標(biāo)的裝置。
13.權(quán)利要求12的方法,其特征在于所述描繪裝置包括插值裝置,用于插值所述頂點(diǎn)位移矢量而為所述折射目標(biāo)中的所述當(dāng)前象素提供一個(gè)位移矢量。
全文摘要
一種用于繪制具有真實(shí)的折射屬性的透明目標(biāo)的系統(tǒng)與方法。該系統(tǒng)用一個(gè)非單位的折射率調(diào)整目標(biāo)的象素值,以便得出的圖像逼近一個(gè)折射圖像。根據(jù)計(jì)算的折射值復(fù)制相鄰的象素值并與正在描繪的象素混合。折射可以作為一種表面效應(yīng)、作為具有平行的正與背面的一個(gè)目標(biāo)的一種性質(zhì)、以及作為具有非平行對(duì)側(cè)面的一個(gè)任意目標(biāo),用位移矢量來(lái)逼近。較復(fù)雜的表示法提供折射圖像的改進(jìn)的逼近。得到的圖像提供該折射圖像的更逼真的視圖。
文檔編號(hào)G06T15/50GK1121225SQ95101688
公開日1996年4月24日 申請(qǐng)日期1995年1月24日 優(yōu)先權(quán)日1994年2月4日
發(fā)明者A·D·羅文, J·S·施彭澤, D·C·坦倫包姆 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司