新四季網

圖像處理器及其組件、和渲染方法

2023-12-03 12:34:41 2

專利名稱:圖像處理器及其組件、和渲染方法
技術領域:
本發明涉及一種用於在一個二維屏幕、諸如顯示設備上高效渲染三維圖像的圖像處理技術。
背景技術:
在顯示設備上渲染(render)圖像的圖像處理器、諸如遊戲控制臺或者個人計算機的圖像處理能力已經隨著最近處理器速度的增加而顯著地增加了。
例如,用於在二維屏幕上顯示很好的高質量三維圖像的二維圖像幾乎能夠被實時地生成。
利用多個諸如多邊形之類的圖元和一個屬性數據集生成二維圖像,其中該圖元組成了包含在一個三維圖像中的一個虛擬對象(在下文中稱為一個「對象」)的圖像,且該屬性數據集描述了相關圖元的屬性、諸如形狀、大小、顏色和亮度。
用於在一個二維屏幕上渲染三維圖像的圖像處理通常可以被分類為幾何處理和渲染。幾何處理包含坐標變換以變換圖元的一組頂點的坐標。渲染用來從作為幾何處理的結果而獲得的幾何數據中確定例如每一個像素的顏色以創建一個二維圖像。
在這個說明書中,主要執行渲染操作的設備(包含一個分布式系統和一個半導體設備)被稱為一個渲染處理單元。渲染處理單元形成一個圖像處理器的一部分。
某些渲染處理單元能夠通過兩次或更多次地渲染相同的圖元來渲染圖形和圖像、諸如複雜的畫面以獲得更好的視覺效果。具有兩遍或更多遍渲染的渲染被稱為「多遍(multipass)渲染」。在多遍渲染中的單次處理過程被稱為一「遍(pass)」。就渲染3遍的多遍渲染來說,可以在第一遍期間渲染一個多邊形而不必混合任何紋理(texture),可以在第二遍期間增加一個紋理,並且可以在第三遍期間增加一個不同的紋理。
傳統的渲染處理單元在多遍渲染期間為所有圖元執行多次渲染。這在渲染一個複雜畫面中的圖形或者圖像時,增加了渲染操作的次數,並且接著又增加了處理量,從而導致了較大的處理負荷。
相對於上述問題做出了本發明,並且它的一個目的是提供一種渲染處理單元和一種渲染方法,其能夠利用較少的處理來實現用於三維圖像的渲染操作。
本發明的另一個目的是提供能視覺效果更好地生成一個圖像而沒有任何開銷的一種圖像處理器以及它的組件。

