亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

三維形狀繪制設(shè)備和三維形狀繪制方法

文檔序號:6654890閱讀:225來源:國知局
專利名稱:三維形狀繪制設(shè)備和三維形狀繪制方法
技術(shù)領(lǐng)域
本發(fā)明涉及三維形狀繪制設(shè)備和三維形狀繪制方法,特別是涉及用于通過使用Z緩沖器算法用距離視點的深度值繪制三維形狀的三維形狀繪制設(shè)備和三維形狀繪制方法。
背景技術(shù)
已存在通過將Z緩沖器算法用作隱藏面消除系統(tǒng)繪制三維形狀的三維形狀顯示設(shè)備。還存在用于提高這種三維形狀顯示設(shè)備的繪制處理速度的技術(shù),例如,其中每個像素包含一個位標志存儲器的技術(shù)(例如,專利文獻1)和將負反饋Z緩沖器用于存儲多個像素的深度值中距離視點最遠的像素和距離視點最近的像素的深度值的技術(shù)(例如,專利文獻2)。
圖7為示出專利文獻2中所述的三維形狀繪制設(shè)備200的配置的方框圖。圖8為示出用于顯示由圖7所示的三維形狀繪制設(shè)備200繪制的三維形狀的屏幕214、以及ZR緩沖器205的配置的示圖。
在圖7中,圖像提供部分208向圖像制作部分201的像素繪制部分209和繪制確定部分210提供要繪制的多邊形的數(shù)據(jù)(下文稱為多邊形數(shù)據(jù))。圖像制作部分201將該多邊形數(shù)據(jù)轉(zhuǎn)換成像素數(shù)據(jù)。
如圖8中所示,屏幕214被劃分成M×N個塊。作為所劃分圖像信號的一部分的塊213包括K×L個像素。ZR緩沖器205保存各個塊的MAXZ和MINZ。
Z主緩沖器206存儲所有Z值(深度值)。ZR緩沖器205保存圖8所示的各個塊的最大Z值(MAXZ)211和最小Z值(MINZ)。
像素繪制部分209向繪制確定部分210輸出要繪制的像素的Z值,還輸出指示該像素的位置的X和Y坐標。僅基于由ZR緩沖器205保存的Z值,或基于由ZR緩沖器205保存的Z值和由Z主緩沖器206保存的Z值,繪制確定部分210確定是否要繪制該像素。
幀緩沖器203保存已由確定部分210確定要繪制的像素。調(diào)色板電路204將由幀緩沖器203保存的像素的數(shù)據(jù)轉(zhuǎn)換成指示實際亮度的亮度數(shù)據(jù)。調(diào)色板電路204向顯示部分207提供要顯示的圖像。
當專利文獻2中所述的常規(guī)三維形狀繪制設(shè)備繪制新的三維形狀時,將屏幕214的塊213的MAXZ 211和MINZ 212與要新繪制的像素的Z值相比較。如果要新繪制的像素的Z值大于MAXZ 211,則三維形狀繪制設(shè)備200終止繪制該像素。
另一方面,如果要新繪制的像素的Z值小于MINZ 212,則三維形狀繪制設(shè)備200將新Z值寫入Z主緩沖器206中,并將新像素值寫入幀緩沖器203中。另外,三維形狀繪制設(shè)備200用新的Z值改寫MINZ 212。
如果要新繪制的像素的Z值介于MAXZ 211和MINZ 212之間,則三維形狀繪制設(shè)備200引用Z主緩沖器206,并將要繪制的像素的Z值與由Z主緩沖器206保存的Z值相比較。
如果要新繪制的像素的Z值小于由Z主緩沖器206保存的Z值,則三維形狀繪制設(shè)備200用新Z值改寫由Z主緩沖器206保存的Z值。然后,三維形狀繪制設(shè)備200在由Z主緩沖器206保存的Z值中檢查屬于塊213的所有Z值,然后將屬于塊213的Z值中最大的Z值設(shè)置成MAXZ 211。
如上所述,專利文獻2所述的常規(guī)三維形狀繪制設(shè)備僅在要新繪制的像素的Z值介于像素定位其中的塊的最大Z值和最小Z值之間時,才訪問Z主緩沖器206。結(jié)果,減少了訪問Z主緩沖器206的頻率。
日本專利公開號62-42281[專利文獻2]日本專利公開號8-161526(第5-7頁,圖1和4)發(fā)明內(nèi)容要由本發(fā)明解決的問題然而,雖然專利文獻2中所述的常規(guī)三維形狀繪制設(shè)備能消除對每一像素都引用Z主緩沖器的必要性,但常規(guī)三維形狀繪制設(shè)備仍需要讀取塊中所有Z值,以在ZR緩沖器中所保存的最大Z值被更新時確定一值為最大Z值。另外,當執(zhí)行確定最大值的計算時,常規(guī)設(shè)備不能處理下一像素。這中斷了設(shè)備的繪制處理。結(jié)果,該設(shè)備不能高速繪制三維形狀。
因此,本發(fā)明的一個目的在于提供一種能高速繪制三維形狀的三維形狀繪制設(shè)備和三維形狀繪制方法。
問題的解決方法本發(fā)明是用于通過使用Z緩沖器算法繪制三維形狀的三維形狀繪制設(shè)備,該三維形狀繪制設(shè)備包括深度值計算部分,用于計算要繪制的像素的深度值;高位Z緩沖存儲器,用于保存要顯示成正面的像素的深度值的高位比特,該深度值為已由深度值計算部分計算的深度值;低位Z緩沖存儲器,用于保存要顯示成正面的像素的深度值的低位比特該深度值為已由深度值計算部分計算的深度值;高位比特比較部分,用于讀取由高位Z緩沖存儲器保存的高位比特、并將該高位比特與由深度值計算部分所計算的深度值的高位比特相比較;低位比特比較部分,用于在由高位比特比較部分執(zhí)行比較的結(jié)果顯示由深度值計算部分計算的深度值的高位比特具有與由高位Z緩沖存儲器保存的深度值的高位比特相同的值時,讀取由低位Z緩沖存儲器保存的深度值并將該低位比特與由深度值計算部分計算的深度值的低位比特相比較;和記錄更新部分,用于在由高位比特比較部分執(zhí)行的比較結(jié)果顯示由所述深度值計算部分計算的深度值的高位比特所指示的深度淺于由高位Z緩沖存儲器保存的深度值的高位比特所指示的深度時,通過使用由深度值計算部分計算的深度值更新由高位Z緩沖存儲器保存的深度值的高位比特和由低位Z緩沖存儲器保存的深度值的低位比特,并用于在由低位比特比較部分執(zhí)行的比較顯示由所述深度值計算部分計算的深度值的低位比特所指示的深度淺于由低位Z緩沖存儲器保存的深度值的低位比特所指示的深度時,通過使用由深度值計算部分計算的深度值更新由低位Z緩沖存儲器保存的低位比特。
本發(fā)明還是用于通過使用Z緩沖器算法繪制三維形狀的三維形狀繪制方法,該三維形狀繪制方法包括下列步驟計算要繪制的像素的深度值;從保存要顯示為正面的像素的深度值的高位比特的高位Z緩沖存儲器中讀取高位比特,該深度值為已在計算深度值的步驟中計算的深度值之一,并將已讀取的高位比特與在計算深度值的步驟中計算的深度值的高位比特相比較;當在計算深度值的步驟中計算的深度值的高位比特在比較高位比特的步驟中被確定為具有與由高位Z緩沖存儲器保存的深度值的高位比特相同的值時,從保存要顯示為正面的像素的深度值的低位比特的低位Z緩沖存儲器讀取低位比特,該深度值為已在計算深度值的步驟中計算的深度值之一,并將已讀取的低位比特與在計算深度值的步驟中計算的深度值的低位比特相比較;并當在計算深度值的步驟中計算的深度值的高位比特所指示的深度在比較高位比特的步驟中被確定為淺于由高位Z緩沖存儲器保存的深度值的高位比特所指示的深度時,通過使用由計算深度值的步驟計算的深度值更新由高位Z緩沖存儲器保存的深度值的高位比特和由低位Z緩沖存儲器保存的深度值的低位比特,而當在計算深度值的步驟計算的深度值的低位比特所指示的深度在比較低位比特的步驟中被確定為淺于由低位Z緩沖存儲器保存的深度值的低位比特所指示的深度時,通過使用由計算深度值的步驟計算的深度值更新由低位Z緩沖存儲器保存的深度值的低位比特。
發(fā)明效果根據(jù)本發(fā)明,提供了一種能高速繪制三維形狀的三維形狀繪制設(shè)備和三維形狀繪制方法。


