TWI567635B - 多重圖次渲染之技術 - Google Patents
多重圖次渲染之技術 Download PDFInfo
- Publication number
- TWI567635B TWI567635B TW105121108A TW105121108A TWI567635B TW I567635 B TWI567635 B TW I567635B TW 105121108 A TW105121108 A TW 105121108A TW 105121108 A TW105121108 A TW 105121108A TW I567635 B TWI567635 B TW I567635B
- Authority
- TW
- Taiwan
- Prior art keywords
- pixel
- rendering
- data
- vertex
- stage
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/02—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
- G09G5/026—Control of mixing and/or overlay of colours in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/363—Graphics controllers
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/12—Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/10—Use of a protocol of communication by packets in interfaces along the display data pipeline
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Image Generation (AREA)
Description
本發明係有關多重圖次渲染之技術。
在繪圖發展的領域中,3維技術扮演了關鍵的角色。3維技術係實施於諸如智慧型手機、平板及上網小筆電(netbook)的行動裝置中。在行動裝置上之3維技術的性能與功耗典型上與使用者的視覺感受相關,並影響產品的競爭優勢。
很多3維遊戲使用特殊效果,諸如透明、陰影及/或可調適的紋理/表層,以使得遊戲更吸引終端使用者。不過,為了建立這些特殊效果,在目前之繪圖處理單元上運行的應用軟體需要對同一組的3維對象物多次通過整個3維管線。
例如,為了建立透明效果,應用軟體必須首先做深度剝離(depth peeling),以便為每一個深度層取得圖框緩衝區(frame buffer),並接著按照深度值來混合該些層。在處理深度剝離的處理期間,為了獲得到來自不同層的資料,
應用軟體必須對同一組的3維對象物而運行通過3維管線多次。在每一次的運行通過3維管線期間,3維管線的頂點階段與像素階段都要被計算。然而,在該等運行期間,於像素階段中沒有改變。結果是,在這些圖次中的頂點階段計算係重複且多餘的。關於這些及其它必須考慮的問題,都需要本發明的技術改進。
多重圖次渲染之技術包括接收一或多個要被增強之對象物的頂點資料,顯示清單中的參數可使用該頂點資料來予以決定,多重的像素渲染圖次可使用顯示清單中的參數來予以運行,一或多個對象物之經增強的描繪可根據該多重的像素渲染圖次來予以渲染。也敘述及主張其它的實施例。
100‧‧‧系統
110‧‧‧頂點資料
118‧‧‧繪圖應用軟體編程介面
120‧‧‧多重圖次渲染應用軟體
121‧‧‧繪圖驅動器
122‧‧‧頂點階段
124‧‧‧像素階段
130‧‧‧輸出
300‧‧‧3維管線
302‧‧‧繪圖處理單元
322‧‧‧頂點階段
310‧‧‧繪圖驅動器
325‧‧‧命令緩衝區
326‧‧‧像素階段
315‧‧‧顯示清單
330‧‧‧基元資料
335‧‧‧紋理緩衝區
340‧‧‧像素著色緩衝區
345‧‧‧深度/渲染緩衝區
405‧‧‧第一深度剝離層
410‧‧‧第二深度剝離層
415‧‧‧第三深度剝離層
505‧‧‧第一次運行
510‧‧‧第二次運行
515‧‧‧第三次運行
520‧‧‧基元資料
525‧‧‧紋理緩衝區
530‧‧‧像素著色緩衝區
535‧‧‧深度/渲染緩衝區
540‧‧‧基元資料
545‧‧‧深度/渲染緩衝區
565‧‧‧像素著色緩衝區
580‧‧‧紋理緩衝區
585‧‧‧像素著色緩衝區
550‧‧‧深度/渲染緩衝區
570‧‧‧深度/渲染緩衝區
590‧‧‧深度/渲染緩衝區
620‧‧‧多重圖次渲染應用軟體
610‧‧‧繪圖驅動器
700‧‧‧集中式系統
720‧‧‧計算裝置
730‧‧‧處理組件
740‧‧‧通信組件
750‧‧‧顯示器
710‧‧‧其它裝置
722‧‧‧通信信號
715‧‧‧通信媒體
800‧‧‧計算架構
802‧‧‧電腦
804‧‧‧處理單元
806‧‧‧系統記憶體
808‧‧‧系統匯流排
810‧‧‧非揮發性記憶體
812‧‧‧揮發性記憶體
814‧‧‧內接式硬式磁碟機
816‧‧‧軟式磁碟機
818‧‧‧抽取式磁碟
820‧‧‧光碟機
822‧‧‧抽取式光碟
824‧‧‧硬式磁碟機介面
826‧‧‧軟式磁碟機介面
828‧‧‧光碟機介面
830‧‧‧作業系統
832‧‧‧應用軟體程式
834‧‧‧程式模組
836‧‧‧程式資料
838‧‧‧鍵盤
840‧‧‧滑鼠
842‧‧‧輸入裝置介面
844‧‧‧監視器
846‧‧‧視訊轉接器
848‧‧‧遠端電腦
850‧‧‧記憶體/儲存裝置
852‧‧‧區域網路
854‧‧‧廣域網路
856‧‧‧網路介面或轉接器
858‧‧‧數據機
900‧‧‧通信架構
902‧‧‧用戶端
904‧‧‧伺服器端
906‧‧‧通信框架
908‧‧‧用戶端資料儲存器
910‧‧‧伺服器端資料儲存器
圖1說明用於多重圖次渲染之系統的實施例。
圖2說明用於圖1之系統之邏輯流程的實施例。
圖3說明具有3維管線之繪圖處理單元的實施例。
圖4說明在像素階段期間,對對象物之深度渲染的實施例。
圖5說明像素階段所使用之參數的實施例。
圖6說明多重圖次渲染應用軟體與繪圖驅動器間之通信的實施例。
圖7說明用於圖1之系統之集中式系統的實施例。
圖8說明計算架構的實施例。
圖9說明通信架構的實施例。
各種不同的實施例皆係有關於多重圖次渲染。在實施例中,可在沒有多餘處理頂點資料的情況下發生多重圖次渲染。在實施例中,可接收要被增強之一或多個對象物的頂點資料,在實施例中,可使用頂點資料來決定顯示清單中的參數。可使用顯示清單中的該等參數來運行多重的像素渲染圖次。可根據多重的像素渲染圖次來渲染一或多個對象物之經增強的描繪。
3維效果的渲染可藉由使用在3維管線內之分開的頂點階段與像素階段來予以增進。藉由運行頂點階段單次以建立顯示清單,而後在運行像素階段多次的同時再使用該顯示清單,即可以更佳的性能與較小的功耗來獲致3維效果。結果是,這些實施例可增進操作者、裝置、或網路的可購性、可擴充性、模組性、可擴展性、或交互運作性。
現請參閱圖式,其中,從頭到尾相同的參考數字用來指示相同的元件。在以下的描述中,基於解釋之目的,為了提供對其的徹底瞭解,陳述了諸多的特定細節。不過,很明顯,沒有這些特定的細節也能實行創新的實施例。在其它實例中,為了簡化對其的描述,習知的結構與裝置以方塊圖的形式來予以顯示。意圖要涵蓋落於所主張之主題
之精神與範圍內的所有修改、相等物、及替代物。
圖1說明系統100的方塊圖。在一個實施例中,系統100可包含電腦實施的系統100,其具有一或多個軟體應用軟體及/或組件。雖然圖1中顯示的系統100具有呈現某特定形狀結構(topology)之數量有限的元件,但可明瞭,視特定實施之需要,在另些形狀結構中,系統100可包括更多或更少的元件。
系統100包含多重圖次渲染應用軟體120。在實施例中,多重圖次渲染應用軟體120可運行於繪圖處理單元上。在實施例中,為了建立3維特殊效果,多重圖次渲染應用軟體120可運行通過3維管線。例如,多重圖次渲染應用軟體120可建立特殊效果,諸如但不限於透明、陰影、可調適的紋理及/或可調適的表層。
在實施例中,系統100可藉由在多重圖次渲染應用軟體120內具有繪圖應用軟體編程介面118與繪圖驅動器121來增進渲染3維效果之性能。
在實施例中,繪圖驅動器121可以是3維驅動器。繪圖驅動器121可與繪圖處理單元一起工作以將3維管線分成兩個分開的階段。在實施例中,3維管線可包括頂點階段122與像素階段124。在實施例中,繪圖驅動器121可運行頂點階段122。頂點階段122可被處理,並可對繪圖驅動器121產生中斷。繪圖驅動器121可將頂點階段122的結果儲存於顯示清單中。藉由將結果儲存於顯示清單,像素階段124稍後可使用顯示清單來做像素處理。
在實施例中,為了建立所想要的特殊效果,繪圖驅動器121可運行像素階段124多次通過3維管線。藉由使頂點階段122與像素階段124分開,可使頂點階段運行單一次並儲存結果。所儲存的結果在像素階段的多重圖次期間可被像素分量124所使用。結果,由於每次像素分量124係運行於3維管線中時不必重新使頂點分量122運行,因此節省了電力。
在實施例中,頂點階段122係可操作成基於一或多個對象物而接收頂點資料。在實施例中,頂點資料110可以是用於多重圖次渲染應用軟體120的輸入資料110。在實施例中,頂點資料110可以是來自要被施行特殊效果之一或多個對象物的資料。頂點階段122可使來自對象物的頂點資料110運行通過頂點管線來處理該資料。頂點階段122可決定基元(primitive)資料。在實施例中,基元資料可包括變換、打光、顏色與位置資料的一或多個。
在實施例中,頂點階段122可將基元資料儲存於顯示清單中。在實施例中,顯示清單可包括多個參數。在實施例中,關於顯示清單的參數可包括藉由頂點階段使用頂點資料所決定的基元資料。在實施例中,關於顯示清單的參數可包括指到命令資料緩衝區的指標。例如,關於顯示清單的參數可包括指到紋理緩衝區的指標、指到像素著色緩衝區的指標、及/或指到深度/渲染緩衝區的指標。在實施例中,深度/渲染緩衝區可以是具有各自的深度與渲染資訊之兩個分開的緩衝區。在實施例中,深度緩衝區可包括
深度資訊。深度資訊可被用來反映對象物的距離。在實施例中,渲染緩衝區可包括渲染結果。在實施例中,渲染緩衝區可被稱為圖框緩衝區。
在實施例中,在完成頂點階段122的處理之後,繪圖驅動器121可使用來自由頂點階段122所產生之顯示清單的參數而開始像素階段124。在實施例中,像素階段124可與頂點階段122各自獨立。換言之,像素階段124可運行多次而不需重新運行頂點階段122。在實施例中,像素階段124係可操作成使用顯示清單來運行多重的像素渲染圖次。在實施例中,可使像素渲染圖次運行第一次以取得最近之深度層的深度/渲染或圖框緩衝區。在實施例中,每一次的像素渲染圖次皆可從次一個最近之深度層取得圖框緩衝區。在實施例中,可使像素渲染圖次運行最後一次以取得最遠之深度層的圖框緩衝區。
在實施例中,在像素階段124運行多重的像素渲染圖次且藉由深度剝離而到達最遠層之後,像素階段124可渲染要被增強之一或多個對象物之經增強的描繪。在實施例中,一或多個對象物之經增強的描繪可以是多重圖次渲染應用軟體120的輸出130。輸出130可以包括具有特殊效果之一或多個對象物的渲染。例如,在深度剝離之後,多重圖次渲染應用軟體120的像素階段124可從最遠層到最近層來混合深度/渲染或圖框緩衝區,以取得一或多個對象物的透明效果。
本文包括一組流程圖表,其代表用以實施所揭示之架
構之創新態樣的例示性方法。然而,為了簡化解釋之目的,本文例如以流程圖表或流程示圖之形式而將本文所顯示的一或多種方法顯示與描述為一系列的動作,須瞭解與理解到,該等方法並不受各項動作之順序的限制,如同某些動作以與本文所顯示及描述之不同的順序及/或與其它動作同時出現。例如,熟悉此方面技術之人士將可瞭解與理解,方法可替代地以諸如狀態圖中之一連串相關的狀態或事件來予以表示。此外,並非所有的動作都被說明於該方法中,也許是創新之實施所需。
圖2說明邏輯流程200的一個實施例。邏輯流程200可以代表由本文所描述之一或多個實施例所執行之某些或全部操作。
在圖2所顯示之說明的實施例中,邏輯流程200在方塊202處接收要被增強之一或多個對象物的頂點資料。例如,可在3維管線的第一階段期間接收頂點資料。在實施例中,3維管線可具有兩個階段。在實施例中,第一階段可包括頂點階段。頂點階段可接收一或多個要被增強之對象物的頂點資料。例如,使用者可能想要在場景中的某個對象物或一組對象物顯現為透明的。結果,可在3維管線中的頂點階段期間接收與場景中之該個對象物或該組對象物相關聯的頂點資料。
在方塊204處,在第一階段的單次運行期間,邏輯流程200可使用頂點資料來決定顯示清單。例如,可在頂點階段期間處理頂點資料。在實施例中,頂點資料可被處理
及/或匯編以決定關於頂點資料的位置、顏色、及其它資訊。實施例並不於此實例。
在實施例中,頂點階段可根據經處理過的頂點資料來建立顯示清單。顯示清單可包括一或多個參數。在實施例中,顯示清單參數可包括基元資料。在實施例中,顯示清單參數可包括命令緩衝區。命令緩衝區可包括控制緩衝區。命令緩衝區可包括指到與第二階段或像素階段有關之各種緩衝區的指標。在實施例中,在像素階段會使用指到各種緩衝區的指標。在實施例中,命令緩衝區可包括但不限於指到紋理緩衝區的指標、指到像素著色緩衝區的指標、及指到深度/渲染緩衝區的指標。
在實施例中,在頂點階段期間,命令緩衝區組可被改變於像素階段之前。在實施例中,在頂點階段期間,命令緩衝區可為預設的紋理緩衝區、像素著色緩衝區、及/或深度/渲染緩衝區。在實施例中,使用者可決定應使用哪一個特定的緩衝區且可重新定義參數,而使得指標可指到該特定的緩衝區。例如,如果在頂點階段被運行之後,使用者指定一特定的紋理緩衝區,則像素階段會使用該特定的紋理緩衝區而不是顯示清單上指標所指到之預設的紋理緩衝區。在實施例中,顯示清單可以用指到被使用者所選擇到的紋理緩衝區來替換指到預設之紋理緩衝區的指標。因為在3維管線中頂點階段與像素階段被分開,所以在頂點階段被運行第一次之後,而不是在像素階段被運行第一次之前,使用者可選擇一或多個緩衝區。
在方塊206處,邏輯流程220可使用顯示清單來運行多次第二階段的像素渲染圖次。例如,為了獲致所想要的特殊效果,可使像素階段運行多次。每次像素階段被運行時,都使用顯示清單而不必再運行頂點階段。顯示清單內的指標可被更新,而使得像素階段可使用來自顯示清單中之參數的資訊而不需要再運行頂點階段。
例如,像素階段可被運行多次,且每次運行即自對象物去除一層深度層。像素階段可連續運行,直到像素階段決定已經從影像中去除最後一層的深度層為止。實施例並不限於此實例。
在方塊208處,邏輯流程220可根據多次的第二階段像素渲染圖次來渲染一或多個對象物之經增強的描繪。例如,藉由運行頂點階段單一次,並使用自頂點階段所產生的顯示清單來運行像素階段多次,一或多個對象物之經增強的描繪可被渲染。在實施例中,3維特殊效果可被渲染。例如,可在一或多個對象物上描繪各種不同的紋理,該等對象物可被顯示為部分或完全透明的及/或該等對象物可被顯示具有陰影。實施例並不限於此實例。
例如,一棟建物可以是在場景中要被增強的對象物。使用者可能想要使該建物顯現為透明的。可為該建物對象物決定其頂點資料。頂點資料可由繪圖處理單元所接收。頂點資料可在3維管線的頂點階段期間被接收到。經匯編及處理過的頂點資料可以是基元資料。在頂點階段的單一次運行期間,顯示清單可被決定。顯示清單可包含參數,
諸如但不限於基元資料與控制緩衝區。
繪圖處理單元可決定是否要運行像素階段。繪圖驅動器可等待著要運行像素階段,直至接收到命令為止。在實施例中,可接收來自使用者的命令以使用特定的緩衝區來處理基元資料。繪圖處理單元可根據特定的緩衝區來重新定義及/或更新顯示清單中的參數。例如,繪圖處理單元可更新命令緩衝區中的一或多個指標,而使得指標指到由使用者所選擇到的特定像素著色緩衝區。這允許像素階段中能夠使用由使用者所指定的像素著色緩衝區。
在實施例中,可運行多次的第二階段像素渲染圖次。在實施例中,第一次的像素渲染圖次可移去該建物對象物的第一層。在實施例中,第二次的像素渲染圖次可移去該建物對象物的第二層。後續的第二階段像素渲染圖次可被運行直到該建物對象物的最後一層被決定為止。
例如,經增強的透明影像可以是該建物對象物的渲染。當已經對該建物對象物運行多次的像素渲染圖次時,可為多個深度剝離層而決定多個深度/渲染圖框緩衝區。為了渲染透明的對象物,繪圖處理單元可按照深度值而使用從最遠層至最近層的圖框緩衝區來混合該等層。該建物對象物的透明影像即可被渲染出。在實施例中,該透明的建物對象物可被渲染於行動裝置的顯示器上。實施例並不限於此實例。
圖3說明具有3維管線300之繪圖處理單元的實施例。在實施例中,繪圖處理單元302可包括PowerVR繪
圖處理單元。在實施例中,如同對多重圖次渲染應用軟體120之討論,具有3維管線300的繪圖處理單元302可將3維管線分開成頂點階段322與像素階段326。
在實施例中,繪圖處理單元302可使用頂點管線來處理頂點階段322。繪圖處理單元302處理頂點階段322而後對繪圖驅動器310產生中斷。繪圖驅動器310可運行頂點階段322。繪圖驅動器310可接收中斷來將頂點階段322的結果儲存於輸出緩衝區內,諸如,但不限於顯示清單315。藉由將結果儲存入顯示清單315中,像素階段326稍後可使用顯示清單315來做像素處理。在實施例中,繪圖驅動器310可以運行像素階段326。
在實施例中,顯示清單315可包括像素處理所需的資訊。在實施例中,顯示清單315可包括一或多個參數。在實施例中,顯示清單315中的參數可包括基元資料330。在實施例中,基元資料330可包括由頂點階段322所處理的頂點資料。如同以上所討論者,基元資料330可包括變換、打光、顏色與位置資料的一或多個。
在實施例中,顯示清單315中的參數可包括命令緩衝區。在實施例中,命令緩衝區325可包括控制串流資訊。在實施例中,命令緩衝區325可包括指到在像素階段326中進行像素處理所需之各種緩衝區的指標。例如,命令緩衝區325可包括指到紋理緩衝區335的指標。紋理緩衝區可包括紋理影像,紋理影像可針對場景中的一或多個對象物而被渲染。在實施例中,紋理座標資訊可以是頂點原始
屬性資料。在實施例中,紋理座標資訊可以被用來決定如何將紋理影像映射到3維的對象物上。紋理緩衝區335中的資訊與基元資料330可為在像素階段326期間供處理用的輸入。
在實施例中,指到像素著色緩衝區340的指標可被包括在顯示清單315內。像素著色緩衝區340可包括在像素階段326期間用來處理輸入的資訊。特別是,像素著色緩衝區340可包括用來處理紋理緩衝區335中之資訊與基元資料330的資訊。在實施例中,像素著色緩衝區340可包括編程碼。在實施例中,在像素階段326期間,儲存在像素著色緩衝區340中的碼可藉由繪圖處理單元302來予以載入。
在實施例中,指到深度/渲染緩衝區345的指標可被包括在顯示清單315內。在實施例中,深度/渲染緩衝區345可包括具有各自的深度與渲染資訊之兩個分開的緩衝區。在實施例中,深度緩衝區可包括深度資訊。深度資訊可被用來反映對象物的距離。在實施例中,渲染緩衝區可包括渲染結果。在實施例中,深度/渲染緩衝區345可包括在像素著色緩衝區340處理基元資料330與紋理緩衝區335之後的輸出資訊。在實施例中,當像素階段326運行去除最近之層的像素圖次時,深度/渲染緩衝區345可儲存位在每一個深度層的像素。
圖4說明在像素階段期間,對對象物渲染之深度的實施例。在實施例中,像素處理可包括一或多個對象物之各
層的深度剝離。例如,要被實施深度剝離的對象物可以是含有線的圓。
對象物可運行通過頂點階段,以根據含有線之圓的對象物來建立具有多個參數的顯示清單。圓與線之對象物可被運行通過3維管線中的第一階段。第一階段可以是頂點階段。在頂點階段被完成之後,圓與線之對象物可準備好進行3維管線中的第二階段。第二階段可以是用於像素處理的像素階段。像素階段可包括使用來自顯示清單之參數之多次運行的像素渲染圖次。
例如,第一像素渲染圖次可取得最近之深度層的深度/渲染或圖框緩衝區。如圖4中所示,第一層(層0)405可包括通過像素階段的第一圖次。在第一深度剝離層405中,最近的層可被去除。
多重圖次渲染應用軟體120可決定圓與線之對象物還有更多的層。結果,多重圖次渲染應用軟體120可從顯示清單中更新指到緩衝區的指標,且可對圓加線之對象物再運行像素階段。因為顯示清單可被使用於後續的像素圖次,所以頂點階段不需要被再次運行。因此,頂點階段可被運行單一次,且像素階段可被再運行以移除各個不同的深度層。
通過像素階段的第二圖次可決定圓加線之對象物的第二層(層1)410。像素階段可藉由使用來自第一層405的參數來決定下一個最近的層,並移除第一層405的像素。多重圖次渲染應用軟體120可移除第一層405的像素
以取得下一個最近的層410。下一個最近的層可以是第二層410。可運行第二階段像素渲染圖次以取得第二深度層410的圖框緩衝區。
通過像素階段的第三圖次可決定第三與最後一層(層2)415。由於第一層與第二層在頭兩次的圖次期間被移除,所以最近的層可為第三層415。像素階段可藉由使用來自第二層410的參數來決定下一個最近的層,並移除第一層405與第二層410的像素。多重圖次渲染應用軟體120可移除第一層405與第二層410的像素以取得下一個最近的層415。像素渲染圖次可被運行以取得最遠之深度層415的圖框緩衝區。像素渲染圖次可藉由運行另一次的像素圖次並決定已經沒有更遠的深度層來決定已到達最遠的層415。在實施例中,當最後的像素圖次被運行時,後續的深度/渲染緩衝區與前一個深度/渲染緩衝區可以是相同的。在實施例中,當最後一次的像素圖次被運行時,在深度/渲染緩衝區中不會再有任何像素。在實施例中,當最後一次的像素圖次被運行時,可以不存在有更遠的層,因為可能沒有更大的深度值來取代深度緩衝區中之目前的值,而且也沒有渲染的像素要被儲存於渲染緩衝區中。
圖5說明用於像素階段中之參數的實施例。如圖5中所示,基元資料520與紋理緩衝區525可為輸入。像素著色緩衝區530可提供碼來處理該等輸入。深度/渲染緩衝區535可提供輸出。
例如,通過像素階段的第一次運行505可使用基元資
料540做為輸入。通過像素階段的第一次運行505可不具有來自紋理緩衝區525的任何紋理資料,因為不需要與前一層做比較。在通過像素階段的第一次運行505期間,像素著色緩衝區資訊545可處理基元資料並且最近層之像素可被置入深度/渲染緩衝區550做為輸出。
在像素階段的第二次運行510之前,緩衝區可被更新。來自深度/渲染緩衝區550的輸出資料可被置入紋理緩衝區560中。接著,可使用來自紋理緩衝區560的像素資料,連同基元資料540一起做為像素階段之第二次運行510的輸入。第二次運行510可使用來自像素著色緩衝區565的資料來處理來自紋理緩衝區560的像素資料與基元資料540。在實施例中,像素著色緩衝區585可將基元資料540與來自紋理緩衝區560的像素資料做比較來決定下一層。處理的結果可以是可被置入深度/渲染緩衝區570中的像素資料。
在像素階段的第三次運行515之前,緩衝區可被更新。來自深度/渲染緩衝區570的輸出資料可被置入紋理緩衝區580中。使用來自紋理緩衝區580的資料,連同基元資料540一起做為像素階段之第三次運行515的輸入。第三次運行515可使用來自像素著色緩衝區585資料來處理來自紋理緩衝區580的像素資料與基元資料540。在實施例中,像素著色緩衝區585可將基元資料540與來自紋理緩衝區585的像素資料做比較以決定下一層。處理的結果可以是可被置入深度/渲染緩衝區590中的像素資料。
由於深度/渲染緩衝區590中的像素資料可以是來自對象物的最終或最後一層,所以,像素階段的深度剝離可被完成。實施例並不限於此實例。
圖6說明多重圖次渲染應用軟體與繪圖驅動器間之通信的實施例。在實施例中,多重圖次渲染應用軟體620可接收命令以開啟應用軟體625。在實施例中,命令可以是用於場景設置(setup)。在實施例中,可對場景使用特殊效果來渲染一或多個對象物。
在多重圖次渲染應用軟體620接收命令而開啟應用軟體之後,多重圖次渲染應用軟體620可發送資訊給繪圖驅動器610。例如,發送給繪圖驅動器610的資訊可包括用來為場景中之一或多個對象物決定3維基元的頂點資料。繪圖驅動器610可產生一或多個命令緩衝區並儲存用於像素階段的指標630。例如,繪圖驅動器610可準備命令緩衝區。例如,繪圖驅動器610可將紋理緩衝區、像素著色緩衝區、及深度/渲染緩衝區被使用於何處記錄於命令緩衝區內。在實施例中,繪圖驅動器610可儲存指到紋理緩衝區、像素著色緩衝區、及深度/渲染緩衝區的指標。
多重圖次渲染應用軟體620可開始頂點階段635。多重圖次渲染應用軟體620發送資訊給繪圖驅動器610,以使繪圖驅動器610可以開始頂點階段來決定顯示清單640。在完成頂點階段之後,繪圖驅動器610可停止處理。在實施例中,在開始像素階段之前,繪圖驅動器610可等待來自多重圖次渲染應用軟體620的命令。在實施例
中,繪圖驅動器610可接收來自多重圖次渲染應用軟體620之被使用於像素階段中的輸入。
在實施例中,多重圖次渲染應用軟體620可設置紋理緩衝區、像素著色緩衝區、及深度/渲染緩衝區645。在實施例中,可接收命令來設置命令緩衝區。在實施例中,緩衝區可經由輸入到多重圖次渲染應用軟體620中的使用者輸入來予以決定。例如,在頂點階段之後,使用者可決定在像素階段期間所要使用的紋理緩衝區。例如,使用者可決定在像素階段期間所要使用的像素著色緩衝區。實施例並不限於此實例。
根據多重圖次渲染應用軟體620所做的設置,繪圖驅動器610可更換顯示清單之命令緩衝區內之紋理緩衝區、像素著色緩衝區、及/或深度/渲染緩衝區的指標650。
多重圖次渲染應用軟體620可藉由與繪圖驅動器610通信而開始像素階段655來運行像素圖次660。在每一次的像素圖次660之後,命令緩衝區內的指標可被更換650。多重圖次渲染應用軟體620可決定其是否為最後一次的圖次665。如果繪圖驅動器610能夠決定新的深度層,則繪圖驅動器610可運行另一次的像素圖次660。
當完成像素階段且已運行660最後一次的圖次665,則多重圖次渲染應用軟體620可命令繪圖驅動器610使用先前之圖次的結果來產生最終的場景675。繪圖驅動器610可顯示經渲染過的結果680。經渲染過的結果680可包括具有3維對象物的場景。
圖7說明集中式系統700的方塊圖。集中式系統700可在單一的計算實體內實施系統100之某些或所有的結構及/或操作,諸如位在單一計算裝置720內的實體。
在實施例中,計算裝置720可以是行動裝置。行動裝置可包括但不限於電腦、伺服器、工作站、筆記型電腦、手持式電腦、電話、行動電話、個人數位助理(PDA)、行動電話與PDA的組合、等等。
計算裝置720可使用處理組件730來執行系統100的處理操作或邏輯。處理組件730可包含各種的硬體元件、軟體元件、或兩者的組合。硬體元件的實例可包括裝置、組件、處理器、微處理器、電路、電路元件(例如,電晶體、電阻器、電容器、電感器、等等)、積體電路、特殊用途積體電路(ASIC)、可程式邏輯裝置(PLD)、數位信號處理器(DSP)、現場可程式閘陣列(FPGA)、記憶體單元、邏輯閘、暫存器、半導體裝置、晶片、微晶片、晶片組、等等。軟體元件的實例可包括軟體組件、程式、應用軟體、電腦程式、應用軟體程式、系統程式、機器程式、作業系統軟體、中間軟體、韌體、軟體模組、常式、子常式、函數、方法、程序、軟體介面、應用軟體介面(API)、指令集、運算碼、電腦碼、碼段、電腦碼段、字元、值、符號、或它們的任何組合。決定實施例是使用硬體元件及/或軟體元件來予以實施,係依許多因數而異,諸如,所想要的計算速率、電力位準、熱耐受性、處理循環估算、輸入的資料率、輸出的資料率、記憶體資
源、資料匯流排速率、及其它的設計或性能限制,視所想要的某特定實施而定。
計算裝置720可使用通信組件740來執行系統100的通信操作或邏輯。通信組件740可用任何習知的通信技術及協定來予以實施,諸如適用於封包交換式網路(例如,公共網路,諸如網際網路、私有網路,諸如,企業內部網路、等等)、電路交換式網路(例如,公共交換式電話網路)、封包交換式網路與電路交換式網路之組合(具有適合閘道器與轉譯器)的技術。通信組件740可包括各種不同類型的標準通信元件,諸如一或多個通信介面、網路介面、網路介面卡(NIC)、無線電、無線發射器/接收器(收發器)、有線及/或無線通信媒體、實體連接器等等。舉例來說,但不限於包括有線通信媒體與無線通信媒體的通信媒體720。有線通信媒體的實例可包括電線、電纜、金屬導線、印刷電路板(PCB)、背板、交換核心、半導體材料、雙絞線對、同軸電纜、光纖、被傳播的信號、等等。無線通信媒體的實例包括音波、射頻(RF)頻譜、紅外線及其它的無線媒體720。
計算裝置720可經由通信組件740、透過使用通信信號722的通信媒體715而與其它裝置710、730相通信。在實施例中,計算裝置720可包括但不限於智慧型手機、平板電腦、膝上型電腦等。
在一個實施例中,計算裝置720可包含顯示器750。在一個實施例中,顯示器750包含液晶顯示器(LCD)。
在一個實施例中,顯示器750可包含有機發光二極體(OLED)顯示器。在一個實施例中,由於OLED顯示器提供優於液晶顯示器(LCD)的色彩飽合度與視角而使用OLED顯示器。在一個實施例中,顯示器750包含一或多個OLED顯示螢幕。
圖8說明適合用來實施前述各種實施例之例示性計算架構800的實施例。如同本申請案中所使用的名詞“系統”與“組件”意欲指的是與電腦相關的實體,可以是硬體,硬體與軟體之組合、軟體、或執行中的軟體、例示性計算架構800所提供的實例。例如,組件可以是但不限於在處理器上運行的處理、處理器、硬式磁碟機、多種儲存裝置(光學及/或磁性儲存媒體)、對象物、可執行物、執行的線程、程式、及/或電腦。舉例說明,在伺服器上運行的應用軟體及伺服器可為組件。一或多個組件可存在於處理及/或執行的線程之內,且組件可本地化於一台電腦上及/或分布於兩或更多台電腦上。此外,各組件可藉由不同類型的通信媒體而互相耦接在一起以協調操作。該協調可包括單向或雙向的資訊交換。例如,組件可在通信媒體上傳遞信號形式的資訊來通信。資訊可被實施為分配給各不同信號線上的信號。在此等配置中,每一個訊息為信號。不過,其它的實施例可替代為使用資料訊息。這些資料訊息可橫跨各不同的連接來予以傳送。例示性的連接包括平行介面、串列介面、與匯流排介面。
在一個實施例中,計算架構800可包含或者被實施為
電子裝置的一部分。電子裝置的實例可包括但不限於行動裝置、個人數位助理、行動計算裝置、智慧型電話、細胞式電話、手機、單向呼叫器、雙向呼叫器、發訊裝置、電腦、個人電腦(PC)、桌上型電腦、膝上型電腦、筆記型電腦、手持式電腦、平板電腦、伺服器、伺服器陣列或伺服器場、全球資訊網伺服器、網路伺服器、網際網路伺服器、工作站、迷你電腦、主機電腦、超級電腦、網路設備、全球資訊網設備、分布式計算系統、多處理器系統、處理器式系統、消費型電子裝置、可程式消費型電子裝置、電視、數位電視、機上盒、無線存取點、基地台、用戶站台、行動用戶中心、無線電網路控制器、路由器、集線器、閘道器、電橋、開關、機器、或以上這些的組合。實施例並不限於此。
計算架構800包括各種共同的計算元件,諸如一或多個處理器、共同處理器、記憶體單元、晶片組、控制器、周邊、介面、振盪器、時序裝置、視訊卡、音效卡、多電腦輸入/輸出(I/O)組件等等。不過實施例並不限於藉由計算架構800來予以實施。
如圖8所示,計算架構800包含處理單元804、系統記憶體806、及系統匯流排808。處理單元804可以是任何一種商用處理器。也可使用雙微處理器與其它多處理器架構做為處理單元804。系統匯流排808提供用於系統組件的介面,包括但不限於系統記憶體806與處理單元804的介面。系統匯流排808可以是數種類型之匯流排結構其
中任一者,其可進一步互連到記憶體匯流排(有或沒有記憶體控制器)、周邊匯流排、及使用任何一種商用匯流排架構的本地匯流排。
計算架構800可包含或實施各種不同的製造物件。製造物件可包含電腦可讀取儲存媒體到儲存邏輯。本發明的實施例也至少部分可實施為包含在非暫時性電腦可讀取媒體之中或之上的指令,其可被一或多個處理器所讀取與執行,以啟動本文所敘述之操作的性能。電腦可讀取儲存媒體的實例可包括任何能夠儲存電子資料的有形媒體,包括揮發性記憶體或非揮發性記憶體、可移式或不可移式記憶體、可抹除或不可抹除式記憶體、可寫入或可覆式記憶體等等。邏輯的實例可包括使用任何適合類型之碼來實施的可執行電腦程式指令,諸如源碼、經編譯的碼、經解譯的碼、可執行的碼、靜態碼、動態碼、物件導向碼、形碼等等。
系統記憶體806可包括一或多種形式之較高速記憶體單元之各種不同類型的電腦可讀取儲存媒體,諸如,唯讀記憶體(ROM)、隨機存取記憶體(RAM)、動態RAM(DRAM)、雙資料率DRAM(DDRAM)、同步DRAM(SDRAM)、靜態RAM(SRAM)、可程式ROM(PROM)、可抹除可程式ROM(EPROM)、電氣可抹除可程式ROM(EEPROM)、快閃記憶體、聚合物記憶體,諸如鐵電聚合物記憶體、雙向記憶體、相變或鐵電記憶體、矽-氧化物-氮化物-氧化物-矽(SONOS)記憶體、
磁性或光學卡、或適合儲存資訊之任何其它類型的媒體。在圖8所示的說明實施例中,系統記憶體806可包括非揮發性記憶體810及/或揮發性記憶體812。基本輸入/輸出系統(BIOS)可被儲存在非揮發性記憶體810中。
電腦802可包括一或多種形式之較低速記憶體單元之各種類型的電腦可讀取儲存媒體,其包括內接式硬式磁碟機(HDD)814、用來讀取或寫入抽取式磁碟818的軟式磁碟機(FDD)816、用來讀取或寫入抽取式光碟822(例如,CD-ROM或DVD)的光碟機820。HDD 814、FDD 816、及光碟機820可分別藉由HDD介面824、FDD介面826、及光碟機介面828而被連接到系統匯流排808。用於外部驅動實施的HDD介面824可包括通用序列匯流排(USB)與IEEE 1394介面技術的至少其中之一者或兩者。
磁碟機與相關的電腦可讀取媒體提供資料、資料結構、電腦可執行指令、等等的揮發性及/或非揮發性儲存。例如,若干個程式模組可儲存在碟機與記憶體單元810、812中,包括作業系統830、一或多個應用軟體程式832、其它程式模組834、及程式資料836。
一或多個應用軟體程式832、其它程式模組834、及程式資料836可包括例如頂點階段122與像素階段124。
使用者可經由一或多個有線及/或無線輸入裝置而將命令與資訊輸入到電腦802內,例如,鍵盤838與指向裝置,諸如滑鼠840。其它輸入裝置可包括麥克風、紅外線
(IR)搖控、搖桿、遊戲控制器、觸控筆、觸控螢幕、等等。這些與其它的輸入裝置通常經由耦接於系統匯流排808的輸入裝置介面842而被連接到處理單元804,但也可經由其它的介面連接,諸如平行埠、IEEE 1394串列埠、遊戲埠、USB埠、IR介面、等等。
監視器844或其它類型的顯示器裝置也經由諸如視訊轉接器846的介面而被連接到系統匯流排808。除了監視器844,電腦典型上包括其它的周邊輸出裝置,諸如喇叭、印表機等。
電腦802可操作於網連的環境中,使用經由有線及/或無線通信的邏輯而被連接到一或多台遠端電腦,諸如遠端電腦848。遠端電腦848可以是工作站、伺服器電腦、路由器、個人電腦、可攜式電腦、微處理器式娛樂設備、同級裝置、或其它共用的網路節點,且典型上包括了關於所描述之電腦802的很多或所有元件,然而,基於簡潔之目的,僅說明了記憶體/儲存裝置850。所描述的邏輯連接包括連接到區域網路(LAN)852及/或更大型網路(例如,廣域網路(WAN)854)之有線/無線的連接性。此種LAN與WAN網連環境常見於辦公室與公司,且有助於企業範圍的電腦網路,諸如內部網路,所有這些都可連接到全球通信網路,例如,網際網路。
當在LAN的網連環境中使用時,電腦802經由有線及/或無線通信網路介面或轉接器856而被連接到LAN 852。轉接器856可有助於與LAN 852的有線及/或無線通
信,其也可包括配置於其上的無線存取點,供與轉接器856的無線功能通信。
當在WAN的網連環境中使用時,電腦802可包括數據機858,或連接到WAN 854上的通信伺服器,或用來在WAN 854上建立通信的其它方法,諸如藉由網際網路。數據機858可以是內部或外部及有線及/或無線的裝置,經由輸入裝置介面842而被連接到系統匯流排808。在網連的環境中,關於電腦802所描述的程式模組或其部分,可被儲存於遠端記憶體/儲存裝置850中。須明瞭,所顯示的網路連接係例示性,且可使用建立電腦間之通信鏈結的其它方法。
電腦802可操作來使用IEEE 802系列的標準與有線及無線裝置或實體通信,諸如操作地配置在與例如印表機、掃瞄器、桌上型及/或可攜式電腦、個人數位助理(PDA)、通信衛星、任何設備件或與可無線偵測之標籤相關之位置(例如,資訊站、書報攤、餐廳)、及電話無線通信(例如,IEEE 802.11空中調變技術)中的無線裝置。此至少包括Wi-Fi(或無線保真度)、WiMax、及藍牙無線技術。因此,通信可以是至少兩裝置之間以習用網路或簡單的特定通信所預定義的結構。Wi-Fi網路使用稱為IEEE 802.11x(a,b,g,n,等)的無線電技術,以提供安全、可靠、快速的無線連接性。Wi-Fi網路可用來將電腦連接到另一台電腦、連接到網際網路、及連接有線網路(使用與IEEE 802.3相關的媒體及功能)。
圖9說明適合用來實施前述各種實施例之例示性通信架構900的方塊圖。通信架構900包括各種共同的通信元件,諸如發射器、接收器、收發器、無線電、網路介面、基帶處理器、天線、放大器、濾波器、等等。不過,實施例不限於藉由通信架構900來予以實施。
如圖9所示,通信架構900包含包括一或多個用戶端902與伺服器端904。用戶端902可實施用戶端系統320。用戶端902與伺服器端904係操作地連接到一或多個各自的用戶端資料儲存器908與伺服器端資料儲存器910,其可用來儲存分別位於用戶端902與伺服器端904的資訊,諸如餅乾(cookie)及/或相關的上下文資訊。
用戶端902與伺服器端904可使用通信框架906而互相間傳遞資訊。通信框架906可使用任何眾所周知的通信技術與協定來予以實施,諸如參考系統300所描述的那些技術。通信框架906可被實施為封包交換式網路(例如,諸如網際網路的公共網路、諸如企業內部網路的私有網路,等等)、電路交換式網路(例如,公共交換式電話網路)、或封包交換式網路與電路交換式網路(具有適合的閘道與轉譯器)的組合。
某些實施例會使用“一個實施例”或“某實施例”等用語連同它們的衍生詞來描述。這些名詞意指與實施例相關之特定的特徵、結構、或特性包括在至少一實施例之內。在本說明書中各處出現的片語“在一個實施例中”,並不必然全都參考到相同的實施例。此外,某些實施例會使用“耦
接”與“連接”等措辭連同它們的衍生詞來描述。這些名詞並不必然意欲彼此為同意字。例如,某些實施例可能使用“連接”及/或“耦接”來指示該兩或多個元件彼此直接實體或電氣接觸。不過,名詞“耦接”也意指兩或多個元件並未彼此直接接觸,但依然作共同操作或彼此互動。
須強調,本揭示的摘要提供讀者快速弄清所揭示之技術的本質。其只是提供瞭解,不是用來解釋或限制申請專利範圍的範圍或意義。此外,在前述的實施方式中可看出,各種不同的特徵被群組在單個實施例中是為了揭示的流暢。揭示的此方法並不能解釋成反映所主強之實施例需要比每一個申請專利範圍中所明確陳述之特徵更多特徵之意圖。反之,如以下申請專利範圍所反映,發明的主題在於少於單一揭示之實施例的所有特徵。因此,以下的申請專利範圍藉以併入實施方式,每一個申請專利範圍就其本身而言即為一個獨立的實施例。在所附的申請專利範圍中所使用的名詞“包括”與“在其中”如同單純的英文,分別等同於各自的名詞“包含”與“其中”。此外,名詞“第一”、“第二”、“第三”等等,僅是用來標示,且並無意對它們的物件加諸數字需要。
前文敘述了包括所揭示之架構的實例。當然,無法敘述組件及/或技術之每一種能想像到的組合,但熟悉一般技術之人士可意識到,很多進一步的組合與置換是可能的。因此,本創新的架構意欲包含所有這類的替代、修改與衍生,其全落於所附之申請專利範圍的精神與範圍之
內。
100‧‧‧系統
110‧‧‧頂點資料
118‧‧‧繪圖應用軟體編程介面
120‧‧‧多重圖次渲染應用軟體
121‧‧‧繪圖驅動器
122‧‧‧頂點階段
124‧‧‧像素階段
130‧‧‧輸出
Claims (20)
- 一種系統,包含:繪圖處理單元,係耦接至記憶體,該繪圖處理單元包括三維(3D)繪圖處理管線,該三維(3D)繪圖處理管線包括頂點處理階段和像素處理階段,該3D繪圖處理管線用以使用該頂點處理階段來決定針對幾何對象物的一組參數,使用針對該幾何對象物的該組參數來進行通過該像素處理階段之多重的像素渲染圖次,以及根據該多重的像素渲染圖次來渲染包括該幾何對象物之增強的描繪之場景,該幾何對象物之該增強的描繪包括一或多個繪圖效果;以及顯示器,係耦接至該繪圖處理單元,用以顯示該幾何對象物之該增強的描繪。
- 如申請專利範圍第1項之系統,其中,該一或多個繪圖效果包括透明效果及陰影效果的一或多者。
- 如申請專利範圍第2項之系統,另包含用以將針對該幾何對象物的頂點資料提供給該繪圖處理單元之處理單元。
- 如申請專利範圍第3項之系統,其中,針對該幾何對象物的該組參數包括根據該頂點資料所產生之基元資料。
- 如申請專利範圍第4項之系統,其中,該基元資料包括變換、打光、顏色與位置資料的一或多者。
- 如申請專利範圍第1項之系統,其中,針對該幾何對象物的該組參數包括與該3D繪圖處理管線之該像素 處理階段相關聯的像素著色資料,該像素著色資料包括用以經由該3D繪圖處理管線之該像素處理階段而執行的程式碼。
- 如申請專利範圍第6項之系統,其中,該像素著色資料包括用以執行於針對該場景的該多重的像素渲染圖次期間之多重組的像素著色程式碼。
- 如申請專利範圍第1項之系統,其中,該3D繪圖處理管線係用以在該多重的像素渲染圖次期間對多重的渲染緩衝區進行渲染。
- 如申請專利範圍第8項之系統,其中,該3D繪圖處理管線係用以根據該多重的渲染緩衝區來渲染該場景。
- 如申請專利範圍第8項之系統,其中,該3D繪圖處理管線係用以針對該頂點處理階段的一或多次運行進行通過該像素處理階段之多重的像素渲染圖次。
- 一種資料處理系統,包含:顯示器,用以顯示場景中的對象物;晶片上系統積體電路,其包括繪圖處理器;製造物件,其包含含有指令的儲存媒體,當該等指令被執行時致使該晶片上系統積體電路用以:接收用於該對象物的頂點資料;決定在該繪圖處理器之三維(3D)繪圖處理管線之頂點處理階段的運行期間用於該對象物的一組參數;使用用於該對象物的該組參數來進行通過該3D繪圖處理管線之像素處理階段之多重的像素渲染圖次;以 及根據該多重的像素渲染圖次來渲染該對象物之增強的描繪,該對象物之該增強的描繪包括透明效果及陰影效果的一或多者。
- 如申請專利範圍第11項之資料處理系統,另包含指令,當該等指令被執行時致使該晶片上系統積體電路用以決定在該三維(3D)繪圖處理管線之該頂點處理階段的一或多次運行期間,要被使用於通過該像素處理階段之多重的像素渲染圖次中的該組參數。
- 如申請專利範圍第11項之資料處理系統,其中,用於該對象物的該組參數包括用於該對象物的基元資料。
- 如申請專利範圍第13項之資料處理系統,其中,用於該對象物的該基元資料包括變換、打光、顏色與位置資料的一或多者。
- 如申請專利範圍第11項之資料處理系統,其中,用於該對象物的該組參數包括與該3D繪圖處理管線之該像素處理階段相關聯的像素著色資料。
- 如申請專利範圍第15項之資料處理系統,其中,該像素著色資料包括用以經由該3D繪圖處理管線之該像素處理階段而執行的程式碼。
- 如申請專利範圍第16項之資料處理系統,其中,該像素著色資料包括用以執行於該多重的像素渲染圖次期間之多重組的像素著色程式碼。
- 如申請專利範圍第11項之資料處理系統,另包含指令,用以致使該晶片上系統積體電路經由該顯示裝置而輸出該對象物之該增強的描繪。
- 一種設備,包含:接收機構,用以接收場景中之對象物的頂點資料;決定機構,用以決定在該繪圖處理器之三維(3D)繪圖處理管線之頂點處理階段的運行期間用於該對象物的一組參數;實施機構,用以使用用於該對象物的該組參數來進行通過該3D繪圖處理管線之像素處理階段之多重的像素渲染圖次;渲染機構,用以根據該多重的像素渲染圖次來渲染該對象物之增強的描繪,該對象物之該增強的描繪包括透明效果及陰影效果的一或多者;以及顯示機構,用以顯示該對象物之該增強的描繪。
- 如申請專利範圍第19項之設備,其中,針對該幾何對象物的該組參數包括與該3D繪圖處理管線之該像素處理階段相關聯的像素著色資料,該像素著色資料包括用以經由該3D繪圖處理管線之該像素處理階段而執行的程式碼,並且該像素著色資料包括用以執行於針對該場景的該多重的像素渲染圖次期間之多重組的像素著色程式碼。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2011/064933 WO2013089706A1 (en) | 2011-12-14 | 2011-12-14 | Techniques for multiple pass rendering |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201642122A TW201642122A (zh) | 2016-12-01 |
TWI567635B true TWI567635B (zh) | 2017-01-21 |
Family
ID=48612999
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101146198A TWI512606B (zh) | 2011-12-14 | 2012-12-07 | 多重圖次渲染之技術 |
TW104131128A TWI552067B (zh) | 2011-12-14 | 2012-12-07 | 多重圖次渲染之技術 |
TW105121108A TWI567635B (zh) | 2011-12-14 | 2012-12-07 | 多重圖次渲染之技術 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101146198A TWI512606B (zh) | 2011-12-14 | 2012-12-07 | 多重圖次渲染之技術 |
TW104131128A TWI552067B (zh) | 2011-12-14 | 2012-12-07 | 多重圖次渲染之技術 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9177412B2 (zh) |
CN (2) | CN107393502B (zh) |
TW (3) | TWI512606B (zh) |
WO (1) | WO2013089706A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9196081B2 (en) | 2011-12-15 | 2015-11-24 | Intel Corporation | Techniques for enhancing multiple view performance in a three dimensional pipeline |
CN104240276A (zh) * | 2014-09-04 | 2014-12-24 | 无锡梵天信息技术股份有限公司 | 一种基于屏幕空间的次表面散射模拟人物真实皮肤的方法 |
US9846962B2 (en) * | 2015-09-25 | 2017-12-19 | Intel Corporation | Optimizing clipping operations in position only shading tile deferred renderers |
CN107369200B (zh) * | 2017-07-04 | 2021-07-16 | 福建星网视易信息系统有限公司 | 一种3d场景特效处理方法及存储设备 |
CN110888637B (zh) * | 2018-08-16 | 2023-09-26 | 龙芯中科技术股份有限公司 | 顶点属性处理方法、装置、设备及计算机可读存储介质 |
US10621932B1 (en) * | 2018-10-12 | 2020-04-14 | Novatek Microelectronics Corp. | Sub-pixel rendering data conversion apparatus and method |
TWI831474B (zh) * | 2022-11-15 | 2024-02-01 | 瑞昱半導體股份有限公司 | 電子裝置以及控制方法用以管理封包緩衝的可用指標 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020158865A1 (en) * | 1998-04-27 | 2002-10-31 | Dye Thomas A. | Graphics system and method for rendering independent 2D and 3D objects using pointer based display list video refresh operations |
US6731289B1 (en) * | 2000-05-12 | 2004-05-04 | Microsoft Corporation | Extended range pixel display system and method |
US6839058B1 (en) * | 1998-11-06 | 2005-01-04 | Imagination Technologies Limited | Depth sorting for use in 3-dimensional computer shading and texturing systems |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6646639B1 (en) * | 1998-07-22 | 2003-11-11 | Nvidia Corporation | Modified method and apparatus for improved occlusion culling in graphics systems |
US7023437B1 (en) * | 1998-07-22 | 2006-04-04 | Nvidia Corporation | System and method for accelerating graphics processing using a post-geometry data stream during multiple-pass rendering |
EP1069532A3 (en) * | 1999-07-15 | 2002-12-11 | TeraRecon, Inc., A Delaware Corporation | Multi-pass volume rendering pipeline |
US6483505B1 (en) | 2000-03-17 | 2002-11-19 | Ati International Srl | Method and apparatus for multipass pixel processing |
US6750869B1 (en) | 2000-10-13 | 2004-06-15 | Sony Corporation | Method and design for improved fragment processing |
US6741259B2 (en) * | 2001-03-30 | 2004-05-25 | Webtv Networks, Inc. | Applying multiple texture maps to objects in three-dimensional imaging processes |
US6933941B1 (en) * | 2001-04-10 | 2005-08-23 | Microsoft Corporation | Scene representation method and system |
US6747658B2 (en) | 2001-12-31 | 2004-06-08 | Intel Corporation | Automatic memory management for zone rendering |
US7009605B2 (en) * | 2002-03-20 | 2006-03-07 | Nvidia Corporation | System, method and computer program product for generating a shader program |
US7570267B2 (en) * | 2004-05-03 | 2009-08-04 | Microsoft Corporation | Systems and methods for providing an enhanced graphics pipeline |
US8736620B2 (en) * | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Kill bit graphics processing system and method |
US7619628B2 (en) * | 2005-06-24 | 2009-11-17 | Microsoft Corporation | Caching digital image data |
JP4594892B2 (ja) * | 2006-03-29 | 2010-12-08 | 株式会社東芝 | テクスチャマッピング装置、方法およびプログラム |
CN101236485A (zh) * | 2008-01-28 | 2008-08-06 | 国电信息中心 | 一种多屏3d同步显示的方法、装置及系统 |
US8373718B2 (en) * | 2008-12-10 | 2013-02-12 | Nvidia Corporation | Method and system for color enhancement with color volume adjustment and variable shift along luminance axis |
TWI426463B (zh) * | 2009-05-08 | 2014-02-11 | Hon Hai Prec Ind Co Ltd | 曲面渲染系統及方法 |
CN101887595B (zh) * | 2009-05-14 | 2014-05-28 | 武汉如临其境科技创意有限公司 | 基于四叉树索引的三维数字地球空间数据组织渲染方法 |
KR20130124618A (ko) * | 2012-05-07 | 2013-11-15 | 삼성전자주식회사 | 영상 처리 장치 및 방법 |
-
2011
- 2011-12-14 CN CN201710401968.9A patent/CN107393502B/zh active Active
- 2011-12-14 US US13/976,449 patent/US9177412B2/en active Active
- 2011-12-14 CN CN201180075514.8A patent/CN103999044B/zh active Active
- 2011-12-14 WO PCT/US2011/064933 patent/WO2013089706A1/en active Application Filing
-
2012
- 2012-12-07 TW TW101146198A patent/TWI512606B/zh active
- 2012-12-07 TW TW104131128A patent/TWI552067B/zh active
- 2012-12-07 TW TW105121108A patent/TWI567635B/zh active
-
2015
- 2015-09-28 US US14/867,963 patent/US9665971B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020158865A1 (en) * | 1998-04-27 | 2002-10-31 | Dye Thomas A. | Graphics system and method for rendering independent 2D and 3D objects using pointer based display list video refresh operations |
US6839058B1 (en) * | 1998-11-06 | 2005-01-04 | Imagination Technologies Limited | Depth sorting for use in 3-dimensional computer shading and texturing systems |
US6731289B1 (en) * | 2000-05-12 | 2004-05-04 | Microsoft Corporation | Extended range pixel display system and method |
Non-Patent Citations (1)
Title |
---|
Cass Everitt;"Interactive Order-Independent Transparency"; NVIDIA technical report;2001 * |
Also Published As
Publication number | Publication date |
---|---|
TWI552067B (zh) | 2016-10-01 |
US20160093089A1 (en) | 2016-03-31 |
TW201642122A (zh) | 2016-12-01 |
US9665971B2 (en) | 2017-05-30 |
US9177412B2 (en) | 2015-11-03 |
WO2013089706A1 (en) | 2013-06-20 |
TW201619814A (zh) | 2016-06-01 |
CN107393502B (zh) | 2019-11-05 |
CN107393502A (zh) | 2017-11-24 |
US20130286009A1 (en) | 2013-10-31 |
TW201342201A (zh) | 2013-10-16 |
TWI512606B (zh) | 2015-12-11 |
CN103999044A (zh) | 2014-08-20 |
CN103999044B (zh) | 2017-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI567635B (zh) | 多重圖次渲染之技術 | |
US20230096597A1 (en) | Updating a room element within a virtual conferencing system | |
CN106325649B (zh) | 3d动态显示的方法及移动终端 | |
US20150070383A1 (en) | Techniques to generate digital maps | |
CN106708452B (zh) | 一种信息共享方法及终端 | |
CN106575158B (zh) | 环境映射虚拟化机构 | |
US9679408B2 (en) | Techniques for enhancing multiple view performance in a three dimensional pipeline | |
WO2021008627A1 (zh) | 游戏角色渲染方法、装置、电子设备及计算机可读介质 | |
JP2016184419A (ja) | 選択的ラスタライゼーション | |
TWI517086B (zh) | 用於去耦取樣為主描繪管線之低功率質心決定及紋理覆蓋區最佳化 | |
WO2023207001A1 (zh) | 图像渲染方法、装置、电子设备及存储介质 | |
US20170161928A1 (en) | Method and Electronic Device for Displaying Virtual Device Image | |
CN103236042A (zh) | 图片自适应处理方法及装置 | |
CA3203326A1 (en) | Session collaboration system | |
US11048376B2 (en) | Text editing system for 3D environment | |
US9344733B2 (en) | Feature-based cloud computing architecture for physics engine | |
CN105205854B (zh) | 一种数据中心3d建模方法和装置 | |
US9077811B2 (en) | Method and apparatus for enabling interoperability of touch devices | |
JP7352032B2 (ja) | 動画生成方法、装置、電子デバイス及びコンピュータ読取可能記憶媒体 | |
US20150007068A1 (en) | Dashboard with live preview | |
CN105679276B (zh) | 用于多遍渲染的技术 | |
US20240106875A1 (en) | Dynamically assigning participant video feeds within virtual conferencing system | |
US20240094861A1 (en) | Configuring a 3d model within a virtual conferencing system | |
KR20150104922A (ko) | 웹 기반 게임에서 배경 그래픽 생성 방법 |