發明內容
依據本發明、解決了上述問題的一個渲染處理單元是一個用於在一個二維屏幕上渲染三維圖像的處理單元,其中該三維圖像中的每一個都是由多個圖元組成的,該處理單元包含一個圖元緩衝器,在其中與相關圖元相關聯地寫入多個屬性數據集,其中每個屬性數據集表示多個圖元中的一個的屬性;以及一個測試器,其把在所述圖元緩衝器中的多個屬性數據集互相進行比較,以把多個圖元分類成為將被顯示在二維屏幕上的第一組圖元和不被顯示在其上的第二組圖元;渲染處理單元被配置為渲染第一組圖元以及不渲染第二組圖元,其中第一組圖元和第二組圖元由所述測試器分類出來。
渲染可以是用僅僅一遍渲染、使用紋理渲染一個給定圖元的單遍渲染,或是用不同的紋理多次渲染同一個圖元的多遍渲染。無論如何,實際上將被顯示在二維屏幕上的圖元(第一組圖元)被渲染了。與渲染構成一個三維圖像的所有圖元的傳統渲染處理單元相比,處理量被顯著地改善了。
「屬性數據集」可以是任何種類的適當數據,只要該數據能夠被用來確定一個給定的圖元是否顯現在二維屏幕上。總的來說,屬性數據集可以是數字數據,諸如關於一個圖元的頂點(例如頂點的坐標、頂點的亮度、或者紋理的坐標)、大小、顏色、或者圖元的透明度的數字數據。關於頂點的數字數據可以是例如作為幾何處理的結果而獲得的幾何數據。
被寫入在所述圖元緩衝器中的圖元的數目最好是至少等於用其在二維屏幕上構建適合在一個屏幕上的三維圖像的圖元的數目。這允許在屏幕基礎上高效的渲染。
為了在像素基礎上提供更高效的渲染,渲染處理單元進一步包含插值裝置,其依據用於一個圖元的一個已知屬性數據集插值像素。測試器通過把作為像素插值的結果而獲得的一個新屬性數據集添加到可相互比較的屬性數據集中,在像素基礎上分類圖元。利用這樣的一個配置,正被顯示在二維屏幕上的圖元被分類成為甚至以一個像素的第一組圖元。
就較高分辯率的圖像來說,每一個像素被分成預定數目的子像素。插值裝置被配置為當至少一個子像素要經歷渲染時依據用於一個圖元的一個已知屬性數據集插值該子像素。測試器被配置為通過把作為子像素插值的結果而獲得的一個新的屬性數據集添加到可相互進行比較的屬性數據集中、在子像素基礎上分類圖元。
渲染處理單元可以進一步包含覆蓋率計算裝置,其計算由正被渲染的一個給定圖元覆蓋的子像素的數目與組成單個像素的子像素的總數的比值,並且可以基於由所述覆蓋率計算裝置計算的結果確定用於主體像素的屬性數據集。這提供了更快的消除混疊技術。
為了允許消除混疊,所述測試器可以被配置為當在該像素處繪製兩個或更多圖元時不分類在圖元的邊界上的像素。
在所述圖元緩衝器中的每個屬性數據集可以包含位置信息,諸如表示一個相對圖元在三維圖像中的位置的坐標值(X,Y,和Z),並且測試器可以被配置為比較包含在該屬性數據集中的位置信息以把圖元分類成為第一和第二組圖元,其中第一組圖元是通過二維屏幕最靠近一個觀察者的視點的圖元,第二組圖元是除了被分類成為第一組圖元的那些圖元之外的其它圖元。這個配置刪去了對被隱藏在其它圖元或者多個圖元後面的圖元的渲染。
每個圖元可以疊加在包含允許區域和不允許區域的模板數據上,其中該允許區域被允許顯示在二維屏幕上,而不允許區域不被允許顯示在二維屏幕上,模板數據表示將被顯示的一個或者多個圖像的透明度和形狀。在這種情況下,測試器把圖元分類成為第一和第二組圖元,其中第一組圖元是其至少一部分被疊加在模板數據的允許區域或者不允許區域上的圖元,第二組圖元是除了被分類成為第一組圖元的那些圖元之外的其它剩餘圖元。
從增加渲染速度的觀點來說,測試器被配置為在一個在渲染過程中參考的預定可見標誌表中記錄一個描述了一個給定圖元是第一組圖元還是第二組圖元的標誌。與用於該給定圖元的屬性數據集相關聯地記錄該標誌。這樣一種配置允許渲染處理單元僅僅通過檢查在可見標誌表中的標誌來確定一個給定屬性數據集是在第一組圖元還是在第二組圖元中。該標誌可以是一個就每個圖元都具有不同值的數字標誌,並且根據由正被顯示在二維屏幕上的圖元所覆蓋的像素數目更新標誌值。
渲染處理單元可以進一步包含編輯裝置,其適於參考記錄在可見標誌表中的用於相關圖元的標誌,並且限制從圖元緩衝器中為第二組圖元讀出屬性數據集。從更加確實地避免使用第二組圖元的觀點來說,所述編輯裝置適於從所述圖元緩衝器中刪除用於被分類成為第二組圖元的圖元的屬性數據集。
依據本發明解決上述問題的一個圖像處理器是這樣一個圖像處理器,其包含一個幀緩衝器,其大小等於在一個二維屏幕中的顯示區的大小;一個第一處理器,適於執行對描述一個三維圖像的多個圖元的幾何處理以生成關於該三維圖像的幾何數據;一個第二處理器,依據生成的幾何數據在所述幀緩衝器中渲染對應於三維圖像的二維圖像;以及一個控制器,用於在顯示區中顯示渲染的二維圖像。
第二處理器把多個屬性數據集互相進行比較,以把該多個圖元分類成為將被顯示在二維屏幕上的第一組圖元和不會被顯示在其上的第二組圖元,以及在所述幀緩衝器中渲染由第一組圖元而不是第二組圖元組成的二維圖像。每個屬性數據集表示由從所述第一處理器中獲得的幾何數據指定的多個圖元中的一個圖元的屬性。
在一個最佳實施例中,在所述第一處理器和所述第二處理器之間提供了一個緩衝存儲器,並且由所述第一處理器生成的幾何數據經由緩衝存儲器被傳輸到所述第二處理器。
可以通過進一步包含一個圖像接受機構來配置圖像處理器,其中該圖像接受機構從一個外部設備中接受將被處理的三維圖像並且把它們提供給所述第一處理器。
依據本發明解決上述其它問題的一種渲染方法是一種由一個用於在一個二維屏幕上渲染三維圖像的設備執行的渲染方法,該三維圖像中的每一個都是由多個圖元組成的,該設備具有一個在其中為形成圖像而寫入圖元的圖元緩衝器。即,這個設備以這個次序執行一遍測試和一遍渲染,其中該遍測試是用於在一個圖元緩衝器中與相關圖元相關聯地寫入多個屬性數據集,以及用於把這多個寫入的屬性數據集互相進行比較,以把這多個圖元分類成為將被顯示在二維屏幕上的第一組圖元和不被顯示在其上的第二組圖元,其中每個屬性數據集表示組成三維圖像的多個圖元中的一個圖元的屬性,而渲染遍是用於從圖元緩衝器當中讀出第一組圖元而不是第二組圖元以渲染讀出的第一組圖元,其中該第一組圖元和第二組圖元是在該遍測試中被分類出來的。
可以兩次或多次執行該渲染以兩次或多次為同一個圖元渲染不同的紋理。
為了解決上述問題,本發明還提供了一種半導體設備和一個電腦程式。
本發明中的半導體設備是一種安裝在一個計算機上的半導體設備,其連接到具有一個二維屏幕的顯示器,該半導體設備適合於在計算機上建立和計算機的其它組件協同合作的下列功能部件,該功能部件包含一個圖元緩衝器,在其中與相關圖元相關聯地寫入多個屬性數據集,其中每個屬性數據集表示組成三維圖像的多個圖元中一個圖元的屬性;一個測試器,其把在所述圖元緩衝器中的多個屬性數據集互相進行比較,以把多個圖元分類成為將被顯示在二維屏幕上的第一組圖元和將不會被顯示在其上的第二組圖元; 以及渲染處理裝置,用於渲染第一組圖元而不是第二組圖元以生成一個將被顯示在二維屏幕上的二維圖像,其中該第一組圖元和第二組圖元是由試驗器分類出來的。
本發明中的電腦程式是一個用於指示計算機執行下列任務的電腦程式,該計算機連接到一個圖元緩衝器和一個具有一個二維屏幕的顯示器,其中在圖元緩衝器中寫入用於形成圖像的圖元,該任務包含在圖元緩衝器中與相關圖元相關聯地寫入多個屬性數據集,其中每個屬性數據集表示組成三維圖像的多個圖元中的一個圖元的屬性;把在圖元緩衝器中的多個屬性數據集互相進行比較,以把多個圖元分類成為將被顯示在二維屏幕上的第一組圖元和將不會被顯示在其上的第二組圖元;以及渲染第一組圖元而不是第二組圖元,以生成一個將被顯示在二維屏幕上的二維圖像,其中該第一組圖元和第二組圖元是被分類出來的。當這個電腦程式被記錄在一個計算機可讀存儲介質中時它被實現了。