圖1為示出根據(jù)本發(fā)明的一個實施例的三維形狀繪制設(shè)備的配置的功能塊圖。
圖2為示出由高位Z緩沖存儲器102和低位Z緩沖存儲器104保存的深度值的示圖。
圖3為示出圖1所示的三維形狀繪制設(shè)備的操作的流程圖。
圖4為示出在圖3所示的子例程步驟S19的詳細過程的流程圖。
圖5為示出三維形狀繪制設(shè)備的示例性硬件配置的方框圖。
圖6為示出三維形狀繪制設(shè)備的示例性硬件配置的方框圖。
圖7為示出專利文獻2中所述的三維形狀繪制設(shè)備200的配置的方框圖。
圖8示意地示出用于顯示由圖7的三維形狀繪制設(shè)備繪制的三維形狀的屏幕214和ZR緩沖器205的配置。
標號說明101 繪制部分102 高位Z緩沖存儲器103 圖像存儲器104 低位Z緩沖存儲器105 高位比特比較部分106 低位比特比較部分107 高位Z緩沖器清除部分108 低位Z緩沖器清除部分110 深度值計算部分111 亮度和材料計算部分121 CPU122 高速圖形存儲器123 低速圖形存儲器201 圖像制作部分203 繪制處理部分203 幀緩沖器204 調(diào)色板電路205 ZR緩沖器206 Z主緩沖器207 顯示部分208 圖像提供部分209 像素繪制部分210 繪制確定部分
211 塊中的最大Z值212 塊中的最小Z值213 從劃分屏幕得到的塊的例子214 屏幕401,402 圖403 構(gòu)成圖的像素具體實施方式
下面將參照

