《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 二維數(shù)據(jù)隨機(jī)延拓成三維水域動(dòng)畫方法研究
二維數(shù)據(jù)隨機(jī)延拓成三維水域動(dòng)畫方法研究
2015年微型機(jī)與應(yīng)用第2期
歐訓(xùn)勇
(瓊州學(xué)院 電子信息工程學(xué)院,,海南 三亞 572022)
摘要: 提出一種簡單有效的、節(jié)約計(jì)算開銷的方法,,用于制作實(shí)現(xiàn)三維場景中水域動(dòng)畫效果,。該方法的實(shí)現(xiàn)過程為利用二維模擬水流或波浪數(shù)據(jù)延拓到三維空間中,,實(shí)現(xiàn)水沿其主導(dǎo)傳播方向產(chǎn)生波動(dòng)動(dòng)畫,其中利用了基于物理方程和粒子系統(tǒng)的方法,。在動(dòng)畫過程中,,這些二維水流幀畫面被隨機(jī)地沿橫向方向取樣,在動(dòng)畫時(shí)間和由用戶自定義噪聲的參數(shù)設(shè)置下取得的切片(稱為時(shí)間片)結(jié)構(gòu)中進(jìn)行,。在重構(gòu)三維水流畫面中,,使用了帶平滑濾波器的幾何技術(shù),以彌補(bǔ)因取樣所造成的切片損傷,。使用隨機(jī)布朗運(yùn)動(dòng)噪聲數(shù)據(jù)補(bǔ)償三維畫面數(shù)據(jù),,逼真地顯示了漣漪波和怒濤波的動(dòng)畫。
Abstract:
Key words :

  摘  要: 提出一種簡單有效的,、節(jié)約計(jì)算開銷的方法,,用于制作實(shí)現(xiàn)三維場景中水域動(dòng)畫效果,。該方法的實(shí)現(xiàn)過程為利用二維模擬水流或波浪數(shù)據(jù)延拓到三維空間中,實(shí)現(xiàn)水沿其主導(dǎo)傳播方向產(chǎn)生波動(dòng)動(dòng)畫,,其中利用了基于物理方程和粒子系統(tǒng)的方法,。在動(dòng)畫過程中,這些二維水流幀畫面被隨機(jī)地沿橫向方向取樣,,在動(dòng)畫時(shí)間和由用戶自定義噪聲的參數(shù)設(shè)置下取得的切片(稱為時(shí)間片)結(jié)構(gòu)中進(jìn)行,。在重構(gòu)三維水流畫面中,使用了帶平滑濾波器的幾何技術(shù),,以彌補(bǔ)因取樣所造成的切片損傷,。使用隨機(jī)布朗運(yùn)動(dòng)噪聲數(shù)據(jù)補(bǔ)償三維畫面數(shù)據(jù),逼真地顯示了漣漪波怒濤波的動(dòng)畫,。

  關(guān)鍵詞: 漣漪波,;怒濤波;隨機(jī)延拓,;仿真

0 引言

  近些年來,,計(jì)算機(jī)動(dòng)畫技術(shù)表現(xiàn)得極為突出,取得了豐碩的成果,。借助計(jì)算機(jī)圖形技術(shù)對各種自然現(xiàn)象的二維,、三維動(dòng)畫自動(dòng)生成的研究方法不斷涌現(xiàn),例如計(jì)算機(jī)模擬生成的爆炸,、水流,、波浪等動(dòng)畫效果。這些自然現(xiàn)象的計(jì)算機(jī)生成方法給動(dòng)畫制作帶來了極大的方便,,為二維和三維動(dòng)畫場景的制作縮短了周期,、降低了成本。

  對于創(chuàng)作大面積水域動(dòng)畫,,如海面的波浪飛濺及波浪洶涌澎湃的動(dòng)畫時(shí),,因其過于復(fù)雜,計(jì)算量大,,這在計(jì)算機(jī)動(dòng)畫領(lǐng)域是一個(gè)極具挑戰(zhàn)的課題,。本文提出一種簡單高效、節(jié)約計(jì)算量的方法來實(shí)現(xiàn)大面積海浪,、波濤的動(dòng)畫生成,。其原理為利用水波動(dòng)的二維仿真數(shù)據(jù)隨機(jī)延拓成三維水流波動(dòng)效果。其實(shí)現(xiàn)過程如圖1所示,。