圖1顯示了依據本發明一個實施例的一個圖像處理器的硬體配置;圖2是一個說明了在圖元緩衝器中的幾何數據的一個例子的視圖;圖3是一個說明了一個三角形長條的視圖;圖4是一個用來描述剪裁(clipping)的視圖;圖5是一個用來描述剪裁的視圖;圖6是一個說明了子像素的視圖;
圖7是一個用來描述一個模板測試的視圖;圖8是一個可見標誌控制部分的示範配置;圖9是一個說明了一個三角形長條的視圖;圖10是一個說明了當圖元是一個三角形長條時的一個可見標誌表的視圖;圖11是一個說明了依據本發明一個實施例的一個渲染過程的視圖;圖1 2是一個說明了一個Z緩衝繪製過程的視圖;圖13是一個說明了用於Z緩衝繪製的一個數據流的視圖;圖14是一個說明了用於一遍測試的一個處理過程的視圖;圖15是一個說明了用於該遍測試的一個數據流的視圖;圖16是一個說明了刪除從圖元不會被顯示在顯示器上時起的數據的視圖;圖17是一個說明了一個多遍渲染過程的視圖;圖18是一個說明了用於該多次渲染的一個數據流的視圖;圖19顯示了依據本發明另一個實施例的一個渲染處理器的硬體配置;以及圖20是一個用來描述圖元覆蓋率的視圖。
具體實施例方式
下面敘述了一個把本發明應用到一個支持多遍渲染的圖像處理器的實施例。
圖1顯示了依據這個實施例的一個圖像處理器的硬體配置。
圖像處理器1包含一個作為渲染處理單元的一個例子的渲染處理器16。圖像處理器1執行多遍渲染以在一個二維屏幕、諸如顯示器41的屏幕上實時地、視覺效果更好地渲染三維圖像。在該多遍渲染中,在下面描述的一遍測試首先分類輸出由於例如被隱藏在其它圖元後面而不被顯示在顯示器41上的第二組圖元。然後為除了在這遍測試中被分類輸出的那些圖元之外的圖元執行一遍渲染。因此,圖像處理器1刪去了渲染不被顯示在顯示器41上的圖元的無用操作,而提高了渲染操作的效率。
圖像處理器1包含一個向其中加載一個諸如CD-ROM或者DVD-ROM之類的磁碟介質15的磁碟驅動器10、一個用於建立與一個外部設備的有線或者無線通信的通信控制部分11、一個幾何處理器12、一個存儲器13、一個CPU 14和渲染處理器16,它們經由一條總線全部彼此相互連接,以便它們互相交換數據。
一個顯示控制器40連接到渲染處理器16以向顯示器41提供諸如視頻信號的圖像信號。
磁碟驅動器10從磁碟介質15中加載用於圖像處理的數據和程序,並且把它們存儲在存儲器13中。用於圖像處理的數據可以是例如關於圖元的圖形數據。在這個實施例中的圖形數據包含例如一個圖元的頂點(X,Y,Z)的坐標值、一個頂點的亮度值(R,G,B)、向量值、和描述了這些頂點如何相連的連接信息。
通信控制部分11從一個外部設備中獲得用於圖像處理的上述數據和程序,並且把它們存儲在存儲器13中。換句話說,通信控制部分11從一個外部設備中獲得與由磁碟驅動器10從磁碟介質15中獲得的數據相似的數據,並且把它們存儲在存儲器13中。
利用這個配置,圖像處理器1能夠從磁碟驅動器10和通信控制部分11中的至少一個中獲得用於圖像處理的數據和程序。
幾何處理器12在CPU 14的控制下執行對保存在存儲器13中的圖形數據的幾何處理,諸如與光源有關的仿射變換和頂點處理。作為幾何處理結果而獲得的幾何數據包含表示了一個給定圖元的屬性的數據,這些數據諸如圖元的一個頂點(X,Y,Z)的坐標值、每個頂點的紋理坐標值(S,T,Q)、和一個頂點的亮度(R,G,B,A)。頂點的亮度中的符號「A」是被用於已知的α混合的不透明度。
存儲器13存儲從磁碟驅動器10和通信控制部分11中至少一個中獲得的用於圖像處理的數據和程序。存儲器13還存儲在圖像處理器1的操作期間生成的各種數據。因此,存儲器13同樣能夠被用作在圖像處理器1中的一個主存儲器。
CPU 14控制在這些組件之間或者在它們當中的數據交換。例如,CPU 14利用用作一個緩衝器的存儲器13控制把由幾何處理器12生成的幾何數據傳輸到渲染處理器16。
在這個實施例中,幾何處理器12被提供作為一個與CPU 14分開的組件。然而它們可以被組合為單個單元,所以CPU 14也用作幾何處理器12。
渲染處理器16基於由幾何處理器12生成的幾何數據執行多遍渲染。
顯示控制器40把作為渲染的結果而生成的一個二維圖像轉換成為一個能夠被顯示在顯示器41上的圖像信號,並且把它提供給顯示器41。用這個圖像信號把圖像顯示在顯示器41上。
渲染處理器16包含一個圖元緩衝器21、一個多遍控制部分22、一個XYZ裁剪部分23、一個設置DDA(Digital DifferentialAnalyzer,數字微分分析器)部分(在下文中被稱為一個「SU/DDA部分」)24、一個Z測試部分25、一個Z緩衝器26、一個模板測試部分27、一個模板緩衝器28、一個可見標誌控制部分29、一個圖元編輯部分30、一個紋理映射部分31、和一個幀緩衝器32。
Z測試部分25、模板測試部分27、可見標誌控制部分29、和圖元編輯部分30是依據本發明的一個測試器的組件。
這些組件可以通過使用例如半導體設備被單個地執行。做為選擇,它們可以通過使一個通用的數位訊號處理器(DSP)或者一個圖形處理器(GP)與一個或多個電腦程式協同合作來實現,所以這些處理器能夠加載和執行該電腦程式。
圖元緩衝器21把用於至少一組圖元的幾何數據存儲作為用於該圖元的屬性數據集的一個例子。一組圖元可以是形成在顯示器41的單個屏幕上的一個圖像或者單個對象的圖元的一個集合。向每個圖元分配一個標識號(在下文中被稱為「圖元編號」)作為用以標識圖元的標識信息。圖元編號被包含在屬性數據集中。
圖2是一個說明了保存在圖元緩衝器21中的幾何數據和分配給該幾何數據的圖元編號(PN1,PN2,……)之間的關係的視圖。做為選擇,或者除了說明的例子之外,幾何數據可以與標誌相關聯以表示給定的幾何數據是否被用於多遍渲染。
當幾何數據是所謂的三角形長條數據以描述一個三角形形狀時,為在三角形長條中的每個頂點生成幾何數據。因此,渲染處理器16向每個頂點的幾何數據分配一個圖元編號,並且把它們存儲在圖元緩衝器21中。
圖3用三角形長條數據顯示了一個三角形長條的例子。在該圖中的數字值「0」到「7」指示頂點。就如圖3所示的三角形長條數據來說,向頂點0、1、2、……、7中的每一個分配圖元編號。一個類似的圖元緩衝器21也可以被用於三角形葉片。
提供圖元緩衝器21以避免在幾何處理器12和渲染處理器16之間為多遍渲染中的每一遍傳輸幾何數據。利用圖元緩衝器21,能夠減少在幾何處理器12和渲染處理器之間的開銷。
儘管在這個實施例中的圖元緩衝器21是在渲染處理器16中提供的,但是也可以獨立於渲染處理器16提供。做為選擇,圖元緩衝器21可以在存儲器13中提供。
多遍控制部分22控制多遍渲染。例如,多遍控制部分22向渲染處理器16中的組件通知應當執行Z緩衝繪製、一遍測試和多遍渲染中的哪一個。多遍控制部分22從圖元緩衝器21中讀出將被渲染的圖元的幾何數據和用於那些幾何數據的圖元編號,並且把它們提供給XYZ裁剪部分23。
在多遍渲染期間,多遍控制部分22在必要時改變幾何數據。例如,為了在每一遍中向一個圖元(例如一個多邊形)映射不同的紋理,一個紋理坐標值的換算係數可以被改變或者變換。
多遍控制部分22在必要時還改變紋理起點的變換坐標數量。這個改變允許渲染處理器16為每個紋理坐標軸執行線性變換。此外,多遍控制部分22在必要時有選擇地把一個頂點的亮度值(R,G,B,A)轉換成為一個固定值。這消除了在例如第二遍或者隨後遍期間在渲染處理器16中重新傳輸一個頂點的相同亮度值的損耗。
XYZ裁剪部分23基於預先提供的裁剪數據,用從多遍控制部分22提供的幾何數據執行一個圖元的三維裁剪。裁剪數據描述了在顯示器41中的一個顯示區。裁剪是剪切下超出由裁剪數據定義的顯示區範圍的一個或多個圖元的那部分,或是改變其一部分超出顯示區範圍的一個或多個圖元的形狀。
下面,更具體地參考圖4和5描述裁剪操作。
圖4顯示了在由頂點坐標(X1,Y1)、(X2,Y2)、和(X3,Y3)描述的一個圖元51和在顯示器41中的一個顯示區50之間的關係。XYZ裁剪部分23通過在圖元51的一部分超出顯示區50的範圍時進行裁剪來改變圖元51的形狀。圖5顯示了在具有修改了的形狀的一個圖元52和顯示區50之間的關係。
如圖5所示,XYZ裁剪部分23改變其一部分超出顯示區50的範圍的圖元51的形狀。XYZ裁剪部分23然後生成由頂點坐標(X3,Y3)、(X6,Y6)、(X5,Y5)、(X4,Y4)和(X7,Y7)定義的新的圖元52。新的圖元52的圖元編號與在形狀變化之前分配給圖元51的那個圖元編號相同。
XYZ裁剪部分23把裁剪之後的幾何數據和圖元編號提供給SU/DDA部分24。
SU/DDA部分24執行設置和DDA操作。
設置操作是用於依據從XYZ裁剪部分23提供的、裁剪之後的幾何數據,計算被用於DDA操作的初始坐標值和斜率值。
DDA操作是用於依據在設置操作中計算的初始坐標值和斜率值,在圖元的頂點之間線性插值和在圖元內部插值,以獲得包含形成一個圖元的像素的坐標值(X,Y,Z)、亮度值(R,G,B,A)、和用於紋理映射的紋理坐標值(S,T,Q)在內的數據。
就例如如圖5所示的圖元52的例子來說,為陰影線部分中的每一個像素獲得插值數據。在如下所述的Z緩衝繪製和該遍測試中,SU/DDA部分24可以僅僅插值這些像素的坐標值。
用於每一個像素的插值數據與圖元編號一起被提供給Z測試部分25。
Z測試部分25為Z緩衝繪製和該遍測試執行不同的操作。
就Z緩衝繪製來說,Z測試部分25在像素基礎上比較被包含在從SU/DDA部分24提供的插值數據中的Z值和被保存在Z緩衝器26中的Z值。Z測試部分25然後依據比較結果把這些Z值中的任何一個寫入到Z緩衝器26中。例如,它選擇最接近於觀察點的Z值並且把這個Z值寫入到Z緩衝器26中。當選擇了從SU/DDA部分24中提供的Z值時,這個Z值被用來更新在Z緩衝器26中的相關像素的Z值。當選擇了被保存在Z緩衝器26中的Z值時,Z緩衝器26不被更新。
然而,為一個像素利用一個Z緩衝器,必需顯示的其它圖元可以存在於沒有覆蓋整個像素區域的一個圖元的背景中。就這個方面,為了消除混疊現象,Z測試部分25沒有把這個像素的Z值寫入到Z緩衝器26中。當一個圖元是透明或者半透明的時,由於類似的原因,在Z緩衝器26中沒有寫入Z值。
另一方面,就該遍測試來說,Z測試部分25在像素基礎上比較被保存在Z緩衝器26中的Z值和從SU/DDA部分24提供的插值數據,以選擇具有與被保存在Z緩衝器26中的那個Z值相同的Z值的插值數據。Z測試部分25然後把選擇的插值數據以及圖元編號提供給模板測試部分27。如上所述,當Z緩衝器26中沒有存儲的Z值時,Z測試部分25選擇具有最接近於觀察點的Z值的插值數據,並且把它們以及圖元編號提供給模板測試部分27。
作為Z緩衝繪製的結果,為每一個像素把最接近於觀察點的圖元的Z值寫入到Z緩衝器26中。
可以在子像素基礎上而不是在像素基礎上執行這遍渲染,以渲染較高解析度的圖像。在這種情況下,使用了用於子像素的Z緩衝器。然後在完成子像素的渲染之後減小圖像的大小以獲得實際的像素。圖6顯示了一個其中使用子像素描述了一個3×2像素的矩陣的例子。在圖6中,每一個像素被分成4×4個子像素。在這個例子中,繪製了向上傾斜的直線。當使用典型的像素時,在右下方的像素被確定為一個在其上沒有繪製陰影線的像素。然而,當使用子像素時在一個子像素上繪製了一條陰影線。陰影線因此影響了在右下方的像素。這樣,通過在子像素基礎上寫入Z值,即使當一個像素包含兩個或更多圖元時,也能夠在考慮了所有圖元的同時進行顯示。
利用具有很多存儲空間的Z緩衝器26,除了存儲Z值之外,還可以存儲分配給具有這些Z值的圖元的圖元編號。
模板測試部分27依據保存在模板緩衝器28中的模板數據,執行模板測試。
結合圖7描述模板測試的概述。
如圖7所示,模板數據表示一個不被允許顯示在顯示器41上的不允許區域53和一個被允許顯示在其上的允許區域54。依據這個實施例的模板測試是用於比較例如從Z測試部分25提供的插值數據的坐標值和模板數據中的坐標值,以確定圖元52是否被顯示在允許區域54中,即在允許區域54內是否有插值數據。把將被顯示的圖元52的圖元編號提供給可見標誌控制部分29。
就多遍渲染來說,把將被顯示的圖元的插值數據提供給紋理映射部分31。
模板緩衝器28被配置為存儲模板數據和在模板測試部分27提出請求時讀出它們。被保存在模板緩衝器28中的模板數據是經由一條總線從例如存儲器13中提供的。
藉助於XYZ裁剪部分23、Z測試部分25和模板測試部分27,圖元被分組成為包含將被顯示在顯示器41上的像素的圖元、和不被顯示在其上的圖元。
從模板測試部分27中把包含將被顯示在顯示器41上的像素的圖元的圖元編號提供給可見標誌控制部分29。
如圖8所示,可見標誌控制部分29包含一個地址控制部分61和一個可見標誌表62。
可見標誌表62依據圖元把可見標誌存儲到地址(NA1,NA2,……),其中可見標誌指示圖元是否被顯示在顯示器41上。
這些地址對應於分配給保存在圖元緩衝器21中的圖元數據的圖元編號(PN1,PN2,……)。
地址控制部分61初始化可見標誌表62,計算可見標誌表62中的地址,並且改變可見標誌。例如,當為所有圖元完成了Z緩衝繪製(初始化)時,地址控制部分61把可見標誌清除為「0」。地址控制部分61然後把從模板測試部分27提供的圖元編號轉換成為可見標誌表62中的地址,並且將對應於那些地址的可見標誌從「0」改變到「1」。
在其處存儲了「1」值的可見標誌中的地址對應於將被顯示在顯示器41上的圖元的圖元編號。此外,在其處包含了「0」值的可見標誌的地址對應於沒有將顯示在顯示器41上的像素的圖元的圖元編號。
該地址可以與上述圖元編號相同。
當圖元是如圖9所示的三角形長條時,可見標誌表62如圖10所示。在圖9中說明的例子中,沒有為由頂點2、3、和4定義的三角形形成圖元。
更具體地說,在對應於頂點0、1、2、……、7的圖元編號的地址處,存儲用於指示是否進行顯示的可見標誌。就三角形長條來說,按從0起的順序讀出用於頂點的幾何數據以形成三角形圖元。例如,在讀出用於頂點0和1的幾何數據之後,讀取用於頂點2的幾何數據。這形成了由頂點0、1和2定義的一個三角形圖元。用於頂點0和1的可見標誌為「Not Active(未激活)」,而且頂點0和1不受可見標誌的影響。
在如圖10所示的例子中,具有對應於地址NA4的圖元編號4的頂點4沒有被顯示。這意味著在在渲染期間讀出頂點4的幾何數據時,頂點2、3和4沒有形成三角形。它不意味著沒有形成與頂點4有關的三角形。換句話說,沒有形成具有頂點2、3、和4的三角形,而形成了具有頂點3、4和5的三角形、以及具有頂點4、5和6的三角形。類似的可見標誌表62也可以被用於三角形葉片。
可見標誌可以是單個值或者一個二進位值,或者它可以是一個整數。地址控制部分61在這種場合下連續地把從模板測試部分27中提供的像素的圖元編號轉換成為可見標誌表62中的一個地址,並且連續地遞增對應於相關地址的可見標誌的值。因此,就每個圖元來說,可見標誌具有一個基於將被顯示在顯示器41上的像素數目的值。
由可見標誌控制部分29進行的可見標誌的寫入尺寸為幾個比特。與在幀緩衝器32中寫入相比較,較不頻繁地導致分頁。因此,能夠以較高的速度進行這遍測試。
圖元編輯部分30是本發明中的編輯裝置的一個例子。圖元編輯裝置30依據可見標誌控制部分29中的可見標誌表62,檢查將不會被顯示在顯示器41上的圖元的圖元編號。然後,確保沒有從圖元緩衝器21中讀出對應於所標識的圖元編號的幾何數據。
例如,圖元編輯部分30檢查對應於在其處可見標誌表62中的可見標誌指示「0」的地址的圖元編號。圖元編輯部分30確保在多遍渲染期間沒有從圖元緩衝器21中讀出對應於這個圖元編號的圖元。當向在圖元緩衝器21中的幾何數據分配了指示該數據是否被用於多遍渲染的標誌時,這個標誌被用來防止在多遍渲染期間讀出該圖元。可以從圖元緩衝器21中刪除該幾何數據。
紋理映射部分31以對應於遍數的循環數目執行渲染。紋理映射部分31,例如在每一遍中把不同的紋理映射到同一個圖元。此映射渲染將被顯示在幀緩衝器32中的圖像。
幀緩衝器32包含一個用於顯示器41的存儲空間。以這樣一種方式把像素繪製在該存儲空間上,以使像素填充在顯示器41中的二維平面。在幀緩衝器32中繪製的圖像以幀為單位被提供給顯示器41,並且通過顯示控制器40在其上被顯示為圖像信號。
接下來,具體描述具有上述配置的圖像處理器1的操作,尤其是由渲染處理器16實現的渲染方法。
假定作為幾何處理器12執行的幾何處理的結果的幾何數據作為屬性數據集的一個例子被保存在渲染處理器16中的圖元緩衝器21中。
圖11是一個說明了這種渲染方法的示意圖。
渲染處理器16為保存在圖元緩衝器21中的所有幾何數據執行Z緩衝繪製,並且在Z緩衝器中寫入接近於觀察點的Z值(步驟S10)。在完成Z緩衝繪製之後,渲染處理器16清除可見標誌控制部分29中的可見標誌表62以把所有可見標誌設置為「0」(步驟S20)。然後,執行該遍測試,並且基於這遍測試的結果改變在可見標誌表62中的可見標誌(步驟S30)。在這遍測試期間,向可見標誌表62提供指示圖元是那些將被顯示在顯示器41上的圖元還是那些不被顯示在其上的圖元的標誌。渲染處理器16檢查可見標誌表62,並且從保存在圖元緩衝器21中的幾何數據中刪除不被顯示在顯示器41上的那些圖元的幾何數據。換句話說,相關圖元被刪除了(步驟S40)。在刪除圖元之後,渲染處理器16為被顯示在顯示器41上的圖元執行多遍渲染(步驟S50)。
這樣,能夠進行渲染而沒有任何損耗。
接下來,更具體地描述在圖11中的處理步驟。
圖12顯示了在Z緩衝繪製期間的過程,而圖13顯示了用於該過程的一個數據流。
在Z緩衝繪製期間,多遍控制部分22從圖元緩衝器中讀取幾何數據以及圖元編號,並且把它們提供給XYZ裁剪部分23(步驟S11)。XYZ裁剪部分23依據從多遍控制部分22中提供的圖元數據執行圖元的裁剪。XYZ裁剪部分23剪切或者整形超出顯示器41的顯示區50範圍的圖元的那部分。剪切或者整形操作的結果被反映給幾何數據(步驟S12)。裁剪之後的幾何數據以及圖元編號被提供給SU/DDA部分24。用於在裁剪期間被除去的圖元那部分的幾何數據沒有被提供給SU/DDA部分24。
SU/DDA部分24依據裁剪之後的幾何數據執行插值,以創建形成圖元的像素的坐標值(步驟S13)。SU/DDA部分24把生成的坐標值作為插值數據連同圖元編號一起提供給Z測試部分25。
Z測試部分25使用從SU/DDA部分24提供的用於該像素的插值數據執行Z測試(步驟S14)。Z測試部分25從Z緩衝器26中讀取相關像素的Z值。Z測試部分25然後把該Z值與包含在插值數據中的Z值進行比較以選擇較接近於觀察點的那個Z值。當從Z緩衝器26讀取的Z值較接近於觀察點時,Z緩衝器26保持不變(步驟S14未被更新),而當包含在插值數據中的Z值較接近於觀察點時Z緩衝器26中的Z值被更新(步驟S14更新,步驟S15)。
為保存在圖元緩衝器21中的所有幾何數據執行上述操作順序(步驟S16)。這樣就完成了Z緩衝繪製。
在Z緩衝繪製完成之後,Z緩衝器26為每一個像素包含最接近於觀察點的圖元的Z值。應當注意到,當圖元沒有填充整個像素區域或者當圖元是透明或半透明的時,在該像素中沒有寫入Z值。
圖14和15是用來描述在該遍測試期間的操作的視圖。就該遍測試來說,多遍控制部分22從圖元緩衝器中讀出幾何數據以及圖元編號,並且把它們提供給XYZ裁剪部分23(步驟S31)。XYZ裁剪部分23依據從多遍控制部分22中提供的幾何數據裁剪圖元,以剪切或者整形超出顯示器41的顯示區範圍的那部分圖元(步驟S32)。XYZ裁剪部分23然後把剪切或者整形操作的結果反映給幾何數據。裁剪幾何數據連同圖元編號一起被提供給SU/DDA部分24。用於由裁剪部分剪切的那部分圖元的幾何數據沒有被提供給SU/DDA部分24。
SU/DDA部分24依據裁剪之後的幾何數據執行插值,以創建形成圖元的像素的坐標值(步驟S33)。SU/DDA部分24把生成的坐標值作為插值數據連同圖元編號一起提供給Z測試部分25。
Z測試部分25執行用於這遍測試的操作。在用於這遍測試的操作中,Z測試部分25把包含在從SU/DDA部分24提供的插值數據中的Z值和保存在Z緩衝器26中的Z值進行比較。Z測試部分25為相互匹配的那些Z值把插值數據和圖元編號提供給模板測試部分27(步驟S34匹配)。當這些值不匹配時,渲染處理器16確定是否對保存在圖元緩衝器21中的所有幾何數據都完成了這遍測試(步驟S34未匹配,步驟S37)。
就其Z值沒有被保存在Z緩衝器26中的那些像素來說,具有最接近於觀察點的Z值的插值數據和圖元編號被提供給模板測試部分27。
模板測試部分27對從Z測試部分25提供的插值數據執行模板測試(步驟S35)。作為模板測試的結果,當由插值數據指示的像素位於允許區域54中時,這個像素將被顯示。因此,圖元編號被提供給可見標誌控制部分29(步驟S35;被顯示)。當由插值數據指示的像素在不允許區域53中時,渲染處理器16確定是否對保存在圖元緩衝器21中的所有幾何數據完成了這遍測試(步驟S35未被顯示,步驟S37)。
可見標誌控制部分29響應於從模板測試部分27中提供的圖元編號,更新在對應於該圖元編號的地址處的可見標誌為「1」(步驟S36)。
對保存在圖元緩衝器21中的所有幾何數據執行上述操作(步驟S37)。這樣就完成了該遍測試。
Z緩衝繪製和這遍測試被用來分類出將不被顯示在顯示器41上的圖元。更具體地說,XYZ裁剪部分23裁剪和分離出超出顯示區50的範圍的那部分圖元。Z測試部分25通過Z測試分類出被隱藏在其它圖元後面的圖元。模板測試部分27通過模板測試分類出在不允許區域53中的圖元。
在可見標誌控制部分29中對應於如上所述被分類出的圖元的圖元編號的地址處的可見標誌具有「0」值。這個圖元沒有被顯示在顯示器41上。
換句話說,XYZ裁剪部分23、Z測試部分25、和模板測試部分27用來把圖元分類(揀選)成為將被顯示在顯示器41上的圖元和不會被顯示在其上的圖元。僅僅對於將被顯示在顯示器上的那些圖元,在可見標誌控制部分29中的可見標誌被設置為「1」。對於被XYZ裁剪部分23、Z測試部分25、和模板測試部分27中的至少一個確定為是將不被顯示的圖元的那些圖元來說,可見標誌保持為「0」。
執行一遍與這遍測試不同的所述Z測試。然而,當Z緩衝器26具有很多存儲空間時可以用同一遍來執行Z測試。在這種情況下,就Z測試來說,Z值和該Z值的圖元編號被寫入Z緩衝器26中,以標識最接近於觀察點的那個圖元。作為Z測試的結果,有可能使用保存在Z緩衝器26中的圖元編號分類圖元。Z緩衝繪製和該遍測試能夠用單遍實現。
在這個實施例中,可見標誌表62中的可見標誌在步驟S30被設置為「0」,以執行該遍測試。然而,這個步驟可以被刪去。在這種情況下,Z緩衝繪製和該遍測試被用來把圖元分類成為將被顯示在顯示器41上的圖元和不會被顯示在其上的圖元,以及把可見標誌設置為「0」或者「1」。
做為選擇,XYZ裁剪部分22、Z測試部分25、和模板測試部分27中的每一個都可以傳輸被確定為不會被顯示在顯示器41上的圖元的分類編號給可見標誌控制部分29。
渲染處理器16依據可見標誌控制部分29中的可見標誌表62,防止在多遍渲染中讀出保存在圖元緩衝器21中的幾何數據的、將不會被顯示在顯示器41上的圖元的幾何數據(步驟S40)。圖16是一個被用來描述由渲染處理器16在刪除圖元過程中執行的操作的視圖。
圖元編輯部分30使用可見標誌控制部分29中的可見標誌表62中的可見標誌,檢查將被顯示在顯示器41上的圖元和將不會被顯示在顯示器上的圖元。例如,在圖8的可見標誌表62中,圖元編號對應於在其處可見標誌被設置為「0」的地址的圖元是不會被顯示的那些圖元。圖元編號對應於在其處可見標誌被設置為「1」的地址的圖元是將被顯示的那些圖元。
圖元編輯部分30從圖元緩衝器21中刪除被確定為將不會被顯示的那些圖元的幾何數據。
這確保在多遍渲染期間僅僅處理用於那些將被顯示在顯示器41上的圖元的幾何數據,以減小與多遍渲染有關的渲染處理器的負載。
例如,就一個三角形長條來說,因為使用了所有幾何數據,所以不能刪除幾何數據。因此,可以向所有幾何數據添加標誌以指示它們是否被用於多遍渲染。這些標誌被用來標識那些將不會被顯示在顯示器41上的圖元。當然,這種標誌可以被用於除了三角形長條之外的那些,而不必刪除幾何數據。
圖17和18是被用來描述用於多遍渲染的操作的視圖。
就多遍渲染來說,多遍控制部分22從圖元緩衝器中讀出幾何數據以及圖元編號,並且把它們提供給XYZ裁剪部分23(步驟S51)。
XYZ裁剪部分23依據從多遍控制部分22中提供的幾何數據裁剪圖元,以剪切或者整形超出顯示器41的顯示區範圍的那部分圖元(步驟S52)。XYZ裁剪部分23然後把剪切或者整形操作的結果反映給幾何數據。裁剪的幾何數據連同圖元編號一起被提供給SU/DDA部分24。
依據裁剪之後的幾何數據執行插值,以創建包含形成圖元的像素的坐標值、亮度值和紋理坐標值的插值數據(步驟S53)。SU/DDA部分24把生成的插值數據連同圖元編號一起提供給Z測試部分25。
Z測試部分25在像素基礎上把包含在從SU/DDA部分24提供的插值數據中的Z值和保存在Z緩衝器26中的Z值進行比較。Z測試部分25把用於相互匹配的那些Z值的插值數據和圖元編號提供給模板測試部分27(步驟S54匹配)。當那些值不匹配時,操作轉到步驟S57。
對於其Z值沒有被保存在Z緩衝器26中的那些像素來說,具有最接近於觀察點的Z值的插值數據和圖元編號被提供給模板測試部分27。
模板測試部分27對從Z測試部分25提供的插值數據執行模板測試(步驟S55)。作為模板測試的結果,當由插值數據指示的像素位於允許區域54中時,這個像素將被顯示。因此,插值數據被傳輸到紋理映射部分31(步驟S55被顯示)。當由插值數據指示的像素位於不允許區域53中時,操作轉到步驟S57。
紋理映射部分31依據從模板測試部分27中提供的插值數據在幀緩衝器32中繪製一個圖元(步驟S56)。這樣就完成了對一個圖元的繪製。
渲染處理器16執行步驟S54到S56的操作,直到為形成相關圖元的所有像素完成繪製為止(步驟S57)在完成一個圖元的繪製之後,確定是否完成了其它圖元的繪製(步驟S58)。如果還有一個其繪製沒有完成的圖元,則操作轉回到步驟S51(步驟S58N)。當為所有圖元完成了繪製(步驟S58Y)時,確定是否以預定遍數完成了繪製(步驟S59)。如果沒有達到預定的遍數,則操作轉回到步驟S51(步驟S59N)。如果為所有圖元完成了預定遍數,則終止多遍渲染(步驟S59Y)。
作為上述操作的結果,在幀緩衝器32中繪製了將被顯示在顯示器41上的二維圖像(參見圖1)。然後,顯示控制器40把在幀緩衝器32中繪製的二維圖像轉換成為一個圖像信號,並且把該信號傳輸到顯示器41。顯示器41顯示該圖像信號。
從上可知,依據這個實施例中的圖像處理器1,在多遍渲染中從圖元緩衝器21中讀出的幾何數據被限制在需要的最小量,這減小了與渲染有關的負載。
做為選擇,渲染處理器16可以具有如圖19所示的配置。
在圖19中的渲染處理器16與在圖1中的渲染處理器的不同之處在於在Z測試部分25之前提供了一個覆蓋率計算部分33。
覆蓋率計算部分33是用於計算由正被渲染的一給定圖元覆蓋的子像素的數目與組成單個像素的子像素總數的比值(覆蓋率)。可以使用例如在日本公開專利2002-140722(「Apparatus and methodfor rendering antialiased image」,對應於美國公開專利2002/101435A1)中公開的一種設備和方法獲得該覆蓋率。圖20是一個被用來描述在一個像素中圖元的覆蓋率的視圖。在圖20中,3個圖元a、b、和c覆蓋一個像素。就圖元a、b、和c來說,這些圖元在一個像素中的覆蓋率為2∶3∶7。
渲染處理器18依據該比值混合圖元a、b和c,以獲得這個像素的一個代表圖元。
由於為該像素渲染了圖元a、b和c,所以就這個像素來說,阻止Z緩衝器26被圖元a、b和c更新。具有上述特徵的渲染處理器16有效地減少了鋸齒狀圖形。因此,這種方法還能夠被用於消除混疊現象的目的。
利用其中為每個像素計算覆蓋率的這種方法,僅僅在其中覆蓋率等於1(不透明或者在圖元內)的區域中進行Z緩衝。就其中覆蓋率小於1的邊界來說,不執行Z緩衝。考慮到此,與使用Z緩衝器這個事實無關地執行Z排序(Z值的排序),以便消除邊界的不自然性。按照從最遠到最近的次序把這些值寫入在幀緩衝器32中。在這種場合下,刪除被隱藏在其它圖元後面的那些圖元。
雖然已經因此連同多遍渲染的例子描述了本發明,但是可以為使用紋理僅僅渲染一遍一個給定圖元的典型渲染執行該遍測試,以僅僅渲染那些將被顯示在顯示器41上的圖元。
從上可知,依據本發明,與傳統的方法相比,能夠顯著地減少在渲染中、尤其是在多遍渲染中執行的操作數量。
權利要求
1.一種渲染處理單元,用於在一個二維屏幕上渲染三維圖像,該三維圖像中的每一個都是由多個圖元組成的,該渲染處理單元包含一個圖元緩衝器,在其中與相關圖元相關聯地寫入了多個屬性數據集,其中每個屬性數據集表示多個圖元之一的屬性;以及一個測試器,其把所述圖元緩衝器中的多個屬性數據集相互進行比較,以把多個圖元分類成為將被顯示在二維屏幕上的第一組圖元和將不被顯示在二維屏幕上的第二組圖元;該渲染處理單元被配置為渲染第一組圖元和不渲染第二組圖元,其中第一組圖元和第二組圖元由所述測試器分類輸出。
2.如權利要求1所述的渲染處理單元,其中被寫入所述圖元緩衝器中的圖元的數目至少等於適合於一個在二維屏幕上構建的屏幕上的三維圖像的圖元數目。
3.如權利要求1所述的渲染處理單元,進一步包含依據用於一個圖元的已知屬性數據集來插值像素的插值裝置,所述測試器通過把作為像素插值的結果而獲得的一個新的屬性數據集增加到可相互進行比較的屬性數據集中,在像素基礎上對圖元進行分類。
4.如權利要求3所述的渲染處理單元,其中每一個像素被分成預定數目的子像素,所述插值裝置在要對至少一個子像素進行渲染時,依據用於一個圖元的已知屬性數據集插值這些子像素,所述測試器通過把作為子像素插值的結果而獲得的一個新的屬性數據集增加到可相互進行比較的屬性數據集中,在子像素基礎上對圖元進行分類。
5.如權利要求4所述的渲染處理單元,進一步包含覆蓋率計算裝置,其計算由正被渲染的一個給定圖元覆蓋的子像素的數目與組成單個像素的子像素總數的比值,並且根據由所述覆蓋率計算裝置計算的結果確定用於主題像素的屬性數據集。
6.如權利要求1所述的渲染處理單元,其中當在圖元的邊界上的像素處繪製了兩個或更多圖元時,所述測試器不分類這些像素。
7.如權利要求1所述的渲染處理單元,其中所述圖元緩衝器中的每個屬性數據集包含表示一個相關圖元在三維圖像中的位置的位置信息,以及所述測試器比較包含在屬性數據集中的位置信息,以把圖元分類成為第一組和第二組圖元,其中第一組圖元是通過二維屏幕最接近於一個觀察者的視點的圖元,而第二組圖元是除被分類成為第一組圖元的那些圖元之外的其它圖元。
8.如權利要求1所述的渲染處理單元,其中每個圖元適於疊加在包含允許區域和不允許區域的模板數據上,其中該容許區域被允許顯示在二維屏幕上,而不允許區域則不被允許顯示在二維屏幕上,所述模板數據表示將被顯示的一個或者多個圖像的透明度和形狀,所述測試器把圖元分類成為第一和第二組圖元,其中第一組圖元是其至少一部分被疊加在模板數據的允許區域或者不允許區域上的圖元,第二組圖元是除了被分類成為第一組圖元的那些圖元之外的其餘圖元。
9.如權利要求1所述的渲染處理單元,其中所述測試器在一個在渲染過程中被參考的預定的可見標誌表中記錄一個用於描述一個給定圖元是第一組圖元還是第二組圖元的標誌,該標誌被與用於該給定圖元的屬性數據集相關聯地記錄。
10.如權利要求9所述的渲染處理單元,其中該標誌是一個就每個圖元具有不同值的數字標誌,並且該標誌的值依據由正被顯示在二維屏幕上的圖元覆蓋的像素數目而被更新。
11.如權利要求9所述的渲染處理單元,進一步包含編輯裝置,其適於參考記錄在可見標誌表中的用於相關圖元的標誌,限制從圖元緩衝器中為第二組圖元讀出屬性數據集。
12.如權利要求11所述的渲染處理單元,其中所述編輯裝置適於從所述圖元緩衝器中刪除用於被分類成為第二組圖元的那些圖元的屬性數據集。
13.一個圖像處理器,包含一個幀緩衝器,其大小等於一個二維屏幕中的顯示區的大小;一個第一處理器,適於執行對描述一個三維圖像的多個圖元的幾何處理以生成關於該三維圖像的幾何數據;一個第二處理器,依據生成的幾何數據在所述幀緩衝器中渲染對應於該三維圖像的二維圖像;以及一個控制器,用於在顯示區中顯示所渲染的二維圖像。所述第二處理器把多個屬性數據集互相進行比較,以把該多個圖元分類成為將被顯示在二維屏幕上的第一組圖元和不被顯示在二維屏幕上的第二組圖元,以及在所述幀緩衝器中渲染由第一組圖元而不是第二組圖元組成的二維圖像,每個屬性數據集表示由從所述第一處理器中獲得的幾何數據規定的多個圖元中的一個圖元的屬性。
14.如權利要求13所述的圖像處理器,其中在所述第一處理器和所述第二處理器之間提供一個緩衝存儲器,由所述第一處理器生成的幾何數據經由該緩衝存儲器被傳輸到所述第二處理器。
15.如權利要求13所述的圖像處理器,進一步包含一個圖像接受機構,其從一個外部設備中接受將被處理的三維圖像,並把它們提供給所述第一處理器。
16.一種渲染方法,包含由一個用於在二維屏幕上渲染三維圖像的設備按此順序執行的一遍測試和一遍渲染,三維圖像中的每一個都是由多個圖元組成的,並且該設備具有一個在其中寫入了形成圖像的圖元的圖元緩衝器,該遍測試用於在一個圖元緩衝器中與相關圖元相關聯地寫入多個屬性數據集,以及用於相互比較該多個寫入的屬性數據集,以把該多個圖元分類成為將被顯示在二維屏幕上的第一組圖元和將不被顯示在二維屏幕上的第二組圖元,其中每個屬性數據集表示組成這些三維圖像的多個圖元中的一個圖元的屬性,該遍渲染用於從圖元緩衝器中讀出第一組圖元而不是第二組圖元以渲染讀取的第一組圖元,其中第一組圖元和第二組圖元是在該遍測試中被分類出的。
17.如權利要求16所述的渲染方法,其中該設備兩次或多次循環地執行該遍渲染以對同一個圖元兩次或多次地渲染不同的紋理。
18.一種安裝在一個計算機上的半導體設備,其中該計算機連接到一個具有二維屏幕的顯示器,該半導體設備適於在計算機上建立和計算機的其它組件協同操作的下列功能部件,該功能部件包含一個圖元緩衝器,在其中與相關圖元相關聯地寫入多個屬性數據集,其中每個屬性數據集表示組成這些三維圖像的多個圖元之一的屬性;一個測試器,其把圖元緩衝器中的多個屬性數據集相互進行比較,以把多個圖元分類成為將被顯示在二維屏幕上的第一組圖元和不被顯示在二維屏幕上的第二組圖元;以及渲染處理裝置,用於渲染第一組圖元而不是第二組圖元,以生成一個將被顯示在二維屏幕上的二維圖像,其中該第一組圖元和第二組圖元是由測試器分類出的。
19.一個用於指示一臺計算機執行下列任務的電腦程式,該計算機連接到一個在其中寫入了用於形成圖像的圖元的圖元緩衝器、以及一個具有二維屏幕的顯示器上,該任務包含在圖元緩衝器中與相關圖元相關聯地寫入多個屬性數據集,其中每個屬性數據集表示組成這些三維圖像的多個圖元之一的屬性;把在圖元緩衝器中的多個屬性數據集互相進行比較,以把多個圖元分類成為將被顯示在二維屏幕上的第一組圖元和不被顯示在二維屏幕上的第二組圖元;以及渲染第一組圖元而不是第二組圖元,以生成一個將被顯示在二維屏幕上的二維圖像,其中該第一組圖元和第二組圖元是被分類出的。
20.一種計算機可讀存儲介質,其中存儲了如權利要求19所述的電腦程式。
全文摘要
提供了一個用其能夠減少渲染數量的圖像處理器及其組件,以及一種渲染方法。依據在一個圖元緩衝器中的關於多個圖元的數據,多個圖元被一個XYZ裁剪部分、一個Z測試部分、和一個模板測試部分分類成為將被顯示在一個顯示器上的第一組圖元和將不被顯示在其上的第二組圖元。在一個幀緩衝器中使用在圖元緩衝器中的用於第一組圖元的數據繪製一個二維圖像。
文檔編號G06T15/40GK1527990SQ0280911
公開日2004年9月8日 申請日期2002年11月22日 優先權日2001年11月27日
發明者佐佐木伸夫 申請人:索尼計算機娛樂公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