国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種將球諧光照技術(shù)應(yīng)用于面繪制的方法

      文檔序號:6510163閱讀:176來源:國知局
      一種將球諧光照技術(shù)應(yīng)用于面繪制的方法
      【專利摘要】一種將球諧光照技術(shù)應(yīng)用于面繪制的方法,其使用紋理回填的方法使球諧光照技術(shù)可以應(yīng)用到面繪制中。為此,首先對面模型中的每個面片進(jìn)行離散采樣將其轉(zhuǎn)換為點(diǎn)模型;然后通過球諧光照方法得到每個點(diǎn)的球諧系數(shù)組;根據(jù)每個面離散出來的點(diǎn)及其對應(yīng)的球諧系數(shù)組,通過紋理回填的方法為每個面生成一組球諧系數(shù)紋理;最后使用面繪制的方法對面模型進(jìn)行繪制,通過GPU渲染管線進(jìn)行編程完成球諧光照模擬。本發(fā)明在不犧牲繪制效率的前提下顯著提高繪制質(zhì)量。同時,本發(fā)明能在一程度上提高繪制效率,又可以克服點(diǎn)繪制時由于點(diǎn)與點(diǎn)之間重疊或覆蓋范圍不夠產(chǎn)生的各種走樣問題。
      【專利說明】一種將球諧光照技術(shù)應(yīng)用于面繪制的方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及一種將球諧光照技術(shù)應(yīng)用于面繪制的方法。
      【背景技術(shù)】
      [0002]球諧函數(shù)是一種與傅立葉變換類似的信號處理工具,2002年,Kautz等將其應(yīng)用到了圖形學(xué)體繪制的光照模擬中,并得到了良好的效果與較高的繪制速度。此外,球諧函數(shù)在圖形學(xué)中的應(yīng)用還包括表面重構(gòu),識別等領(lǐng)域。
      [0003]對球諧光照理論的研究與應(yīng)用多集中在光照模型建模以及求解方面,Kautz等在能量傳輸模型的基礎(chǔ)上建立了一個光照模型并使用球諧函數(shù)求解,以達(dá)到高效光照計算的目的;Alexander等對生物體中的光照進(jìn)行模擬,并使用球諧函數(shù)高效求解;Zhong等人為了模擬場景中的動態(tài)陰影效果,在建立相應(yīng)光照模型的基礎(chǔ)上進(jìn)行求解。
      [0004]由于球諧光照所考慮的光照模型是基于點(diǎn)的能量傳輸公式(Light Transport),其在預(yù)計算過程中需要對單個點(diǎn)元進(jìn)行采樣計算處理,故上述研究者都是使用基于點(diǎn)模型的體繪制進(jìn)行最后的圖像渲染。然而,體繪制繪制的光柵化階段常常需要解決走樣,點(diǎn)元縮放以及GPU繪制支持等問題,在某種程度上影響了繪制效率。
      [0005]相反,面繪制中并不需要考慮體繪制中存在的上述問題,但是卻無法直接使用球諧光照技術(shù)。

      【發(fā)明內(nèi)容】

      [0006]鑒于上述不足之處,本發(fā)明的目的在于提供一種將球諧光照技術(shù)應(yīng)用于面繪制的方法,其使用紋理回填的方法使球諧光照技術(shù)可以應(yīng)用到面繪制中。為此,首先對面模型中的每個面片進(jìn)行離散采樣將其轉(zhuǎn)換為點(diǎn)模型;然后通過球諧光照方法得到每個點(diǎn)的球諧系數(shù)組;根據(jù)每個面離散出來的點(diǎn)及其對應(yīng)的球諧系數(shù)組,通過紋理回填的方法為每個面生成一組球諧系數(shù)紋理;最后使用面繪制的方法對面模型進(jìn)行繪制,通過GPU渲染管線進(jìn)行編程完成球諧光照模擬。
      [0007]該方法主要包括三個階段:數(shù)據(jù)準(zhǔn)備,紋理回填以及GPU編程繪制。
      [0008]數(shù)據(jù)準(zhǔn)備階段主要完成面模型的每個三角面片的離散采樣以及球諧光照預(yù)計算工作,完成這一階段后,離散的模型數(shù)據(jù)使用鏈表表示。
      [0009]紋理回填階段根據(jù)每個面片的采樣點(diǎn)對應(yīng)的球諧系數(shù)生成相應(yīng)面的系數(shù)紋理,該紋理是一張正方形的紋理,其中包含了與每個三角面片相同大小的紋理區(qū)域,存放球諧系數(shù)組。
      [0010]G P U編程繪制階段主要通過G P U編程讀出每個片元對應(yīng)的球諧系數(shù)組,并進(jìn)行光照計算。由于該方法得到的球諧系數(shù)組通過對系數(shù)紋理進(jìn)行最近點(diǎn)插值得到,其流程適用于面繪制。
      [0011]具體為:
      (I)數(shù)據(jù)準(zhǔn)備:對面模型中的每個三角面片進(jìn)行離散采樣將其轉(zhuǎn)換為點(diǎn)模型;然后通過球諧光照方法得到每個點(diǎn)的球諧系數(shù)組;
      數(shù)據(jù)準(zhǔn)備包括將面模型轉(zhuǎn)換為點(diǎn)模型即面模型采樣,三角面片排序與球諧光照預(yù)計算三個部分;具體為:
      ①面模型采樣 生成采樣點(diǎn):
      為了將面模型采樣為一個點(diǎn)模型,需要對三角面片進(jìn)行離散化處理,我們使用等距離采樣的方法,將面模型中的每個三角面片進(jìn)行采樣處理;假設(shè)所需采樣的三角面片三個頂
      點(diǎn)的坐標(biāo)為4?,%?), Kwi)以及,則等距采樣的基本思想是設(shè)置一條
      掃描線從三角形的一個底邊開始,通過在掃描線上每次移動相同距離采樣數(shù)據(jù),然后將掃描線上移進(jìn)行下輪掃描;
      為了設(shè)置掃描線,必需要得到掃描線的兩個端點(diǎn),由于需要對三角面片內(nèi)部進(jìn)行采樣,不能直接對-為起始掃描線。為此,我們使用如下方法進(jìn)行掃描線的設(shè)置與采樣:
      a)以點(diǎn)a為起點(diǎn),ac為方向向點(diǎn)e移動個固定距離,得到點(diǎn):
      【權(quán)利要求】
      1.一種將球諧光照技術(shù)應(yīng)用于面繪制的方法,其特征在于:該方法包括以下步驟: (1)數(shù)據(jù)準(zhǔn)備:對面模型中的每個三角面片進(jìn)行離散采樣將其轉(zhuǎn)換為點(diǎn)模型;然后通過球諧光照方法得到每個點(diǎn)的球諧系數(shù)組; (2)紋理回填:根據(jù)每個面離散出來的點(diǎn)及其對應(yīng)的球諧系數(shù)組,通過紋理回填的方法為每個面生成一組球諧系數(shù)紋理; (3)GPU編程繪制:使用面繪制的方法對面模型進(jìn)行繪制,通過GPU渲染管線進(jìn)行編程完成球諧光照模擬。
      2.根據(jù)權(quán)利要求1所述的將球諧光照技術(shù)應(yīng)用于面繪制的方法,其特征在于:所述數(shù)據(jù)準(zhǔn)備包括將面模型轉(zhuǎn)換為點(diǎn)模型即面模型采樣,三角面片排序與球諧光照預(yù)計算三個部分;具體為: I)面模型采樣 (O生成采樣點(diǎn): 為了將面模型采樣為一個點(diǎn)模型,需要對三角面片進(jìn)行離散化處理,我們使用等距離采樣的方法,將面模型中的每個三角面片進(jìn)行采樣處理;假設(shè)所需采樣的三角面片三個頂點(diǎn)的坐標(biāo)為£I(Xa Ja5Zfl) , 6 )以及Jd),則等距采樣的基本思想是設(shè)置一條掃描線從三角形的一個底邊開始,通過在掃描線上每次移動相同距離采樣數(shù)據(jù),然后將掃描線上移進(jìn)行下輪掃描; 為了設(shè)置掃描線,必需要得到掃描線的兩個端點(diǎn),由于需要對三角面片內(nèi)部進(jìn)行采樣,不能直接對 為起始掃描線,為此,我們使用如下方法進(jìn)行掃描線的設(shè)置與采樣: a)以點(diǎn)a為起點(diǎn),為方向向點(diǎn)e移動a個固定距離,得到點(diǎn)Aci: a0 =a-haac (1-1) b)以同樣的方法,以點(diǎn)Jj為起點(diǎn),&為方向向占移動。個固定距離,得到點(diǎn)知; c)將作為掃描線進(jìn)行等距采樣,采樣方法與之前類似,即以點(diǎn)4為起點(diǎn),為方向向點(diǎn)h移動a個固定距離,得到采樣點(diǎn)S,重復(fù)這一過程直到s到達(dá) ; d)重新進(jìn)行步驟a),b);如果掃描線到達(dá)三角形的頂點(diǎn)c,則結(jié)束,保存所有采樣點(diǎn);否則,進(jìn)行c); (2)數(shù)據(jù)結(jié)構(gòu)的組織: 將三角形面片的三個頂點(diǎn)與采樣點(diǎn)在同一鏈表中進(jìn)行存儲;每個鏈表結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)包括采樣點(diǎn)的位置,球諧系數(shù)組,紋理坐標(biāo)屬性,對于存放頂點(diǎn)的結(jié)點(diǎn),其對應(yīng)的屬性僅為頂點(diǎn)的空間坐標(biāo),其它屬性值為空,為區(qū)別頂點(diǎn)與采樣點(diǎn),在數(shù)據(jù)結(jié)構(gòu)中加入一個bool值來區(qū)分頂點(diǎn)與采樣點(diǎn): //采樣點(diǎn)與頂點(diǎn)共同使用的數(shù)據(jù)結(jié)構(gòu) Struct sample {Position; Il采樣點(diǎn)&頂點(diǎn)的三維空間坐標(biāo) Coef; //采樣點(diǎn)的球諧系數(shù)組,若為頂點(diǎn)該項為空 Bool isVertex;//判斷是否為三角形頂點(diǎn)的bool值
      } 該數(shù)據(jù)結(jié)構(gòu)構(gòu)成了模型鏈表中的一個結(jié)點(diǎn),對于一個面片,其對應(yīng)鏈表段中的結(jié)點(diǎn)組織按照三角形三個頂點(diǎn)以及面片采樣點(diǎn)的順序進(jìn)行鏈表存儲:頂點(diǎn)I —頂點(diǎn)2 —頂點(diǎn)3 —采樣點(diǎn)I —采樣點(diǎn)2……采樣點(diǎn)N ; 2)三角面片排序 在對三角面片采樣完成后,對其面積進(jìn)行排序;首先根據(jù)三角面片的三個頂點(diǎn)坐標(biāo)K;?,K計算其面積,
      3.根據(jù)權(quán)利要求1所述的將球諧光照技術(shù)應(yīng)用于面繪制的方法,其特征在于:所述紋理回填過程包含三個步驟:即生成紋理空間,定位紋素,計算紋理坐標(biāo),具體為: ①生成紋理空間 所有三角面片的系數(shù)紋理將被整合到一張正方形的紋理中,以便于面繪制的紋理讀取,為此,在生成每個三角面片的系數(shù)紋理時,都需要在正方形紋理中劃分出一個與三角面片形狀相同的區(qū)域,用以存放該面片的對應(yīng)的紋理; 計算三角形三條邊中最長的一條邊,設(shè)其長為U ,對應(yīng)的兩個頂點(diǎn)為Rb{xb,ybizb),則第三個頂點(diǎn)為C(xc,yc,zc),以及以該邊為底邊對應(yīng)的三角形的高A ,求解--邊長可使用公式2-1 ;
      4.根據(jù)權(quán)利要求1所述的將球諧光照技術(shù)應(yīng)用于面繪制的方法,其特征在于:所述GPU編程繪制方法為:在繪制階段,按照面繪制的流程,將面模型的每個三角面片的三個頂點(diǎn)以及顏色紋理,系數(shù)紋理及其相應(yīng)紋理坐標(biāo)傳入GPU,通過對GPU渲染管線進(jìn)行編程讀取球諧系數(shù)坐標(biāo),并進(jìn)行光照計算,為實(shí)現(xiàn)這一目的,需對fragment shader進(jìn)行編程,其偽代碼如下: 使用最近點(diǎn)插值得到當(dāng)前片元的球諧系數(shù)組 使用線性插值得到當(dāng)前片元的顏色值Cq 使用從cpu中傳入的旋轉(zhuǎn)后的光源函數(shù)的球諧系數(shù)組dL 計算最終顏色值color color = C0 X (c f.D。
      【文檔編號】G06T17/30GK103440684SQ201310396822
      【公開日】2013年12月11日 申請日期:2013年9月4日 優(yōu)先權(quán)日:2013年9月4日
      【發(fā)明者】邱航, 陳雷霆, 蔡洪斌, 周川, 陳瑜, 曹躍, 譚浩 申請人:電子科技大學(xué)
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1