001.jpg

1 相關(guān)研究文獻(xiàn)分析

  計(jì)算機(jī)模擬水流動(dòng)畫技術(shù)已經(jīng)取得了長足發(fā)展。參考文獻(xiàn)[1]利用小振幅波理論和細(xì)胞自動(dòng)機(jī)方法構(gòu)建水波動(dòng)畫的算法,;參考文獻(xiàn)[2]使用參數(shù)方法描述水流動(dòng)畫,;參考文獻(xiàn)[3]基于水面的正弦關(guān)系建模描述大型海浪動(dòng)畫及畫面渲染技術(shù),,在處理更復(fù)雜的水動(dòng)力學(xué)有局限性;為獲得更為真實(shí)的水波動(dòng)畫效果與飛濺效果,,參考文獻(xiàn)[4]使用粒子系統(tǒng)結(jié)合高維場模型技術(shù)模擬水流動(dòng)畫,;而參考文獻(xiàn)[5]描述通過添加粒子產(chǎn)生噴霧和泡沫的水動(dòng)畫的視覺效果;在參考文獻(xiàn)[6]中,,表現(xiàn)一個(gè)全三維波浪粉碎效果的動(dòng)畫是通過控制用戶定義的二維切片庫進(jìn)行的,;參考文獻(xiàn)[7]提出了基于粒子系統(tǒng)模擬的自適應(yīng)采樣算法,著眼于幾何形狀復(fù)雜區(qū)域的計(jì)算,,同時(shí)減少了流體深處的粒子數(shù),。

  本文的方法由參考文獻(xiàn)[8]的思想改良而成,有關(guān)要點(diǎn)如下:

 ?。?)引入新的隨機(jī)內(nèi)容,,提供了更好的可控性;

 ?。?)隨機(jī)布朗運(yùn)動(dòng)(FBM)噪聲的使用,,低/高通濾波器(LPF/HPF)和參數(shù)β(相對于波前的形狀/復(fù)雜性)的效果;

 ?。?)多邊形生成渲染,,包括表面粒子檢測、低通濾波器的切片取樣,。

2 二維數(shù)據(jù)仿真方法

  2.1 模擬仿真方法

  一般來說,,水動(dòng)力學(xué)可以由如下微分方程描述:

  12.png

  其中,u是速度,,t是時(shí)間,,ρ為密度,p是壓力,,ν是粘度,,f是外力。

  MPS方法[9]是通過粒子相互作用來解決式(1)和(2)的,。對式(2)應(yīng)用壓力映射后,,MPS方法離散化并轉(zhuǎn)化成粒子相互作用的方程。粒子間的所有作用僅限于給定的截止半徑re內(nèi),。兩粒子間相互作用的重量被定義為:

  34.png

  其中,,r分別是兩粒子i和j在位置ri和rj間的距離。

  在MPS方法中,,流體的局部密度是用粒子數(shù)密度(PND)來表示的,。粒子i的PND被定義為:

  5.png

  在自由表面的外側(cè)區(qū)域中不存在粒子時(shí),自由表面上方的PND值減小。這樣,,水粒子i滿足的條件為:

  ni<δn0(6)

  其中,,n0是PND的標(biāo)準(zhǔn)值,δ是閾值,,它們被認(rèn)為是在自由表面上,。

  2.2 水粒子分類

  在三維中重建流水表面,把水粒子根據(jù)它們的PND分類,。這一簡單的分類的優(yōu)勢在于,,可以無需特殊處理或計(jì)算,就能得到水表面和飛濺水花粒子數(shù)的合理近似值,。由以下條件根據(jù)式(6)進(jìn)行分類:

 ?。?)飛濺的水花粒子ni<δ1n0;

 ?。?)水表面粒子δ1n0≤ni≤δ2n0,;

  (3)水中粒子ni>δ2n0,。

  δ1和δ2為用戶自定的閾值,。

  2.3 二維水波仿真

  利用二維MPS方法對漣漪波和怒濤波兩類不同的水波進(jìn)行模擬,其算法如下[10-11]:

 ?。?)初始化模擬環(huán)境,;

  (2)for each時(shí)間步長,;

 ?。?)添加粒子;

 ?。?)計(jì)算并賦予粒子作用力,;

  (5)平流粒子數(shù),;

 ?。?)設(shè)置相鄰粒子和計(jì)算粒子數(shù)(PND);

 ?。?)提取水表面或飛濺水花粒子數(shù),;

  (8)刪除粒子,;

 ?。?)end for。

  程序?qū)嶒?yàn)中使用了一些重要的仿真參數(shù),,各參數(shù)的值如表1所示,。

