国产精品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>

      一種基于模擬折射和全局光照的3D模型渲染方法及系統(tǒng)與流程

      文檔序號(hào):12472223閱讀:356來(lái)源:國(guó)知局
      一種基于模擬折射和全局光照的3D模型渲染方法及系統(tǒng)與流程
      本發(fā)明涉及交互渲染領(lǐng)域,特別涉及一種基于模擬折射和全局光照的3D模型渲染方法及系統(tǒng)。
      背景技術(shù)
      :在很多應(yīng)用中,交互操作比真實(shí)感更重要。這使得很多研究者為了滿足速度的要求模擬真實(shí)的效果,通過(guò)并行計(jì)算增加可用的計(jì)算能力使得用標(biāo)準(zhǔn)的光線追蹤、路徑追蹤技術(shù)實(shí)現(xiàn)交互式真實(shí)感成為可能,盡管在主流應(yīng)用中較高的計(jì)算開銷抑制了這種并行計(jì)算。因此,研究者們開發(fā)出增強(qiáng)硬件的陰影模擬,焦散線,全局光照,反射,以及基本反射效果?,F(xiàn)有技術(shù)中,基于GPU的折射算法的限制為:只能計(jì)算出一次折射的效果。而現(xiàn)實(shí)場(chǎng)景中很少出現(xiàn)折射光線只通過(guò)一個(gè)面的情況。由于人們經(jīng)常通過(guò)類似眼鏡的絕緣物體看到折射光線通過(guò)多個(gè)面的效果,所以計(jì)算折射光線通過(guò)多個(gè)面之后的效果非常重要。目前,研究者們已經(jīng)提出了很多方案來(lái)模擬折射光線通過(guò)一個(gè)面的效果。一種方法是使用GPUs的可編程接口來(lái)計(jì)算折射光線。折射之后的顏色決定于折射系數(shù)和環(huán)境映像,或者取決于描述附近幾何信息的變化的紋理。Schmidt使用一種基于幾何的技術(shù),類似于Ofek和Rappoport實(shí)現(xiàn)折射效果的方法。當(dāng)計(jì)算物體凹表面的時(shí)候,Ofek的方法會(huì)出現(xiàn)問(wèn)題,但是Schmidt的方法在計(jì)算物體凹表面的折射效果時(shí)也出現(xiàn)同樣的問(wèn)題。在這種情況下,將反射之后的頂點(diǎn)信息準(zhǔn)確地連接到渲染流程證明比較困難。一些研究者考慮過(guò)多面反射,比如,Guy和Soler交互地渲染簡(jiǎn)單凸幾何表面的折射效果。由于他們經(jīng)過(guò)分析計(jì)算折射后的頂點(diǎn)并每三幀更新分析后的面片,他們的方法無(wú)法適用于復(fù)雜的物體。又比如,Kay和Greenburg介紹了一個(gè)“thickness”(厚度)參數(shù)來(lái)計(jì)算兩次反射的物體;這個(gè)方法只適用于標(biāo)準(zhǔn)的、薄的物體,比如窗子,但是很多物體的厚度并不均勻。再比如,Diefenbach和Badler使用了一個(gè)多步驟的方法在圖形硬件上交互地渲染。而Ohbuchi提出一種定點(diǎn)追蹤的預(yù)處理來(lái)模擬在一個(gè)多媒體原型處理器上的交互式折射效果。再比如,Heidrich等人使用光域來(lái)中和交互操作帶來(lái)的較高的內(nèi)存消耗。又比如,Hakura等人通過(guò)影響GPU資源來(lái)提高光線追蹤的速度。但是,這種方法不能用在實(shí)時(shí)應(yīng)用中,即使當(dāng)CPU和GPU都被優(yōu)化。技術(shù)實(shí)現(xiàn)要素:本發(fā)明要解決的技術(shù)問(wèn)題是,如何解決了目前很多交互應(yīng)用致力于真實(shí)感渲染,但是應(yīng)用對(duì)幀速率的要求往往使得圖形硬件無(wú)法在保證速率的情況下實(shí)現(xiàn)某些效果的逼真渲染的問(wèn)題,即如何通過(guò)實(shí)現(xiàn)折射效果,并實(shí)現(xiàn)了全局光照的繪制。解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種基于模擬折射和全局光照的3D模型渲染方法,包括如下步驟:對(duì)圖像進(jìn)行光柵化處理,得到每個(gè)像素點(diǎn)的基礎(chǔ)特征值:{入射方向擊中表面的第一折射位置P1,P1點(diǎn)所在表面的法向量根據(jù)所述基礎(chǔ)特征值得到第一次折射光線方向通過(guò)模擬第二次折射位置P2點(diǎn)和P2所在表面的法向量計(jì)算得到第二次折射光線根據(jù)所述進(jìn)行全局光照的繪制后完成3D模型渲染。更進(jìn)一步,模擬P2點(diǎn)的計(jì)算方法進(jìn)一步為:其中,d表示P2和P1的距離,已知P1和近似的位置只需要要找到一個(gè)近似的距離故:其中,γ為漸進(jìn)系數(shù),其中,其中,θi表示入射向量和表面法向量的夾角,θt表示傳輸向量和表面法向量的逆向量的夾角,和分別指:法向量與物體的交點(diǎn)距離、入射向量與物體的交點(diǎn)距離,用于計(jì)算P2的位置。更進(jìn)一步,所述法向量的計(jì)算方法進(jìn)一步為:根據(jù)所述按照與眼睛最遠(yuǎn)的表面的距離或者第二個(gè)表面與眼睛的距離,得到法向量更進(jìn)一步,模擬P2點(diǎn)時(shí),基于Fragmentshaders面片著色計(jì)算TIR全內(nèi)反射,同時(shí)將θ_i的值限制在一個(gè)閥值θ_crit以內(nèi),用以使折射光線射向退出的面。更進(jìn)一步,模擬P2點(diǎn)時(shí),光線追蹤在RIT區(qū)域使用16次或64次采樣。更進(jìn)一步,在模擬P2點(diǎn)時(shí)使射出的法向量垂直于攝像機(jī)的lookat向量更進(jìn)一步,所述進(jìn)行全局光照的繪制的方法具體為:基于一個(gè)四元數(shù)其中,表示表面上的一點(diǎn),S表示表面的幾何特性,fr表示在處對(duì)于不同入射角ω'和出射角ω的BRDF光學(xué)材料特定,Le表示處往ω方向上自發(fā)出的光能,We是作用方程的集合;進(jìn)一步,由能量守恒公式和輻射率定義,可以得到繪制方程用以進(jìn)行全局光照的繪制,用以描述了兩點(diǎn)之間的一次作用的輻射率變化情況:更進(jìn)一步,所述能量守恒公式的建立步驟為:RadiancePower/Flux定義光通量Φ為單位時(shí)間通過(guò)有限區(qū)域的指定光頻范圍的輻射能量,根據(jù)能量守恒,對(duì)于表面一點(diǎn)的鄰近區(qū)域,其出射光通量Φout等于自發(fā)射光通量Φe與對(duì)從各個(gè)方向入射的光通量Φin的積分之和,用公式表示為:其中,是入射光的微分立體角,ω是出射光的立體角,θ是入射光方向與所在表面法向的夾角,fr為所在區(qū)域的BRDF方程。更進(jìn)一步,所述輻射率公式定義的步驟為:Radiance輻射率定義為L(zhǎng),dω為在指定方向上的單位立體角和通過(guò)垂直此方向的區(qū)域dA的單位面積輻射通量,用公式表示為:基于上述本發(fā)明還提供了一種基于模擬折射和全局光照的3D模型渲染系統(tǒng),包括:預(yù)處理單元,用以對(duì)圖像進(jìn)行光柵化處理,得到每個(gè)像素點(diǎn)的基礎(chǔ)特征值:{入射方向擊中表面的點(diǎn)P1,P1點(diǎn)所在表面的法向量以及,根據(jù)所述基礎(chǔ)特征值得到第一次折射光線方向模擬單元,通過(guò)模擬第二次反射位置P2點(diǎn)和P2所在表面的法向量計(jì)算得到第二次折射光線全局光照單元,用以根據(jù)所述進(jìn)行全局光照的繪制后完成3D模型渲染本發(fā)明的有益效果:本發(fā)明基于模擬折射和全局光照的3D模型渲染方法,在GPU上分為兩步,可以實(shí)現(xiàn)二次折射的效果,且可以在現(xiàn)在一般的圖形硬件上運(yùn)行,而現(xiàn)今的交互技術(shù)往往局限于一次折射。本發(fā)明基于模擬折射和全局光照的3D模型渲染系統(tǒng),提出了一個(gè)基于圖像空間的方法來(lái)模擬二次折射效果,并進(jìn)行了全局光照的繪制。該系統(tǒng)可以在當(dāng)前的GPUs上面交互運(yùn)行,能夠有效渲染復(fù)雜模型的折射效果。附圖說(shuō)明圖1本發(fā)明一實(shí)施例中的基于模擬折射和全局光照的3D模型渲染方法流程示意圖。圖2是基礎(chǔ)折射的原理示意圖。圖3a-圖3f是不同處理方式下的顯示結(jié)果。圖4a-圖4d表示折射效果示意圖。圖5是不同視角下的折射效果示意圖。圖6a-圖6c表示不同方式下折射效果示意圖(飛機(jī))。圖7a-圖7c表示不同方式下折射效果示意圖(墻壁)。圖8是基于模擬折射和全局光照的3D模型渲染系統(tǒng)結(jié)構(gòu)示意圖。具體實(shí)施方式現(xiàn)在將參考一些示例實(shí)施例描述本公開的原理??梢岳斫?,這些實(shí)施例僅出于說(shuō)明并且?guī)椭绢I(lǐng)域的技術(shù)人員理解和實(shí)施例本公開的目的而描述,而非建議對(duì)本公開的范圍的任何限制。在此描述的本公開的內(nèi)容可以以下文描述的方式之外的各種方式實(shí)施。如本文中所述,術(shù)語(yǔ)“包括”及其各種變體可以被理解為開放式術(shù)語(yǔ),其意味著“包括但不限于”。術(shù)語(yǔ)“基于”可以被理解為“至少部分地基于”。術(shù)語(yǔ)“一個(gè)實(shí)施例”可以被理解為“至少一個(gè)實(shí)施例”。術(shù)語(yǔ)“另一實(shí)施例”可以被理解為“至少一個(gè)其它實(shí)施例”?!窕A(chǔ)折射給定一個(gè)點(diǎn)P1(如圖2)及其表面信息,計(jì)算該點(diǎn)的一次折射相對(duì)容易。折射光線的路徑服從Snell法則,即:nisinθi=ntsinθt其中,ni和nt表示入射介質(zhì)和傳輸截止的反射系數(shù)。θi表示入射向量和表面法向量的夾角,θt表示傳輸向量和表面法向量的逆向量的夾角。光線追蹤的時(shí)候,通過(guò)復(fù)雜物體的折射光線的路徑比較復(fù)雜,因?yàn)檎凵涔饩€會(huì)獨(dú)立地與幾何面相交,并遵守Snell法則循環(huán)折射。不幸的是,GPU處理不同像素的并行計(jì)算開銷很大。如圖2所示,光柵化決定了P1和一個(gè)簡(jiǎn)單的面片著色可以計(jì)算出但是,P2的具體位置無(wú)法得知,除非使用基于光線的方法。由于GPU上的光線追蹤技術(shù)比較慢,復(fù)雜模型的多個(gè)面的反射計(jì)算無(wú)法實(shí)現(xiàn)交互的速度。向量與茶壺表面的P1點(diǎn)相交,以相對(duì)與法向量折射角為θi為基礎(chǔ)、射向折射方向在P2、P3、P4點(diǎn)的折射由物理計(jì)算獲得。本申請(qǐng)的方法只折射兩次,使用距離和計(jì)算P2的位置?!窕趫D像的渲染相比于使用基于GPU的光線追蹤,本申請(qǐng)?zhí)岢鐾ㄟ^(guò)光柵化即可計(jì)算的模擬用于兩次反射的信息,考慮到光柵化之后被獲知的信息。對(duì)每個(gè)像素,可以很容易知道下述信息:入射方向擊中表面的點(diǎn)P1,以及P1點(diǎn)所在表面的法向量使用上述信息,傳輸方向可以通過(guò)Snell法則倍計(jì)算出來(lái)??紤]需要找出兩次折射后的光線所需的信息。為了計(jì)算點(diǎn)P2和法向量就以足夠。由于找到很容易,我們的主要貢獻(xiàn)是用一個(gè)簡(jiǎn)單的方法模擬P2和再次強(qiáng)調(diào),我們使用近似的點(diǎn)P2和法向量因?yàn)闇?zhǔn)確獲取它們的值需要進(jìn)行每個(gè)像素的光線追蹤。計(jì)算出之后,在本申請(qǐng)中假設(shè)折射光線設(shè)想一個(gè)無(wú)限的環(huán)境映像去獲取一個(gè)折射的顏色。在圖2中,向量與茶壺表面的P1點(diǎn)相交,以相對(duì)與法向量折射角為θi為基礎(chǔ)、射向折射方向在P2、P3、P4點(diǎn)的折射由物理計(jì)算獲得。我們的方法只折射兩次,使用距離和計(jì)算P2的位置。請(qǐng)參考,圖1本發(fā)明一實(shí)施例中的基于模擬折射和全局光照的3D模型渲染方法流程示意圖,包括如下步驟:步驟S100對(duì)圖像進(jìn)行光柵化處理,得到每個(gè)像素點(diǎn)的基礎(chǔ)特征值:{入射方向擊中表面的第一折射位置P1,P1點(diǎn)所在表面的法向量步驟S101根據(jù)所述基礎(chǔ)特征值得到第一次折射光線方向步驟S102通過(guò)模擬第二次折射位置P2點(diǎn)和P2所在表面的法向量計(jì)算得到第二次折射光線步驟S103根據(jù)所述進(jìn)行全局光照的繪制后完成3D模型渲染。在所述步驟S102中,作為本實(shí)施例中的優(yōu)選,模擬P2點(diǎn)的計(jì)算方法進(jìn)一步為:其中,d表示P2和P1的距離,已知P1和近似的位置只需要要找到一個(gè)近似的距離故:其中,γ為漸進(jìn)系數(shù),其中,其中,θi表示入射向量和表面法向量的夾角,θt表示傳輸向量和表面法向量的逆向量的夾角,和分別指:法向量與物體的交點(diǎn)距離、入射向量與物體的交點(diǎn)距離,用于計(jì)算P2的位置。在所述步驟S102中,優(yōu)選地,所述法向量的計(jì)算方法進(jìn)一步為:根據(jù)所述按照與眼睛最遠(yuǎn)的表面的距離或者第二個(gè)表面與眼睛的距離,得到法向量在所述步驟S102中,模擬P2點(diǎn)時(shí),基于Fragmentshaders面片著色計(jì)算TIR全內(nèi)反射,同時(shí)將θ_i的值限制在一個(gè)閥值θ_crit以內(nèi),用以使折射光線射向退出的面。在所述步驟S102中,模擬P2點(diǎn)時(shí),光線追蹤在RIT區(qū)域使用16次或64次采樣。在所述步驟S102中,在模擬P2點(diǎn)時(shí)使射出的法向量垂直于攝像機(jī)的lookat向量在所述步驟S103中,所述進(jìn)行全局光照的繪制的方法具體為:基于一個(gè)四元數(shù)其中,表示表面上的一點(diǎn),S表示表面的幾何特性,fr表示在處對(duì)于不同入射角ω'和出射角ω的BRDF光學(xué)材料特定,Le表示處往ω方向上自發(fā)出的光能,We是作用方程的集合;進(jìn)一步,由能量守恒公式和輻射率定義,可以得到繪制方程用以進(jìn)行全局光照的繪制,用以描述了兩點(diǎn)之間的一次作用的輻射率變化情況:作為本實(shí)施例中的優(yōu)選,所述能量守恒公式的建立步驟為:RadiancePower/Flux定義光通量Φ為單位時(shí)間通過(guò)有限區(qū)域的指定光頻范圍的輻射能量,根據(jù)能量守恒,對(duì)于表面一點(diǎn)的鄰近區(qū)域,其出射光通量Φout等于自發(fā)射光通量Φe與對(duì)從各個(gè)方向入射的光通量Φin的積分之和,用公式表示為:其中,是入射光的微分立體角,ω是出射光的立體角,θ是入射光方向與所在表面法向的夾角,fr為所在區(qū)域的BRDF方程。作為本實(shí)施例中的優(yōu)選,所述輻射率公式定義的步驟為:Radiance輻射率定義為L(zhǎng),dω為在指定方向上的單位立體角和通過(guò)垂直此方向的區(qū)域dA的單位面積輻射通量,用公式表示為:1.1模擬P2點(diǎn)由于光線追蹤計(jì)算開銷太大,其不能提供有價(jià)值的信號(hào),來(lái)表明如何近似第二次反射的位置??紤]一個(gè)光線的參數(shù)在本申請(qǐng)的場(chǎng)景中,本申請(qǐng)可以將光線寫成其中d表示P2和P1的距離。知道了P1和近似的位置只需要要找到一個(gè)近似的距離所以:其中γ為漸進(jìn)系數(shù)。最簡(jiǎn)單的模擬的方法是幾何前面和背部的沒(méi)有經(jīng)過(guò)反射的距離這種方法的實(shí)現(xiàn)很簡(jiǎn)單,可以通過(guò)渲染反深度信息來(lái)獲取。(比如,使用GL_GREATER而不是GL_LESS),將z緩沖存入一個(gè)紋理(圖3a),再次渲染法線圖(圖3b),并通過(guò)兩個(gè)表面的z的值計(jì)算距離值(表3c)。這種簡(jiǎn)單的近似在計(jì)算不太復(fù)雜的反射系數(shù)較小的凸幾何體時(shí)效果較好。由于反射光線朝著逆向的法向量方向向內(nèi)彎曲(因?yàn)閚t>ni),當(dāng)nt變得很大時(shí),接近于-這表明我們需要在和之間進(jìn)行插值,基于θi和θt,來(lái)獲取一個(gè)更準(zhǔn)確的的模擬。我們使用這種方法來(lái)運(yùn)行結(jié)果,預(yù)計(jì)算每個(gè)頂點(diǎn)的但并使用下述公式進(jìn)行插值:預(yù)計(jì)算的d的樣本可以實(shí)現(xiàn)更準(zhǔn)確的效果,如果以緊湊的、易于訪問(wèn)的方式存儲(chǔ)模型。我們嘗試將模型存儲(chǔ)為64*64的幾何圖片,并從64*64個(gè)方向?qū)缀螆D片里的每個(gè)圖元的d進(jìn)行采樣。這樣我們就獲得4096*4096個(gè)包含采樣的d的值的紋理。但是,用這種方法插值會(huì)產(chǎn)生明顯的離散化的d的值,從而產(chǎn)生更糟糕的結(jié)果,相比于之前描述的方法。其中,圖3a-圖3f具體為:到后表面的距離圖3a,到前表面圖3b,前、后表面之間圖3c。后表面的法線圖3d以及前表面的法線圖3e。最終結(jié)果圖3f。1.2確定法向量N2確定了之后,計(jì)算的最后要求是計(jì)算法向量法向量和面片存儲(chǔ)在頂點(diǎn)處,但是確定哪一個(gè)多邊形與相交開銷比較大,除非我們使用基于圖像的方法??紤]凸表面物體,我們通過(guò)兩個(gè)步驟光柵化所有的幾何圖形:一個(gè)圖形裁剪前面,另一個(gè)裁剪后面。如果我們?cè)诘谝徊綄⒈砻娣ㄏ蛄孔鳛橄袼刂典秩救爰y理(如圖3d所示),那么在第二步我們可以把估算的射出點(diǎn)投射到紋理空間,并且標(biāo)記紋理空間以找到法向量。用這種方法計(jì)算凸?fàn)钗矬w的折射效果會(huì)產(chǎn)生一些問(wèn)題,因?yàn)槎鄠€(gè)表面可能會(huì)投射到相同的z緩沖圖元上。我們的方法將會(huì)為多余的折射增加紋理,但我們?nèi)耘f不清楚如何模擬更多折射產(chǎn)生的相交坐標(biāo)(比如,圖2中的P3、P4)。與此同時(shí),計(jì)算二次折射的效果能夠滿足多次折射的效果。如果我們不為折射產(chǎn)生的相交坐標(biāo)擴(kuò)展紋理,可以使用另外兩種方法來(lái)解決凹物體表面的折射效果:計(jì)算第二次折射相交的點(diǎn)根據(jù)與眼睛最遠(yuǎn)的表面的距離或者第二個(gè)表面(比如,第一個(gè)背部表面)與眼睛的距離(圖2中的黃色或黑色的點(diǎn))。唯一的不同是在第一步驟將哪個(gè)表面渲染到紋理,并在第二步驟中用以計(jì)算和圖4a-圖4d和圖5表示了這種不同。佛像的基座,使用圖4a最遠(yuǎn)的多邊形,或者圖4b第二個(gè)面來(lái)計(jì)算我們的二次折射效果,圖4c使用一次折射,以及圖4d使用計(jì)算6次折射的光線追蹤生成的效果。圖5是一具馬的模型在兩個(gè)視角下的效果。參考圖像是使用光線追蹤對(duì)每個(gè)像素進(jìn)行64次采樣的結(jié)果,右邊的圖像比較了我們的方法與光線追蹤對(duì)每個(gè)像素進(jìn)行一次采樣所生成折射效果。如果渲染深度比較復(fù)雜的物體,使用最遠(yuǎn)的多邊形會(huì)產(chǎn)生較好的折射效果,而使用第二個(gè)面的紋理會(huì)產(chǎn)生更平滑的效果,但使用第二個(gè)面就忽視了距離眼睛更遠(yuǎn)的多邊形的折射效果。對(duì)于近乎凸表面的無(wú)題來(lái)說(shuō),上述的不同效果可以忽視。1.3遺留問(wèn)題我們的方法存在三個(gè)問(wèn)題:沒(méi)有預(yù)處理計(jì)算來(lái)生成內(nèi)部反射的效果,可能無(wú)法投射到一個(gè)背面多邊形上,或者可能由于凹物體表面投射到一個(gè)不正確的多邊形上。面片著色(Fragmentshaders)可以計(jì)算全內(nèi)反射(TIR),使用前面與背面的循環(huán)光線反彈。但是,這會(huì)極大降低了代碼的運(yùn)行速度,因?yàn)闀?huì)由于圖像空間方法產(chǎn)生的誤差產(chǎn)生冗余計(jì)算。我們?cè)趯?shí)現(xiàn)的時(shí)候?qū)ⅵ萯的值限制在一個(gè)閥值θcrit以內(nèi)。使用閥值會(huì)有效地使折射光線射向退出的面。RIT區(qū)域在使用一次采樣的時(shí)候會(huì)產(chǎn)生走樣;對(duì)于復(fù)雜的物體,光線追蹤在RIT區(qū)域使用16次或64次采樣能夠避免走樣現(xiàn)象。盡管我們的方法在物理角度并不準(zhǔn)確,但這種方法在TIR區(qū)域使用1次采樣能夠相對(duì)平滑的效果。這里我們來(lái)考慮當(dāng)?shù)闹捣浅4蟮那闆r。的值過(guò)大會(huì)使得的位置落在物體之外,如圖3d中所示的黑色紋理像素。從概念角度來(lái)講,這表示與物體的邊緣相交。這個(gè)問(wèn)題會(huì)偶爾發(fā)生,通常當(dāng)物體的表面凹進(jìn)去并且折射系數(shù)大于1.5。為了使我們的結(jié)果避免走樣,我們使射出的法向量垂直于攝像機(jī)的lookat向量特別地,我們將投射到垂直于(比如,的平面。改善的值會(huì)避免這個(gè)問(wèn)題。最后一個(gè)問(wèn)題主要發(fā)生在這樣的物體上:折射介質(zhì)凹進(jìn)去,并且距離視點(diǎn)較近,其深度復(fù)雜值大于2。如圖5所示,由從視點(diǎn)發(fā)出的光線與馬的模型的身體相較于點(diǎn)點(diǎn)可能會(huì)被投射到馬腿上,盡管點(diǎn)P2的實(shí)際位置不再馬的身體上。不管第二次折射選擇哪個(gè)面進(jìn)行計(jì)算,這個(gè)問(wèn)題我們的方法產(chǎn)生的走樣現(xiàn)象,并且當(dāng)物體表面凹得很明顯的時(shí)候走樣現(xiàn)象會(huì)很突出。●全局光照在前面步驟的基礎(chǔ)上,我們進(jìn)一步進(jìn)行全局光照的計(jì)算。全局光照的計(jì)算本質(zhì)上是解決繪制問(wèn)題。繪制問(wèn)題可以表示為一個(gè)四元數(shù)問(wèn)題,其中,表示表面上的一點(diǎn),S表示表面的幾何特性,fr表示在處對(duì)于不同入射角ω'和出射角ω的BRDF光學(xué)材料特定,Le表示處往ω方向上自發(fā)出的光能,We是作用方程的集合。繪制問(wèn)題對(duì)光與表面的相互作用We進(jìn)行建模,設(shè)法計(jì)算出從表面輻射出去并到達(dá)接收設(shè)備的光能量。繪制方程被提出來(lái)解決繪制問(wèn)題,首先定義光通量(RadiancePower/Flux)Φ為單位時(shí)間通過(guò)有限區(qū)域的指定光頻范圍的輻射能量。根據(jù)能量守恒,對(duì)于表面一點(diǎn)的鄰近區(qū)域,其出射光通量Φout等于自發(fā)射光通量Φe與對(duì)從各個(gè)方向入射的光通量Φin的積分之和,用公式表示為:其中,是入射光的微分立體角,ω是出射光的立體角,θ是入射光方向與所在表面法向的夾角,fr為所在區(qū)域的BRDF方程。光通量與表面面積的大小有光,對(duì)于一個(gè)很小的區(qū)域,為了表示方便,定義輻射率(Radiance)L,dω為在指定方向上的單位立體角和通過(guò)垂直此方向的區(qū)域dA的單位面積輻射通量,用公式表示為:由能量守恒公式和輻射率定義,可以得到繪制方程,它描述了兩點(diǎn)之間的一次作用的輻射率變化情況:●結(jié)果我們?cè)贠penGL上實(shí)現(xiàn)了本申請(qǐng),使用Cg頂點(diǎn)和面片著色。該算法分為兩個(gè)步驟。第一步渲染從視點(diǎn)到背部多邊形的距離,并存儲(chǔ)這些多邊形的法向量,如圖3a、d所示。第二步渲染前面多邊形并在面片著色中計(jì)算折射效果。假設(shè)BackfaceZBuf和BackfaceNormals是在第一步中計(jì)算的紋理,其偽代碼如下所示:forallfragmentsF(給出P1,和),do運(yùn)行后,我們獲取到渲染1024*1024大小的圖片的運(yùn)行時(shí)間。我們的代碼沒(méi)有優(yōu)化這三種技術(shù),但我們對(duì)復(fù)雜模型的渲染仍保持很高的速度。注意用于我們的演示視頻的運(yùn)行時(shí)間沒(méi)有在這里描述。本申請(qǐng)中的大多數(shù)結(jié)果采用的折射系數(shù)是1.2。復(fù)雜的模型可能會(huì)導(dǎo)致不正確的折射現(xiàn)象。在這種情況下對(duì)每個(gè)像素進(jìn)行1次采樣不能解決問(wèn)題。我們使用OpenGL中的多重采樣會(huì)解決這個(gè)問(wèn)題:對(duì)每個(gè)像素進(jìn)行至少4次采樣。表1:對(duì)比本申請(qǐng)的方法和光線追蹤計(jì)算復(fù)雜物體的折射效果的運(yùn)行時(shí)間。多邊形數(shù)量二次折射一次折射光線追蹤計(jì)算場(chǎng)景佛像50,00053.3fps136.8fps121.9s奶牛5,804122.9fps285.7fps31.6sF-164,592149.2fps395.9fps26.8s球1,600164.3fps323.5fps6.1s茶壺6,320115.7fps306.9fps49.3s金星100,00037.9fps112.2fps147.2s其中,圖6a一次折射的效果,圖6b本申請(qǐng)的方法產(chǎn)生的折射效果,以及圖6c光線追蹤的效果。飛機(jī)的折射系數(shù)是1.2,墻壁的折射系數(shù)是1.5。其中,圖7a一次折射的效果,圖7b本申請(qǐng)的方法產(chǎn)生的折射效果,以及圖7c光線追蹤的效果。圖8是基于模擬折射和全局光照的3D模型渲染系統(tǒng)結(jié)構(gòu)示意圖,預(yù)處理單元1,用以對(duì)圖像進(jìn)行光柵化處理,得到每個(gè)像素點(diǎn)的基礎(chǔ)特征值:{入射方向擊中表面的點(diǎn)P1,P1點(diǎn)所在表面的法向量以及,根據(jù)所述基礎(chǔ)特征值得到第一次折射光線方向模擬單元2,通過(guò)模擬第二次反射位置P2點(diǎn)和P2所在表面的法向量計(jì)算得到第二次折射光線全局光照單元3,用以根據(jù)所述進(jìn)行全局光照的繪制后完成3D模型渲染本申請(qǐng)?zhí)岢隽艘粋€(gè)基于圖像空間的方法來(lái)模擬二次折射效果,并進(jìn)行了全局光照的繪制。這個(gè)方法可以在當(dāng)前的GPUs上面交互運(yùn)行,能夠有效渲染復(fù)雜模型的折射效果。雖然本公開以具體結(jié)構(gòu)特征和/或方法動(dòng)作來(lái)描述,但是可以理解在所附權(quán)利要求書中限定的本公開并不必然限于上述具體特征或動(dòng)作。而是,上述具體特征和動(dòng)作僅公開為實(shí)施權(quán)利要求的示例形式。當(dāng)前第1頁(yè)1 2 3 
      當(dāng)前第1頁(yè)1 2 3 
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1