本發(fā)明的一個實施例。
圖1為示出根據(jù)本發(fā)明實施例的三維形狀繪制設(shè)備10的配置的功能塊圖。在圖1中,三維形狀繪制設(shè)備10包括繪制部分10、高位Z緩沖存儲器102、圖像存儲器103、低位Z緩沖存儲器104、高位比特比較部分105、低位比較部分106、高位Z緩沖器清除部分107和低位Z緩沖器清除部分108。
圖像存儲器103存儲由繪制部分101繪制的圖像,所述圖像的隱藏面已被消除。高位Z緩沖存儲器102存儲要顯示為圖像正面的像素的深度值。具體來說,高位Z緩沖存儲器102存儲圖像存儲器103中所存儲的各像素的深度值的高位比特。低位Z緩沖存儲器104也存儲要顯示為正面的像素的深度值。具體來說,低位Z緩沖存儲器104存儲圖像存儲器103中所存儲的各像素的深度值的低位比特。例如,在深度值表示為24比特的情況下,高位Z緩沖存儲器102保存深度值的高位8比特,而低位Z緩沖存儲器104保存深度值的低位16比特。
由定時控制部分109控制的是當前一顯示完成時繪制下一顯示要示出的圖的定時。具體來說,在應為下一顯示繪制圖時,定時控制部分109指示高位Z緩沖器清除部分107和低位Z緩沖存儲器104初始化圖像存儲器103、高位Z緩沖存儲器102和低位Z緩沖存儲器104。定時控制部分109還指示繪制部分101在應為下一顯示繪制圖時開始繪制圖。
響應于來自定時控制部分109的指令,高位Z緩沖器清除部分107初始化高位Z緩沖存儲器102和圖像存儲器103。低位Z緩沖器清除部分108響應于來自定時控制部分109的指令初始化低位Z緩沖存儲器104。
高位比特比較部分105將從下述深度值計算部分110接收到的深度值的高位比特與從高位Z緩沖存儲器102讀取的深度值的高位比特相比較。高位比特比較部分105從高位Z緩沖存儲器102讀取的低位比特是位于與深度值計算部分110已作計算像素相同的位置的像素的深度值的低位比特。然后,高位比特比較部分105向下述讀取控制部分112通知兩組高位比特的比較結(jié)果。
低位比特比較部分106將從下述深度值計算部分110接收到的深度值的低位比特與從低位Z緩沖存儲器104讀取的深度值的低位比特相比較。低位比特比較部分106從低位Z緩沖存儲器104讀取的低位比特是位于與深度值計算部分110已作計算像素相同的位置的像素的深度值的低位比特。然后,低位比特比較部分106向下述讀取控制部分112通知兩組低位比特的比較結(jié)果。
繪制部分101包括深度值計算部分110、亮度和材料計算部分111、讀取控制部分112和寫控制部分113。繪制部分101將多邊形數(shù)據(jù)轉(zhuǎn)換成像素數(shù)據(jù)。
深度值計算部分110計算像素的深度值。然后,深度值計算部分110將所計算的深度值發(fā)送至高位比特比較部分105、低位比特比較部分106和寫控制部分113。另外,深度值計算部分110生成用于通知已計算深度值的計算通知信號,并將該信號發(fā)送至讀取控制部分112。注意,高位比特和低位比特、連同指示深度值位置的位置信息一起被分別發(fā)送至高位比特比較部分105和低位比特比較部分106。位置信息可以是例如坐標。下面在本實施例中,除非另行說明,深度值計算部分110將所計算的深度值和位置信息一起發(fā)送至高位比特比較部分105、低位比特比較部分106和控制部分113。
在接收到計算通知信號時,讀取控制部分112指示高位比特比較部分105將由深度值計算部分110計算的深度值的高位比特與由高位Z緩沖存儲器102保存的深度值的高位比特相比較。當由高位比特比較部分105執(zhí)行的兩組高位比特的比較結(jié)果顯示由深度值計算部分110計算的深度值的高位比特與由高位Z緩沖存儲器102保存的深度值的高位比特相同時,讀取控制部分112指示低位比特比較部分106將由深度值計算部分110計算的深度值的低位比特與由低位Z緩沖存儲器104保存的深度值的低位比特相比較。
基于來自高位比特比較部分105和低位比特比較部分106的通知,讀取控制部分112是否要更新由高位Z緩沖存儲器102和低位Z緩沖存儲器104保存的深度值。當由高位比特比較部分105執(zhí)行的比較的結(jié)果顯示由深度值計算部分110計算的深度值的高位比特所指示的深度淺于由高位Z緩沖存儲器102保存的深度值的高位比特所指示的深度時,讀取控制部分112指示寫控制部分113用由深度值計算部分110計算的深度值的高位比特和低位比特更新由高位Z緩沖存儲器102保存的深度值的高位比特和由低位Z緩沖存儲器104保存的低位比特。
此外,當由低位比特比較部分106執(zhí)行的比較的結(jié)果顯示由深度值計算部分110計算的深度值的低位比特所指示的深度淺于由低位Z緩沖存儲器104保存的深度值的低位比特所指示的深度時,讀取控制部分112指示寫控制部分113用由深度值計算部分110計算的深度值更新由低位Z緩沖存儲器104保存的深度值的低位比特。
響應于來自讀取控制部分112的指令,寫控制部分113只更新由低位Z緩沖存儲器104保存的低位比特,或既更新高位Z緩沖存儲器102保存的高位比特又更新由低位Z緩沖存儲器104保存的低位比特。當寫控制部分113更新由高位Z緩沖存儲器102或低位Z緩沖存儲器104保存的這一記錄時,寫控制部分113指示亮度和材料計算部分111計算亮度值和材料值、并將這些值寫入圖像存儲器103中。
響應于來自寫控制部分113的指令,亮度和材料計算部分111計算例如指示像素亮度的亮度值和指示像素的表面紋理的材料值。然后,亮度和材料計算部分111將所計算的亮度值和材料值寫入圖像存儲器103中。
圖2和3是示出圖1所示的三維形狀繪制設(shè)備10的操作的流程圖。首先,當前一顯示的顯示過程完成時,定時控制部分109指示高位Z緩沖器清除部分107初始化圖像存儲器和高位Z緩沖存儲器102。然后,高位Z緩沖器清除部分107初始化高位Z緩沖存儲器102和圖像存儲器103,并用初始值改寫由高位Z緩沖存儲器102和圖像存儲器保存的值(步驟S11)。初始值是例如指示離視點最遠的點的深度值。下面將說明其中以十六進制表示深度值,且指示最遠點的深度值為24比特的000000H的例子。例如,當高位比特為8比特時,高位Z緩沖器復位部分107通過在步驟S11使用00H來初始化高位Z緩沖存儲器102。
接著,定時控制部分109指示低位Z緩沖器清除部分108初始化低位Z緩沖存儲器104。然后低位Z緩沖器清除部分108初始化低位Z緩沖存儲器104,并用初始值改寫由低位Z緩沖存儲器104保存的值(步驟S12)。例如,當?shù)臀槐忍貫?6比特時,低位Z緩沖器清除部分108通過在步驟S12使用0000H來初始化低位Z緩沖存儲器104。
深度值計算部分110計算構(gòu)成從圖像提供部分(圖中未示出)的三維形狀的各個像素的深度值Znow,并將所計算的值Znow發(fā)送至高位比特比較部分105、低位比特比較部分106和寫控制部分113。深度值計算部分110還將計算通知信號發(fā)送至讀取控制部分112。讀取控制部分112指示高位比特比較部分105將由深度值計算部分110計算的深度值的高位比特與由高位Z緩沖存儲器102保存的深度值的高位比特相比較。
然后,高位比特比較部分105讀取高位比特ZoldHI,即,由高位Z緩沖存儲器102保存的深度值的高位比特(步驟S13),并將高位比特ZoldHI與從深度值計算部分110接收到的高位比特ZnowHI相比較(步驟S14)。然后,高位比特比較部分105向讀取控制部分112通知比較的結(jié)果。
在接收到由高位比特比較部分105執(zhí)行的比較的結(jié)果時,讀取控制部分112根據(jù)比較的結(jié)果確定由深度值計算部分110計算的深度值的高位比特是否與由高位Z緩沖存儲器102保存的深度值的高位比特相同(步驟S15)。在兩組高位比特相同的情況下,即ZnowHI=ZoldHI,不能僅根據(jù)高位比特的比較確定像素之間的位置關(guān)系。因此,讀取控制部分112指示低位比特比較部分106將由深度值計算部分110計算的深度值的低位比特ZnowLo與由低位Z緩沖存儲器104保存的深度值的低位比特相比較。
低位比特比較部分106讀取低位比特ZoldLO,即,由低位Z緩沖存儲器104保存的深度值的低位比特(步驟S16),并將低位比特ZoldLO與從深度值計算部分110接收到的低位比特ZnowLO相比較,并向讀取控制部分112通知比較的結(jié)果(步驟S17)。
讀取控制部分112確定由要新繪制的像素的深度值的低位比特所指示的深度是否淺于由低位Z緩沖存儲器104保存的低位比特所指示的深度(步驟S18)。如果滿足不等式ZnowLO>ZoldLO,即,如果要新繪制的像素位于已繪制像素的前面,則讀取控制部分112進入圖3的步驟S21的過程。如果滿足不等式ZnowLO≤ZoldLO,則不執(zhí)行亮度和材料計算部分111處的過程,然后讀取控制部分112執(zhí)行下一像素的過程,即,進入步驟S13的過程。
在圖3的步驟S21,寫控制部分113將低位比特ZnowLO寫入低位Z緩沖存儲器104。
然后,寫控制部分113指示亮度和材料計算部分111計算亮度值和材料值。然后,亮度和材料值計算部分111計算像素的值Inow,即,亮度值Inow,并將該值寫入圖像存儲器103(步驟S22)。
讀取控制部分112確定是否已完成在屏幕上繪制多邊形(步驟S23)。如果多邊形繪制尚未完成,則讀取控制部分112返回步驟S13處的過程。如果多邊形繪制已完成,即,如果沒有其它圖像數(shù)據(jù)要從圖像提供部分輸出,則讀取控制部分112終止處理。
如果在步驟S15中兩組高位比特不相同,則讀取控制部分112確定要新繪制的像素的深度值的高位比特所指示的深度是否淺于由高位Z緩沖存儲器102保存的高位比特所指示的深度(步驟S19)。如果滿足不等式ZnowHI<ZoldHI,即,如果下一個要新繪制的像素位于已繪制的像素之后,則不執(zhí)行亮度和材料計算部分111處的過程,然后讀取控制部分112執(zhí)行下一像素的過程。在此情況下,讀取控制部分112進入步驟S13的過程。
另一方面,如果滿足不等式ZnowHI>ZoldHI,即,如果要新繪制的像素位于已繪制的像素之前,則讀取控制部分112指示寫控制部分113更新由高位Z緩沖存儲器102和低位Z緩沖存儲器104保存的深度值。寫控制部分113進入圖3的步驟S20中的過程,并將高位比特ZnowHI寫入高位Z緩沖存儲器102。因為在步驟S20之后執(zhí)行的過程與上述過程相同,將省略對其的說明。
圖4為示出由高位Z緩沖存儲器102和低位Z緩沖存儲器104保存的圖401和402的深度值的示圖。在高位Z緩沖存儲器102和低位Z緩沖存儲器104中,像素403均位于相同的坐標點。為了簡化說明,在圖4中省略顯示圖像存儲器103的圖解。
在圖4所示的例子中,因為高位Z緩沖存儲器102保存高位8比特,而低位Z緩沖存儲器104保存低位16比特,高位Z緩沖器清除部分107將由高位Z緩沖存儲器102保存的值初始化成00H,而低位Z緩沖器清除部分108將由低位Z緩沖存儲器104保存的值初始化成0000H。注意,繪制部分101可具有用指示最遠點的值000000H改寫由高位Z緩沖存儲器102和低位Z緩沖存儲器104保存的值的功能,而不具有專用于初始化高位Z緩沖存儲器102和低位Z緩沖器清除部分108的高位Z緩沖器清除部分107和低位Z緩沖器清除部分108。
下面通過取圖4中所示的像素403為例給出說明。首先,高位Z緩沖器清除部分107用初始值00H初始化高位Z緩沖存儲器102,而低位Z緩沖器清除部分108用初始值0000H初始化低位Z緩沖存儲器104。然后,當繪制圖401時,高位比特比較部分105將圖401中像素403的位置的深度值的高位8比特Z401HI與由高位Z緩沖存儲器102保存的初始值00H相比較。比較的結(jié)果顯示Z401HI大于初始值,即,由Z401HI指示的位置在由初始值指示的位置前面。因此,寫控制部分113將Z401HI寫入高位Z緩沖存儲器102中,并將Z401LO寫入低位Z緩沖存儲器104中。亮度和材料計算部分111計算像素403的亮度值和材料值,并將這些值寫入圖像存儲器103中。
接著,當繪制圖402時,高位比特比較部分105將圖402的像素403的位置的深度值的高位8比特Z402HI與由高位Z緩沖存儲器102保存的圖401的像素403的位置的深度值的Z401HI相比較。如果深度值的Z402HI和Z401HI相同,則讀取控制部分112指示低位比特比較部分106對所述深度值的低位比特作比較。然后,低位比特比較部分106將圖402的像素403的位置的深度值的低位16比特Z402LO與由低位Z緩沖存儲器104保存的Z401LO相比較。因為比較的結(jié)果是Z401LO>Z402LO,所以不更新由高位Z緩沖存儲器102、低位Z緩沖存儲器104和圖像存儲器103保存的像素403的值。然后,用于繪制下一像素的過程開始。
如上所述,根據(jù)本實施例,當繪制像素數(shù)據(jù)時,首先只比較深度值的高位比特。只有在深度值的高位比特相同時才比較深度值的低位比特。因為首先只比較深度值的高位比特,所以減少了總線通信量。結(jié)果,實現(xiàn)了三維形狀的快速繪制。注意,總線通信量被表示成對存儲器的訪問次數(shù)和總線寬度的乘積。
根據(jù)本實施例,可減小總線帶寬。因此,即使用有限的總線寬度也能執(zhí)行三維形狀的快速繪制。另外,只有在完成隱藏面消除之后才執(zhí)行像素的繪制。這使得即使用低運算能力也能繪制相當數(shù)量的圖。
本實施例給出其中亮度和材料計算部分111僅在完成深度值的比較之后需要計算時才執(zhí)行計算。然而,該計算可與由深度值計算部分110執(zhí)行的計算同時執(zhí)行。此外,可通過流水線處理執(zhí)行深度值計算部分110、高位比特比較部分105、低位比特比較部分106以及亮度和材料計算部分111中的過程。
本實施例中描述到像素的深度值被表示為十六進制格式的24位,且深度值的初始值為000000H。然而,初始值并不限于此。例如,可以通過將010000H用作指示最遠點的值初始化高位Z緩沖存儲器和低位Z緩沖存儲器。
本實施例中還描述到當用于下一顯示的繪制開始時,高位Z緩沖存儲器和低位Z緩沖存儲器均被初始化。然而,只有高位Z緩沖存儲器可通過使用例如00H或11H的預定初始值初始化。在此情況中,要首先由高位比特比較部分比較的深度值的高位比特總是被寫入高位Z緩沖存儲器。同時,深度值的低位比特被寫入低位Z緩沖存儲器。因此,可以跳過由低位Z緩沖器清除部分執(zhí)行的低位Z緩沖存儲器的初始化。結(jié)果,減少了存儲器通信量。這使得即使用低運算能力也能繪制相當數(shù)量的圖。
注意,本實施例給出其中深度值的高位比特為8比特而深度值的低位比特為16比特,即總共24比特的例子。然而,可任意設(shè)置總比特數(shù)、高位比特數(shù)和低位比特數(shù)。這里,為了減少要從高位Z緩沖存儲器讀取的數(shù)據(jù)量,最好高位比特數(shù)等于或小于低位比特數(shù)。
在本實施例中,當所比較的兩組低位比特相同時,不更新由低位Z緩沖器保存的低位比特。或者,當所比較的兩組低位比特相同時,可以更新由圖像存儲器保存的亮度值和材料值、以及由低位Z緩沖器保存的低位比特。
本實施例中還描述到高位Z緩沖存儲器和低位Z緩沖存儲器是物理上可分離的兩個存儲器。然而,一個存儲器可既用作高位Z緩沖存儲器又用作低位Z緩沖存儲器。在此情況中,將高位比特和低位比特分開記錄在一個存儲器的不同地址處。
如果確定由深度值計算部分計算的深度值的高位比特所指示的深度淺于由高位Z緩沖存儲器保存的深度值的高位比特所指示的深度,則高位比特比較部分可將一標志加到由深度值計算部分計算的深度值的高位比特中,并且如果確定由深度值計算部分計算的深度值的低位比特所指示的深度淺于由低位Z緩沖存儲器保存的深度值的低位比特所指示的深度,則低位比特比較部分可將一標志加到由深度值計算部分計算的深度值的低位比特。這里,當將標記加到由深度值計算部分計算的深度值的高位比特時,寫控制部分可更新由高位Z緩沖存儲器保存的深度值的高位比特和由低位Z緩沖存儲器保存的深度值的低位比特,而當將標記加到由深度值計算部分計算的深度值的低位比特時,寫控制部分可只更新由低位Z緩沖存儲器保存的深度值的低位比特,或者既更新由高位緩沖存儲器保存的深度值的高位比特、又更新由低位Z緩沖存儲器保存的深度值的低位比特。
(例子)下面將說明本發(fā)明的一個例子。圖5為示出三維形狀繪制設(shè)備10的硬件配置的方框圖。三維形狀繪制設(shè)備10包括CPU 121、高速圖形存儲器122和低速圖形存儲器123,CPU 121實現(xiàn)繪制部分101的功能。注意,高位比特比較部分105、低位比特比較部分106、高位Z緩沖器清除部分107、低位Z緩沖器清除部分108和定時控制部分109的功能也由CPU實現(xiàn)。然而,在圖5中,只有繪制部分101作為代表示例示出。
因為圖5的三維形狀繪制設(shè)備10的功能塊圖與上述實施例的圖1相同,所以將圖1用作參考。同樣,因為圖5的三維形狀繪制設(shè)備10的操作與上述實施例的圖2中所示的操作相同,所以將圖2用作參考。
高速圖形存儲器122包括高位Z緩沖存儲器102,并且是例如SRAM(靜態(tài)隨機存取存儲器)或ASIC嵌入存儲器。低速圖形存儲器123包括圖像存儲器103和低位Z緩沖存儲器104,并且是例如DRAM(動態(tài)隨機存取存儲器)。
通過將能進行高速處理的高速圖形存儲器用作比低位Z緩沖存儲器和圖像存儲器更頻繁地受到訪問的高位Z緩沖存儲器,來實現(xiàn)高速處理。因為低位Z緩沖存儲器只需保存深度值的高位8比特,可將高速圖形存儲器的所需尺寸保持得較小。另外,通過在具有大容量但低速度的低速圖形存儲器中包括比高位Z緩沖存儲器較少受到訪問的低位Z緩沖存儲器和圖像存儲器,可以用最少的成本增加來提高三維形狀繪制設(shè)備的處理速度。
在通過使用諸如DSP之類的運算單元繪制三維形狀的情況中,當更新保存在高位Z緩沖存儲器或低位Z緩沖存儲器中的記錄時執(zhí)行亮度值和其它值的計算。這使得即使運算單元具有與常規(guī)三維形狀繪制設(shè)備的運算單元相同的能力,本發(fā)明的三維形狀繪制設(shè)備也能在相同的時間段內(nèi)比常規(guī)三維形狀繪制設(shè)備繪制更多的三維形狀。
在本例中描述到可以由CPU實現(xiàn)繪制部分、高位比特比較部分、低位比特比較部分、高位Z緩沖器清除部分、低位Z緩沖器清除部分和定時控制部分的功能。然而,這些部分的功能不一定由CPU實現(xiàn)。各部分的功能可以通過執(zhí)行用于該功能的程序的LS來實現(xiàn)。
雖然在本示例中描述到圖像存儲器和低位Z緩沖存儲器嵌于三維形狀繪制設(shè)備中,但這些存儲器并不一定要嵌入三維形狀繪制設(shè)備。
圖6為示出在圖像存儲器103和低位Z緩沖存儲器為外部存儲器的情況下三維形狀繪制設(shè)備10的硬件配置的方框圖。在圖6中,三維形狀繪制設(shè)備包括CPU 121、內(nèi)嵌存儲器124和存儲器接口125,CPU 121實現(xiàn)繪制部分101的功能。
存儲器接口125控制繪制部分101對外部存儲器126中所包括的圖像存儲器103和低位Z緩沖存儲器104的訪問。
因為圖像存儲器和低位Z緩沖存儲器受到訪問的頻率比高位Z緩沖存儲器低,可將圖像存儲器和低位Z緩沖存儲器提供為外部存儲器。因此,能減小三維形狀繪制設(shè)備的內(nèi)嵌存儲器的大小。
工業(yè)適用性本發(fā)明可用于高速繪制三維形狀的三維形狀繪制設(shè)備和三維形狀繪制方法。
權(quán)利要求
1.一種用于通過使用Z緩沖器算法繪制三維形狀的三維形狀繪制設(shè)備,所述三維形狀繪制設(shè)備包括深度值計算部分,用于計算要繪制的像素的深度值;高位Z緩沖存儲器,用于保存要顯示成正面的像素的深度值的高位比特,所述深度值為已由所述深度值計算部分計算的深度值之一;低位Z緩沖存儲器,用于保存要顯示成正面的像素的深度值的低位比特,所述深度值為已由所述深度值計算部分計算的深度值之一;高位比特比較部分,用于讀取由高位Z緩沖存儲器保存的高位比特并將所述高位比特與由所述深度值計算部分計算的深度值的高位比特相比較;低位比特比較部分,用于在由所述高位比特比較部分執(zhí)行的比較結(jié)果顯示由所述深度值計算部分計算的深度值的高位比特具有與由高位Z緩沖存儲器保存的深度值的高位比特相同的值時,讀取由低位Z緩沖存儲器保存的深度值的低位比特并將所述低位比特與由所述深度值計算部分計算的深度值的低位比特相比較;以及記錄更新部分,用于在由所述高位比特比較部分執(zhí)行的比較結(jié)果顯示由所述深度值計算部分計算的深度值的高位比特所指示的深度淺于由高位Z緩沖存儲器保存的深度值的高位比特所指示的深度時,通過使用由所述深度值計算部分計算的深度值更新由高位Z緩沖存儲器保存的深度值的高位比特和由低位Z緩沖存儲器保存的深度值的低位比特,并用于在由所述低位比特比較部分執(zhí)行的比較顯示由所述深度值計算部分計算的深度值的低位比特所指示的深度淺于由低位Z緩沖存儲器保存的深度值的低位比特所指示的深度時,通過使用由所述深度值計算部分計算的深度值更新由低位Z緩沖存儲器保存的低位比特。
2.如權(quán)利要求1所述的三維形狀繪制設(shè)備,其特征在于,還包括像素值計算部分,用于計算作為關(guān)于要繪制的像素的信息的像素值;和圖像存儲器,用于保存由所述像素值計算部分計算的像素值。
3.如權(quán)利要求2所述的三維形狀繪制設(shè)備,其特征在于,在由所述高位比特比較部分執(zhí)行的比較顯示由所述深度值計算部分計算的深度值的高位比特所指示的深度淺于由所述高位Z緩沖存儲器保存的深度值的高位比特所指示的深度時,以及在由所述低位比特比較部分執(zhí)行的比較結(jié)果顯示由所述深度值計算部分計算的深度值的低位比特具有與由所述低位Z緩沖存儲器保存的深度值的低位比特相同的值時,所述像素值計算部分計算所述像素值。
4.如權(quán)利要求1所述的三維形狀繪制設(shè)備,其特征在于,當由所述深度值計算部分計算的低位比特具有與由所述低位Z緩沖存儲器保存的低位比特相同的值時,所述低位比特比較部分更新由所述低位Z緩沖存儲器保存的低位比特。
5.如權(quán)利要求1所述的三維形狀繪制設(shè)備,其特征在于,當由所述低位比特比較部分執(zhí)行的比較的結(jié)果顯示由所述深度值計算部分計算的低位比特具有與由所述低位Z緩沖存儲器保存的低位比特相同的值時,所述高位比特比較部分對下一像素執(zhí)行深度值的高位比特的比較。
6.如權(quán)利要求1所述的三維形狀繪制設(shè)備,其特征在于,還包括高位Z緩沖器清除部分,用于用預定值初始化由所述高位Z緩沖存儲器保存的深度值,其中所述預定值指示最淺深度或最深深度。
7.如權(quán)利要求1所述的三維形狀繪制設(shè)備,其特征在于,還包括高位Z緩沖器清除部分,用于初始化由所述高位Z緩沖存儲器保存的深度值;以及低位Z緩沖器清除部分,用于初始化由所述低位Z緩沖存儲器保存的深度值;
8.如權(quán)利要求1所述的三維形狀繪制部分,其特征在于,當確定由所述深度值計算部分計算的深度值的高位比特所指示的深度淺于由所述高位Z緩沖存儲器保存的深度值的高位比特所指示的深度時,所述高位比特比較部分將一標志添加到由所述深度值計算部分計算的深度值的高位比特中,當確定由所述深度值計算部分計算的深度值的低位比特所指示的深度淺于由所述低位Z緩沖存儲器保存的深度值的低位比特所指示的深度時,所述低位比特比較部分將一標志添加到由所述深度值計算部分計算的深度值的低位比特中,當所述標志被添加到由所述深度值計算部分計算的深度值的高位比特時,所述記錄更新部分更新由所述高位Z緩沖存儲器保存的深度值的高位比特和由所述低位Z緩沖存儲器保存的深度值的低位比特,而當所述標志被添加到由所述深度值計算部分計算的深度值的低位比特時,所述記錄更新部分或者只更新由所述低位Z緩沖存儲器保存的深度值的低位比特,或者既更新由所述高位Z緩沖存儲器保存的深度值的高位比特、又更新由所述低位Z緩沖存儲器保存的深度值的低位比特。
9.如權(quán)利要求1所述的三維形狀繪制設(shè)備,其特征在于,所述高位存儲器和低位存儲器是物理上可分離的。
10.如權(quán)利要求9所述的三維形狀繪制設(shè)備,其特征在于,所述低位存儲器在物理上可與所述三維形狀繪制設(shè)備分離。
11.一種用于如權(quán)利要求1所述的三維形狀繪制設(shè)備的存儲器,所述存儲器至少存儲高位比特和低位比特之一,所述高位比特和所述低位比特被分成不同的位串。
12.一種用于通過使用Z緩沖器算法繪制三維形狀的三維形狀繪制方法,所述三維形狀繪制方法包括下列步驟計算要繪制的像素的深度值;從保存要顯示為正面的像素的深度值的高位比特的高位Z緩沖存儲器中讀取高位比特,所述深度值為已在計算深度值的步驟計算的深度值之一,并將已讀取的高位比特與在計算深度值的步驟中計算的深度值的高位比特相比較;當在所述計算深度值的步驟中計算的深度值的高位比特在所述比較高位比特的步驟中被確定為具有與由所述高位Z緩沖存儲器保存的深度值的高位比特相同的值時,從保存要顯示為正面的像素的深度值的低位比特的低位Z緩沖存儲器中讀取低位比特,所述深度值為已在計算深度值的步驟中計算的深度值之一,并將已讀取的低位比特與在計算深度值的步驟計算的深度值的低位比特相比較;并且當在所述計算深度值的步驟中計算的深度值的高位比特所指示的深度在所述比較高位比特的步驟中被確定為淺于由高位Z緩沖存儲器保存的深度值的高位比特所指示的深度時,通過使用由所述計算深度值的步驟計算的深度值更新由所述高位Z緩沖存儲器保存的深度值的高位比特和由低位Z緩沖存儲器保存的深度值的低位比特,而當在所述計算深度值的步驟中計算的深度值的低位比特所指示的深度在所述比較低位比特的步驟中被確定為淺于由低位Z緩沖存儲器保存的深度值的低位比特所指示的深度時,通過使用由所述計算深度值的步驟計算的深度值更新由所述低位Z緩沖存儲器保存的深度值的低位比特。
13.如權(quán)利要求12所述的三維形狀繪制方法,其特征在于,在所述比較低位比特的步驟中,在所述計算深度值的步驟中計算的低位比特被確定為具有與由所述低位Z緩沖存儲器保存的低位比特相同的值時,更新由所述低位Z緩沖存儲器保存的低位比特。
14.如權(quán)利要求12所述的三維形狀繪制方法,其特征在于,在所述比較低位比特的步驟中,在所述計算深度值的步驟中計算的低位比特被確定為具有與由所述低位Z緩沖存儲器保存的低位比特相同的值時,對下一像素執(zhí)行深度值的高位比特的比較。
15.如權(quán)利要求12所述的三維形狀繪制方法,其特征在于,還包括下列步驟初始化由所述高位Z緩沖存儲器保存的深度值;以及初始化由所述低位Z緩沖存儲器保存的深度值。
16.如權(quán)利要求12所述的三維形狀繪制方法,其特征在于,還包括用預定值初始化由所述高位Z緩沖存儲器保存的深度值的步驟,其中所述預定值指示最淺深度或最深深度。
全文摘要
目的在于提供一種能高速繪制三維形狀的三維形狀繪制設(shè)備。高位比特比較部分將由高位Z緩沖存儲器保存的深度值的高位比特與由深度值計算部分計算的深度值的高位比特相比較。如果這兩組高位比特相同,則低位比特比較部分將由低位Z緩沖存儲器保存的深度值的低位比特與由深度值計算部分計算的深度值的低位比特相比較。如果由深度值計算部分計算的深度值的高位比特所指示的深度較淺,則更新由高位Z緩沖存儲器保存的深度值的高位比特和由低位Z緩沖存儲器保存的深度值。如果由深度值計算部分計算的深度值的低位比特所指示的深度較淺,則更新由低位Z緩沖存儲器保存的低位比特。
文檔編號G06T15/40GK1910622SQ200580002520
公開日2007年2月7日 申請日期2005年6月8日 優(yōu)先權(quán)日2004年7月23日
發(fā)明者若山順彥 申請人:松下電器產(chǎn)業(yè)株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1