004.jpg

3 三維動(dòng)畫仿真

  對上述的二維水波動(dòng)畫方法,以隨機(jī)方式延拓成三維空間中的水波。對于三維表面重建,,使用二維高斯濾波器,。

  3.1 隨機(jī)延拓方法

  很容易想象,如果一個(gè)單一的二維波面在三維中被復(fù)制,,所產(chǎn)生的表面在橫向方向上看起來絕對是均勻的,如圖2所示,。

002.jpg

  切片采樣過程以下列隨機(jī)公式取得:

  78.png

  其中,,S為仿真動(dòng)畫的幀;i為自然數(shù),,是動(dòng)畫時(shí)間,;k取值0,1,,…,,K-1,是動(dòng)畫切片,;N是噪聲函數(shù),;F為噪聲波動(dòng)范圍參數(shù);A為控制動(dòng)畫速度的參數(shù),;中括號(hào)“[]”表示為運(yùn)算后取最接近的整數(shù),。對于更換噪聲函數(shù)N,采用隨機(jī)布朗運(yùn)動(dòng)(fBm或也稱為1/fβ)的噪聲,。fBm噪音完全由它的功率頻譜控制,,與頻率f成反比,參數(shù)β為加權(quán)系數(shù),。

  根據(jù)式(7)和式(8),,幀S為在某個(gè)動(dòng)畫時(shí)刻i的第k個(gè)切片,是根據(jù)隨機(jī)式(7)和在約束條件下式(8)下所取得的,。如圖1所示,。一旦所有的切片都填滿了由隨機(jī)取樣的幀,這些切片被線性采樣以構(gòu)造三維水流波形,。

  3.2 曲面近似

  為了處理三維表面重建,,使用帶高斯濾波器的高度場技術(shù)。這能夠重建近似的三維水面,,而補(bǔ)救線狀偽影所造成的二維切片的采樣,。

  在XZ平面上創(chuàng)建大小為N×M基礎(chǔ)網(wǎng)格如下:

  9.jpg

  為了取得更好的結(jié)果,在兩個(gè)相鄰的切片和截面積(3Δx,,2Δz)高斯濾波參數(shù)σ=2.0之間插入一個(gè)額外的切片,。

3.3 三維漣漪波

  對于模擬漣漪波時(shí),通過在不同方向合成幾類波的方式略有不同。用這種方法,,消除了沿橫向方向的波形外觀,,它產(chǎn)生在單一方向上的運(yùn)動(dòng)。為了最終的h(P)值在每個(gè)小區(qū)中心P上的基礎(chǔ)網(wǎng)格IXZ逼近,,由式(10)合成臨近點(diǎn)在每個(gè)方向上的高度,。

  10.png

  其中,ω是用戶自定義重量值,,hd是相鄰點(diǎn)Q在d方向上的高度值,。

