專利名稱:一種gpu加速的實時立體渲染方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機(jī)圖形學(xué)領(lǐng)域,特別是涉及一種GPU加速的實時立體渲染方法。
背景技術(shù):
立體視覺是三維場景渲染的一個重要部分,目前對于立體像對壓縮,立體知覺的舒適感和立體顯示設(shè)備增強(qiáng)的研究比較多,對立體渲染加速的研究則較少。立體視覺技術(shù), 大大增加了沉浸感,涉及到渲染場景兩次,即對每只眼睛渲染一次,因此,渲染的時間增加
了一倍。傳統(tǒng)的立體渲染方法針對復(fù)雜的場景,進(jìn)行渲染需要的時間很長,這是因為針對給定左視點的場景,需要重新計算右視點的頂點屬性,才能得到相對應(yīng)與左視點的右視點的場景。渲染復(fù)雜場景所需要的渲染時間長,這是現(xiàn)有立體渲染方法的缺陷。因而,目前需要本領(lǐng)域技術(shù)人員迫切解決的一個技術(shù)問題就是如何找到一種新型的立體渲染方法,該方法針對復(fù)雜的渲染場景,可以實現(xiàn)實時的立體渲染,大大地縮短了針對復(fù)雜場景進(jìn)行立體渲染所需要的渲染時間。
發(fā)明內(nèi)容
本發(fā)明所要解決的一個技術(shù)問題是提供一種GPU加速的實時立體渲染方法,該方法針對復(fù)雜的渲染場景,可以實現(xiàn)實時的立體渲染,大大地縮短了針對復(fù)雜場景進(jìn)行立體渲染所需要的渲染時間。為了解決上述問題,本發(fā)明公開了一種GPU加速的實時立體渲染方法,包括分別建立渲染場景的左模型及渲染場景的右模型,獲得渲染場景的左模型及渲染場景的右模型;計算渲染場景的左模型視圖矩陣、渲染場景的右模型視圖矩陣及投影矩陣,獲得渲染場景的左模型視圖矩陣、渲染場景的右模型視圖矩陣及投影矩陣;執(zhí)行渲染場景的頂點處理操作,獲得渲染場景的頂點處理結(jié)果;在幾何著色器中接收頂點著色器傳送的基元,獲得相應(yīng)的基元的變換結(jié)果;使用渲染器對多個渲染目標(biāo)進(jìn)行渲染,獲得相應(yīng)的每個渲染目標(biāo)的渲染結(jié)果;將每個渲染目標(biāo)的渲染結(jié)果存入兩個獨立的緩存中,獲得在兩個獨立緩存中分別存儲的每個渲染目標(biāo)的渲染結(jié)果;針對在兩個獨立緩存中分別存儲的每個渲染目標(biāo)的渲染結(jié)果,采用立體恢復(fù)方法,進(jìn)行相應(yīng)的顯示立體像對,獲得每個渲染目標(biāo)的渲染結(jié)果的立體像對。優(yōu)選的,所述在幾何著色器中接收頂點著色器傳送的基元,獲得相應(yīng)的基元的變換結(jié)果的步驟,包括在幾何著色器中接收頂點著色器傳送的基元,獲得初始傳送基元;針對初始傳送基元進(jìn)行克隆,獲得初始傳送基元的克隆信息;針對初始傳送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換及投影變換,獲得初始傳
4送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換的變換結(jié)果及投影變換的變換結(jié)果;執(zhí)行完第一輪初始傳送基元的變換過程,獲得第一輪初始傳送基元的變換結(jié)果;發(fā)送新的基元到片段著色器中,執(zhí)行第二輪新的基元的變換過程,獲得相應(yīng)的基元的變換結(jié)果。優(yōu)選的,所述針對初始傳送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換及投影變換, 獲得初始傳送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換的變換結(jié)果及投影變換的變換結(jié)果的步驟,包括針對初始傳送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換,獲得左、右視點執(zhí)行相應(yīng)模型視圖變換的變換結(jié)果;針對初始傳送基元的左、右視點執(zhí)行相應(yīng)模型投影變換,獲得左、右視點執(zhí)行相應(yīng)模型投影變換的變換結(jié)果。優(yōu)選的,所述使用渲染器對多個渲染目標(biāo)進(jìn)行渲染,獲得相應(yīng)的每個渲染目標(biāo)的渲染結(jié)果的步驟,包括在使用渲染器對多個渲染目標(biāo)進(jìn)行渲染的過程中,依據(jù)幾何著色器中的設(shè)置的變量整理進(jìn)入的渲染片段,獲得渲染片段的渲染結(jié)果;其中,若所述渲染片段是左視點,則將該渲染片段的標(biāo)志設(shè)置為零;若所述渲染片段不是左視點,則將該渲染片段的標(biāo)志設(shè)置為非零。優(yōu)選的,所述使用渲染器對多個渲染目標(biāo)進(jìn)行渲染,獲得相應(yīng)的每個渲染目標(biāo)的渲染結(jié)果的步驟,包括所述多個渲染目標(biāo)中的每個片段必須在兩個不同的緩存區(qū)分別進(jìn)行繪制,獲得多個渲染目標(biāo)中的每個片段在兩個不同的緩存區(qū)的繪制結(jié)果。優(yōu)選的,所述使用渲染器對多個渲染目標(biāo)進(jìn)行渲染,獲得相應(yīng)的每個渲染目標(biāo)的渲染結(jié)果的步驟,包括若多個渲染目標(biāo)中的每個片段的緩沖區(qū)標(biāo)志位指示不正確時,則多個渲染目標(biāo)中的每個片段會被消除。優(yōu)選的,所述若多個渲染目標(biāo)中的每個片段的緩沖區(qū)標(biāo)志位指示不正確時,則多個渲染目標(biāo)中的每個片段會被消除的步驟,包括設(shè)置消除不需要的片段的顏色為黑色及設(shè)置消除不需要的片段的透明度值為零, 則多個渲染目標(biāo)中的每個片段會被消除。優(yōu)選的,所述針對在兩個獨立緩存中分別存儲的每個渲染目標(biāo)的渲染結(jié)果,采用立體恢復(fù)方法,進(jìn)行相應(yīng)的顯示立體像對,獲得每個渲染目標(biāo)的渲染結(jié)果的立體像對的步驟,包括在幾何著色器中,傳送左視點基元轉(zhuǎn)換后的頂點坐標(biāo)到片段著色器中;如果片段屬于右視點,則執(zhí)行讀取幾何著色器中的坐標(biāo)值,進(jìn)行視口裁剪變換的操作過程;如果坐標(biāo)存在于深度圖中,則執(zhí)行比較深度圖值和片段深度值及根據(jù)獲得的深度值測試結(jié)果作出接受或丟棄片段相應(yīng)操作的連續(xù)操作過程;如果坐標(biāo)不存在于深度圖中,則執(zhí)行接收送入的片段的操作過程;執(zhí)行完上述操作過程,獲得每個渲染目標(biāo)的渲染結(jié)果的立體像對。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點1、針對傳統(tǒng)的立體渲染方法,該方法的渲染時間大大縮短,實現(xiàn)了對復(fù)雜場景的實時立體渲染。2、本發(fā)明實現(xiàn)了以高的細(xì)節(jié)層次渲染場景立體像對,而由此導(dǎo)致的幀率下降可以忽略不計??傊?,本發(fā)明提供了一種GPU加速的實時立體渲染方法,該方法針對復(fù)雜的渲染場景,可以實現(xiàn)實時的立體渲染;大大地縮短了針對復(fù)雜場景進(jìn)行立體渲染所需要的渲染時間。
圖1是本發(fā)明一種GPU加速的實時立體渲染方法實施例的步驟流程圖;圖2是本發(fā)明一種GPU加速的實時立體渲染方法中的算法流程示意圖。
具體實施例方式為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實施方式
對本發(fā)明作進(jìn)一步詳細(xì)的說明。本發(fā)明的核心思想之一是提供了一種GPU (Graphic Processing Unit中文翻譯為 “圖形處理器”,GPU是相對于CPU的一個概念,由于在現(xiàn)代的計算機(jī)中,特別是家用系統(tǒng),游戲的發(fā)燒友,圖形的處理變得越來越重要,需要一個專門的圖形的核心處理器)加速的實時立體渲染方法,包括分別建立渲染場景的左模型及渲染場景的右模型;計算渲染場景的左模型視圖矩陣、渲染場景的右模型視圖矩陣及投影矩陣;執(zhí)行渲染場景的頂點處理操作;在幾何著色器中接收頂點著色器傳送的基元;使用渲染器對多個渲染目標(biāo)進(jìn)行渲染; 將每個渲染目標(biāo)的渲染結(jié)果存入兩個獨立的緩存中;針對在兩個獨立緩存中分別存儲的每個渲染目標(biāo)的渲染結(jié)果,采用立體恢復(fù)方法,進(jìn)行相應(yīng)的顯示立體像對;該方法針對復(fù)雜的渲染場景,可以實現(xiàn)實時的立體渲染,大大地縮短了針對復(fù)雜場景進(jìn)行立體渲染所需要的渲染時間。參照圖1,示出了本發(fā)明一種GPU加速的實時立體渲染方法實施例的步驟流程圖, 具體可以包括步驟101、分別建立渲染場景的左模型及渲染場景的右模型,獲得渲染場景的左模型及渲染場景的右模型。步驟102、計算渲染場景的左模型視圖矩陣、渲染場景的右模型視圖矩陣及投影矩陣,獲得渲染場景的左模型視圖矩陣、渲染場景的右模型視圖矩陣及投影矩陣。步驟103、執(zhí)行渲染場景的頂點處理操作,獲得渲染場景的頂點處理結(jié)果。步驟104、在幾何著色器中接收頂點著色器傳送的基元,獲得相應(yīng)的基元的變換結(jié)果。為了使本領(lǐng)域的技術(shù)人員更好地理解本發(fā)明,在本發(fā)明的一個優(yōu)選實施例中,所述步驟104,具體可以包括子步驟Al、在幾何著色器中接收頂點著色器傳送的基元,獲得初始傳送基元。子步驟A2、針對初始傳送基元進(jìn)行克隆,獲得初始傳送基元的克隆信息。
在針對初始傳送基元進(jìn)行克隆,獲得初始傳送基元的克隆信息的過程中,關(guān)鍵的階段是幾何著色器執(zhí)行的復(fù)制階段。幾何著色器從左視點到右視點克隆了指定基元。當(dāng)初始頂點在左緩存投影的同時,復(fù)制的頂點在右緩存進(jìn)行轉(zhuǎn)換和投影。在此過程中,一致變量matrix對應(yīng)于右圖像變換矩陣,該變換矩陣是由右視點的模型視圖矩陣和投影矩陣乘積產(chǎn)生。模型視圖矩陣和投影矩陣的乘積產(chǎn)生的左圖像變換矩陣作為主程序里的一致變量可被直接讀入。變量flag指示創(chuàng)建的頂點是屬于左視圖還是右視圖。因為每一個基元重復(fù)執(zhí)行相同的指令,由當(dāng)前模型視圖矩陣乘以每個基元視點分離變換矢量形成的投影矩陣,將消耗額外計算時間。子步驟A3、針對初始傳送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換及投影變換,獲得初始傳送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換的變換結(jié)果及投影變換的變換結(jié)果。其中,所述子步驟A3具體可以包括子步驟Bi、針對初始傳送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換,獲得左、右視點執(zhí)行相應(yīng)模型視圖變換的變換結(jié)果。子步驟B2、針對初始傳送基元的左、右視點執(zhí)行相應(yīng)模型投影變換,獲得左、右視點執(zhí)行相應(yīng)模型投影變換的變換結(jié)果。子步驟A4、執(zhí)行完第一輪初始傳送基元的變換過程,獲得第一輪初始傳送基元的變換結(jié)果。子步驟A5、發(fā)送新的基元到片段著色器中,執(zhí)行第二輪新的基元的變換過程,獲得相應(yīng)的基元的變換結(jié)果。步驟105、使用渲染器對多個渲染目標(biāo)進(jìn)行渲染,獲得相應(yīng)的每個渲染目標(biāo)的渲染結(jié)果。為了使本領(lǐng)域的技術(shù)人員更好地理解本發(fā)明,在本發(fā)明的另一個優(yōu)選實施例中, 所述步驟105,具體可以包括子步驟Cl、在使用渲染器對多個渲染目標(biāo)進(jìn)行渲染的過程中,依據(jù)幾何著色器中的設(shè)置的變量整理進(jìn)入的渲染片段,獲得渲染片段的渲染結(jié)果;其中,若所述渲染片段是左視點,則將該渲染片段的標(biāo)志設(shè)置為零;若所述渲染片段不是左視點,則將該渲染片段的標(biāo)志設(shè)置為非零。為了使本領(lǐng)域的技術(shù)人員更好地理解本發(fā)明,在本發(fā)明的另一個優(yōu)選實施例中, 所述步驟105,具體可以包括子步驟D1、所述多個渲染目標(biāo)中的每個片段必須在兩個不同的緩存區(qū)分別進(jìn)行繪制,獲得多個渲染目標(biāo)中的每個片段在兩個不同的緩存區(qū)的繪制結(jié)果。為了使本領(lǐng)域的技術(shù)人員更好地理解本發(fā)明,在本發(fā)明的另一個優(yōu)選實施例中, 所述步驟105,具體可以包括子步驟E1、若多個渲染目標(biāo)中的每個片段的緩沖區(qū)標(biāo)志位指示不正確時,則多個渲染目標(biāo)中的每個片段會被消除。其中,所述子步驟El具體可以包括子步驟F1、設(shè)置消除不需要的片段的顏色為黑色及設(shè)置消除不需要的片段的透明度值為零,則多個渲染目標(biāo)中的每個片段會被消除。在渲染過程中的關(guān)鍵階段是片段著色階段。在片段著色階段,要依據(jù)幾何著色器中設(shè)置的變量flag整理進(jìn)入的片段。如果片段屬于左視點,此標(biāo)志設(shè)置為零,否則就設(shè)置為非零。
執(zhí)行對應(yīng)于左、右圖像片段著色操作階段的操作過程,本發(fā)明同時使用多渲染目標(biāo)技術(shù)和幀緩存對象技術(shù)。多渲染目標(biāo)渲染場景到多個緩沖區(qū),幀緩存對象可以在直接渲染結(jié)果到一張紋理。
然而使用多渲染目標(biāo)和幀緩存對象涉及一些制約因素
幀緩存對象和多渲染目標(biāo)渲染測試時,例如深度測試和透明度alpha測試,盡管有多個顏色緩存目標(biāo),共享通用緩存。
多渲染目標(biāo)涉及到每個片段都在兩個緩存里渲染。然而,結(jié)果卻是不確定的。
左右視點渲染時共用深度緩存,這是第一個約束的結(jié)果,當(dāng)片段不符合時意味著一些片段可能被拋棄。本發(fā)明通過禁用深度測試來解決這個問題。本發(fā)明使用畫家算法作為深度測試的替代方法來解決可見度問題。第二個評語說明幾何著色器創(chuàng)建兩個基元是獨立的。使用多渲染目標(biāo)涉及到每個片段必須在兩個緩沖區(qū)繪制。因此片段不屬于正確的緩沖區(qū)標(biāo)志位指示就會被丟棄。消除不需要的片段可以由設(shè)置其顏色為黑色,其透明度alpha 值為零實現(xiàn)。在主程序中應(yīng)該啟用混合功能,禁用深度測試,這樣片段就無法顯示。
用于混合的函數(shù)
紅色=RsrcXAsrc+RdestX (I-Asrc)
綠色=GsrcXAsrc+GdestX (I-Asrc)
藍(lán)色=BsrcXAsrc+BdestX (I-Asrc)
Alpha = AsrcXAsrc+AdestX (I-Asrc)
步驟106、將每個渲染目標(biāo)的渲染結(jié)果存入兩個獨立的緩存中,獲得在兩個獨立緩存中分別存儲的每個渲染目標(biāo)的渲染結(jié)果。
步驟107、針對在兩個獨立緩存中分別存儲的每個渲染目標(biāo)的渲染結(jié)果,采用立體恢復(fù)方法,進(jìn)行相應(yīng)的顯示立體像對,獲得每個渲染目標(biāo)的渲染結(jié)果的立體像對。
為了使本領(lǐng)域的技術(shù)人員更好地理解本發(fā)明,在本發(fā)明的另一個優(yōu)選實施例中, 所述步驟107,具體可以包括
子步驟G1、在幾何著色器中,傳送左視點基元轉(zhuǎn)換后的頂點坐標(biāo)到片段著色器中。
子步驟G2、如果片段屬于右視點,則執(zhí)行讀取幾何著色器中的坐標(biāo)值,進(jìn)行視口裁剪變換的操作過程。
子步驟G3、如果坐標(biāo)存在于深度圖中,則執(zhí)行比較深度圖值和片段深度值及根據(jù)獲得的深度值測試結(jié)果作出接受或丟棄片段相應(yīng)操作的連續(xù)操作過程。
子步驟G4、如果坐標(biāo)不存在于深度圖中,則執(zhí)行接收送入的片段的操作過程。
子步驟G5、執(zhí)行完上述操作過程,獲得每個渲染目標(biāo)的渲染結(jié)果的立體像對。
在顯示立體像對的過程中,對應(yīng)于左視點和右視點,渲染過程中產(chǎn)生兩個相應(yīng)的獨立的紋理。立體裝置使用過程中,用戶應(yīng)最終能修改立體像對。例如,使用立體眼鏡混合紅/青色濾波圖像,如下面的偽代碼所述
禁止深度測試;
利用加函數(shù)啟用混合;
設(shè)置顏色掩碼為紅色;8
渲染左邊紋理;
設(shè)置顏色掩碼為青色;
渲染右邊紋理;
偏振或主動立體系統(tǒng)則不需要這個過程,圖像通過合適視頻輸出。
為了證明本發(fā)明是一種可以大大地提高渲染立體場景時間的渲染方法,本發(fā)明做了如下的試驗來驗證,試驗結(jié)果具體如表1所述
表1效率比較表
權(quán)利要求
1.一種GPU加速的實時立體渲染方法,其特征在于,包括分別建立渲染場景的左模型及渲染場景的右模型,獲得渲染場景的左模型及渲染場景的右模型;計算渲染場景的左模型視圖矩陣、渲染場景的右模型視圖矩陣及投影矩陣,獲得渲染場景的左模型視圖矩陣、渲染場景的右模型視圖矩陣及投影矩陣; 執(zhí)行渲染場景的頂點處理操作,獲得渲染場景的頂點處理結(jié)果; 在幾何著色器中接收頂點著色器傳送的基元,獲得相應(yīng)的基元的變換結(jié)果; 使用渲染器對多個渲染目標(biāo)進(jìn)行渲染,獲得相應(yīng)的每個渲染目標(biāo)的渲染結(jié)果; 將每個渲染目標(biāo)的渲染結(jié)果存入兩個獨立的緩存中,獲得在兩個獨立緩存中分別存儲的每個渲染目標(biāo)的渲染結(jié)果;針對在兩個獨立緩存中分別存儲的每個渲染目標(biāo)的渲染結(jié)果,采用立體恢復(fù)方法,進(jìn)行相應(yīng)的顯示立體像對,獲得每個渲染目標(biāo)的渲染結(jié)果的立體像對。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述在幾何著色器中接收頂點著色器傳送的基元,獲得相應(yīng)的基元的變換結(jié)果的步驟,包括在幾何著色器中接收頂點著色器傳送的基元,獲得初始傳送基元; 針對初始傳送基元進(jìn)行克隆,獲得初始傳送基元的克隆信息; 針對初始傳送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換及投影變換,獲得初始傳送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換的變換結(jié)果及投影變換的變換結(jié)果;執(zhí)行完第一輪初始傳送基元的變換過程,獲得第一輪初始傳送基元的變換結(jié)果; 發(fā)送新的基元到片段著色器中,執(zhí)行第二輪新的基元的變換過程,獲得相應(yīng)的基元的變換結(jié)果。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述針對初始傳送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換及投影變換,獲得初始傳送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換的變換結(jié)果及投影變換的變換結(jié)果的步驟,包括針對初始傳送基元的左、右視點執(zhí)行相應(yīng)模型視圖變換,獲得左、右視點執(zhí)行相應(yīng)模型視圖變換的變換結(jié)果;針對初始傳送基元的左、右視點執(zhí)行相應(yīng)模型投影變換,獲得左、右視點執(zhí)行相應(yīng)模型投影變換的變換結(jié)果。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述使用渲染器對多個渲染目標(biāo)進(jìn)行渲染,獲得相應(yīng)的每個渲染目標(biāo)的渲染結(jié)果的步驟,包括在使用渲染器對多個渲染目標(biāo)進(jìn)行渲染的過程中,依據(jù)幾何著色器中的設(shè)置的變量整理進(jìn)入的渲染片段,獲得渲染片段的渲染結(jié)果;其中,若所述渲染片段是左視點,則將該渲染片段的標(biāo)志設(shè)置為零;若所述渲染片段不是左視點,則將該渲染片段的標(biāo)志設(shè)置為非零。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述使用渲染器對多個渲染目標(biāo)進(jìn)行渲染,獲得相應(yīng)的每個渲染目標(biāo)的渲染結(jié)果的步驟,包括所述多個渲染目標(biāo)中的每個片段必須在兩個不同的緩存區(qū)分別進(jìn)行繪制,獲得多個渲染目標(biāo)中的每個片段在兩個不同的緩存區(qū)的繪制結(jié)果。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述使用渲染器對多個渲染目標(biāo)進(jìn)行渲染,獲得相應(yīng)的每個渲染目標(biāo)的渲染結(jié)果的步驟,包括若多個渲染目標(biāo)中的每個片段的緩沖區(qū)標(biāo)志位指示不正確時,則多個渲染目標(biāo)中的每個片段會被消除。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述若多個渲染目標(biāo)中的每個片段的緩沖區(qū)標(biāo)志位指示不正確時,則多個渲染目標(biāo)中的每個片段會被消除的步驟,包括設(shè)置消除不需要的片段的顏色為黑色及設(shè)置消除不需要的片段的透明度值為零,則多個渲染目標(biāo)中的每個片段會被消除。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述針對在兩個獨立緩存中分別存儲的每個渲染目標(biāo)的渲染結(jié)果,采用立體恢復(fù)方法,進(jìn)行相應(yīng)的顯示立體像對,獲得每個渲染目標(biāo)的渲染結(jié)果的立體像對的步驟,包括在幾何著色器中,傳送左視點基元轉(zhuǎn)換后的頂點坐標(biāo)到片段著色器中;如果片段屬于右視點,則執(zhí)行讀取幾何著色器中的坐標(biāo)值,進(jìn)行視口裁剪變換的操作過程;如果坐標(biāo)存在于深度圖中,則執(zhí)行比較深度圖值和片段深度值及根據(jù)獲得的深度值測試結(jié)果作出接受或丟棄片段相應(yīng)操作的連續(xù)操作過程;如果坐標(biāo)不存在于深度圖中,則執(zhí)行接收送入的片段的操作過程;執(zhí)行完上述操作過程,獲得每個渲染目標(biāo)的渲染結(jié)果的立體像對。
全文摘要
本發(fā)明提供了一種GPU加速的實時立體渲染方法,包括分別建立渲染場景的左模型及渲染場景的右模型;計算渲染場景的左模型視圖矩陣、渲染場景的右模型視圖矩陣及投影矩陣;執(zhí)行渲染場景的頂點處理操作;在幾何著色器中接收頂點著色器傳送的基元;使用渲染器對多個渲染目標(biāo)進(jìn)行渲染;將每個渲染目標(biāo)的渲染結(jié)果存入兩個獨立的緩存中;針對在兩個獨立緩存中分別存儲的每個渲染目標(biāo)的渲染結(jié)果,采用立體恢復(fù)方法,進(jìn)行相應(yīng)的顯示立體像對;該方法針對復(fù)雜的渲染場景,可以實現(xiàn)實時的立體渲染,大大地縮短了針對復(fù)雜場景進(jìn)行立體渲染所需要的渲染時間。
文檔編號G06T15/00GK102509336SQ201110325099
公開日2012年6月20日 申請日期2011年10月24日 優(yōu)先權(quán)日2011年10月24日
發(fā)明者平紅燕 申請人:克拉瑪依紅有軟件有限責(zé)任公司