4 實(shí)驗(yàn)效果

  根據(jù)前述的方法和相應(yīng)程序算法,在Intel(R)Core(TM)主頻為2.83 GHz,,內(nèi)存為4 GB的環(huán)境下,,利用Delphi結(jié)合OpenGL三維引擎庫進(jìn)行編程實(shí)現(xiàn)。漣漪波和怒濤波在不同的布朗隨機(jī)運(yùn)動(dòng)噪聲參數(shù)下取得了不同動(dòng)畫效果,,如圖3,、圖4所示。

003.jpg

5 結(jié)論

  本文提出了利用二維水面波動(dòng)曲線延拓形成三維的水波動(dòng)畫效果,,利用各類技術(shù)補(bǔ)償二維切片損傷重構(gòu)三維曲面,,形成逼真的海水波濤及漣漪動(dòng)畫效果,在實(shí)驗(yàn)過程中較同類方法實(shí)現(xiàn)的三維海浪波濤動(dòng)畫有相當(dāng)?shù)男?。?jié)約使用大量的粒子數(shù),,為后期動(dòng)畫效果的渲染節(jié)約了系統(tǒng)資源。此研究為動(dòng)畫制作中的大型水域動(dòng)畫場景的計(jì)算機(jī)生成提供了技術(shù)支持,,節(jié)約了大量類似開發(fā)的成本并縮短制作周期,。此項(xiàng)技術(shù)方法將繼續(xù)向GPU領(lǐng)域邁進(jìn),以期在今后的研究中能更好地以快速渲染自動(dòng)生成大型水域中的波濤洶涌,、水浪渦旋等動(dòng)畫效果,。

參考文獻(xiàn)

  [1] 楊懷平,胡事民,,孫家廣.一種實(shí)現(xiàn)水波動(dòng)畫的新算法[J].計(jì)算機(jī)學(xué)報(bào),,2002,25(6):612-617.

  [2] FOURNIER A,, REEVES T. A simple model of ocean waves[J]. Proceedings of SIGGRAPH,, 1986(20):75-84.

  [3] DARLES E, CRESPIN B,, GAZANFARPOUR D. A survey of ocean simulation and rendering techniques in computer graphics[J]. Computer Graphics Forum,,2011,30(1):43-60.

  [4] MAES M M,, FUJIMOTO T,, CHIBA N. Efficient animation of water flow on irregular terrains[C]. Proceedings of International Conference on Computer Graphics and Interactive Techniques,, GRAPHITE′06, 2006:107-115.

  [5] TAKAHASHI T,, FUJII H,, KUNIMATSU A, et al. Realistic animation of fluid with splash and foam[J]. Computer Graphics Forum,, 2003,,22(3):391-400.

  [6] ADAMS B, PAULY M,, KEISER R,, et al. Adaptively sampled particle fluids[J]. ACM Transactions on Graphics,2007,,26(3):48.

  [7] HONG W, HOUSE D,, KEYSER J. Adaptive partcles for incompressible fluid simulation[J]. The Visual Computer,,2008,24(7):535-543.

  [8] FUJIMOTO T,, MIYAUCHI S,, SUZUKI T, et al. Noise-based animation of waving phenomena[C]. Proceedings of   IWAIT2005,, IEICE Technical Report. Image Engineering,, 2005,104(545):93-98.

  [9] KOSHIZUKA S,, NOBE A,, OKA Y. Numerical analysis of breaking waves using the MPS method[J]. International Journal for Numerical Methods in Fluids, 1998(26):751-769.

  [10] 李海,,汪繼文.基于粒子系統(tǒng)的位置可控有聲煙花模擬[J].微型機(jī)與應(yīng)用,,2013,32(9):32-34.

  [11] 袁雪霞,,王繼州.導(dǎo)彈煙霧的快速模擬[J].微型機(jī)與應(yīng)用,,2013,32(10):32-34.


此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。