王曉丹,王忠芝
(北京林業(yè)大學 北京 100083)
水體是現(xiàn)實生活中常見的自然景象,對水體的仿真研究在景觀仿真、網(wǎng)絡(luò)游戲、影視特效、水利工程等多個領(lǐng)域都具有重要的理論意義和實用價值。由于水體的形狀不規(guī)則和隨機易變等特性,使水體仿真成為仿真流域中的一個研究難點和熱點,同時也激起了無數(shù)研究者的興趣,通過參數(shù)建模和物理方法等多種途徑對水體進行模擬。但受計算機硬件設(shè)備的限制,水體仿真在真實性和實時性之間依舊存在矛盾,魚和熊掌不可兼得,這就需要在真實性和實時性之間找到一個平衡點。
虛擬現(xiàn)實技術(shù)是由計算機生成一種由三維數(shù)字模型構(gòu)成的現(xiàn)實中存在或不存在的場景模型,并導入到虛擬現(xiàn)實軟件中,生成一種可全角度觀看的、以視覺為主、聽覺觸覺為輔的虛擬環(huán)境,使人產(chǎn)生一種心理上的真實感,并且可以通過自然的方式直接作用于這個虛擬環(huán)境中的所有物體,給人一種沉浸式的感受[1]。
虛擬現(xiàn)實技術(shù)的實時三維空間表現(xiàn)功能、人機交互功能,為人們提供了一個可以隨時隨地進行體驗和模擬訓練的平臺,首先在軍事和航天領(lǐng)域的模擬培訓中起到舉足輕重的作用。近年來,隨著虛擬現(xiàn)實技術(shù)的不斷完善和計算機技術(shù)的突飛猛進,人們越來越意識到虛擬現(xiàn)實技術(shù)的重要性,并且在許多行業(yè)都得到了運用,顯示出廣闊的發(fā)展前景。
水體仿真是虛擬現(xiàn)實技術(shù)的一個重要研發(fā)方向。在虛擬現(xiàn)實場景中,為了增加場景的豐富度和真實感,往往需要添加大量的自然景觀。水體作為自然景觀的一種,它的靈動性可以大大提高虛擬場景的畫面感。水體的靈動性是其成為虛擬現(xiàn)實研發(fā)方向的原因,同時也是其研發(fā)的重點和難點。水體有江、河、湖、海、噴泉、瀑布等形式,這些景觀都具有流動、多變、不規(guī)則和復雜的特點,在現(xiàn)實生活中較為常見,但是要用計算機來模擬它們并達到逼真的效果卻非常難,因此水體仿真成為虛擬現(xiàn)實技術(shù)研發(fā)方向的一個重點和難點。
水體仿真的應(yīng)用領(lǐng)域可以大致分為4類:影視特效、三維游戲、可視化仿真、虛擬現(xiàn)實[2]。水體仿真技術(shù)在影視中用來表現(xiàn)海嘯、洪水等具有破壞性和危險性的災(zāi)難場面以及打造虛幻場景等,不僅確保了演員的人身安全、節(jié)省了大量拍攝費用和時間,而且可以為影視劇提供具有高度真實感的畫面,例如電影《指環(huán)王》中樹精抵抗洪水的鏡頭。三維游戲以趨于真實的場景吸引玩家,如《極品飛車》中的水體仿真效果,水體仿真技術(shù)在三維游戲中的運用帶給玩家身臨其境的感覺,使游戲更有趣味性。水體仿真在可視化仿真中用來將水利行業(yè)中科學計算得到的數(shù)據(jù)結(jié)果以模型的形式表現(xiàn)出來,例如洪水實時動態(tài)仿真、海浪風暴預報仿真等,可交互操控的動態(tài)仿真效果取代了呆板的二維表現(xiàn)形式。虛擬現(xiàn)實中水體仿真主要表現(xiàn)在虛擬旅游、景觀再現(xiàn)、軍事仿真訓練等方面,實時互動的水體仿真效果增強了虛擬環(huán)境的真實感和互動性,使虛擬現(xiàn)實得到更進一步的發(fā)展。
水體仿真的應(yīng)用領(lǐng)域?qū)Ψ抡嫘Ч男枨笫顾w仿真具有3個方面的特性:真實性、實時性和互動性[3]。真實性不僅指在形態(tài)上相似,在物體特征方面也要具有真實感,目前主要采用粒子系統(tǒng)和流體動力學等方式表現(xiàn)水體的形態(tài),用環(huán)境貼圖和光線跟蹤等渲染技術(shù)實現(xiàn)水體對光的折射、反射和焦散等效果。實時性方面采用GPU硬件加速和LOD等技術(shù)提高渲染速度,確保水體仿真的實時性?;有灾杆w與其他物體之間交互的動態(tài)效果,如船航行時激起的浪花、洪水沖擊建筑物等。真實性和實時性是水體仿真研發(fā)不斷追求的目標,但是這兩種特性對計算機硬件的要求非常高,在追求高實時性效果時往往以犧牲真實性為代價。
水體仿真建模方法受控于計算機軟硬件的發(fā)展,早期一般采用紋理貼圖和參數(shù)建模實現(xiàn)仿真效果,GPU技術(shù)的發(fā)展使得粒子系統(tǒng)、流體動力學等方法得到運用,水體仿真效果的真實性、實時性和互動性也逐漸增強[4]。目前常見的水體仿真表現(xiàn)方法有紋理貼圖、曲面參數(shù)、粒子系統(tǒng)、流體動力學和波形函數(shù)等方式[5]。隨著水體仿真要求的不斷提升,建模方法趨向多種方法融合,取長補短綜合處理,以實現(xiàn)更好的水體仿真效果。
本文以虛擬現(xiàn)實環(huán)境中的瀑布景觀為水體仿真實驗對象,以虛擬現(xiàn)實軟件Unity3D作為場景搭建平臺,以替代式建模方法作為構(gòu)建瀑布場景的主要方式,即用簡單模型結(jié)合紋理貼圖、粒子效果等形式替代復雜模型,在確保仿真效果的同時將復雜模型用最簡化的方式表現(xiàn)出來。并通過仿真效果的綜合對比,證實替代式建模方式的可行性和優(yōu)越性。
替代式的建模方式在瀑布仿真中的應(yīng)用主要表現(xiàn)在以材質(zhì)的形式結(jié)合粒子系統(tǒng)共同表現(xiàn)瀑布奔騰而下的效果。水在快速流動與巖石撞擊下會呈現(xiàn)出白色,如果單純的用粒子系統(tǒng)來表現(xiàn)需要龐大的粒子數(shù)量,替代式建模將瀑布圖片當作瀑布場景的背景,用少量粒子來營造運動效果,這樣不僅營造出了宏偉的瀑布效果,而且節(jié)省了硬件資源的消耗,使場景更具實時性。
計算機軟硬件參數(shù):
處理器:Pentium(R)Dual-Core 2.5GHz
顯卡:GT 220M
內(nèi)存:2GB
硬盤:100GB
操作系統(tǒng):Windows XP
軟件平臺:
虛擬現(xiàn)實軟件:Unity3D 4.0.0b8
輔助建模軟件:3ds Max
本文選用一個形態(tài)復雜的瀑布景點作為仿真研究對象,瀑布仿真的原型如圖1所示。
圖1 瀑布仿真原型資料Fig.1 Waterfall simulation prototype data
根據(jù)上圖所示,如果將該景點中的景物采用常見的三維建模方式表現(xiàn)出來,需要大量的模型編輯時間并且搭建出的場景至少需要上萬個面。模型越精細,面數(shù)相對越多,場景運行需要占用的硬件資源越多,場景的運行速度就會受到影響。本文采用替代式的建模方式,用簡單的面片替代景物模型,在確保仿真效果的同時減少對計算機硬件的占用。
將仿真對象原始資料處理為可以直接利用的瀑布模型材質(zhì),具體操作如下:使用圖片編輯團建將天空部分去除,將圖片垂直復制并放置在下方,添加模糊效果以模擬水的倒影,具體效果如圖2所示。
在Unity3D中創(chuàng)建一個平面,將處理過的瀑布原型材質(zhì)賦予平面。如仿真場景的瀑布不處于同一水平線上,可以通過3ds Max制作一個帶有彎曲效果的弧形面片,效果如圖3所示。
圖2 瀑布材質(zhì)效果Fig.2 Waterfall effect of material
圖3 瀑布背景曲面效果Fig.3 Waterfall background surface effect
粒子系統(tǒng)是由大量隨機分布的、運動的、具有生命周期和屬性的粒子聚集在一起模擬水體等模糊物體的總體形態(tài)和動態(tài)特征的系統(tǒng),可以很好的模擬模糊物體的隨機性和動態(tài)性等特征,在水體仿真方面相對其他仿真方式具有無法比擬的優(yōu)勢,常用來表現(xiàn)浪花、泡沫、瀑布、噴泉等水體[6]。Unity3D中自帶的粒子系統(tǒng)為場景的構(gòu)建提供了良好的平臺,通過控制發(fā)射模塊、形狀模塊、生命周期模塊、速度模塊、旋轉(zhuǎn)模塊、碰撞模塊等預設(shè)的粒子模塊,實現(xiàn)不同的粒子效果。
根據(jù)瀑布材質(zhì)的具體情況,創(chuàng)建粒子系統(tǒng)并將其擺放好位置,由于瀑布材質(zhì)的畫面中已經(jīng)存在瀑布流淌的內(nèi)容,所以只需要少量的粒子來呈現(xiàn)出瀑布的動態(tài)效果。
下面通過對比方式來證實替代式建模方式的優(yōu)勢:第一組采用替代式方式,第二組采用山體材質(zhì)作為瀑布背景,粒子數(shù)量與替代式方式使用粒子數(shù)量相同,第三組采用山體材質(zhì)作為瀑布背景,使用大量粒子以實現(xiàn)替代式方式的瀑布效果,三組對比效果如圖4所示。
圖示清晰的說明了帶有瀑布背景的第一組替代式建模方式使用少量的粒子即可達到良好的瀑布效果,而第二組中使用與第一組相同的粒子數(shù)值,實現(xiàn)的效果非常微弱,第三組使用的粒子數(shù)量達到了第一組數(shù)量的十倍,才能達到相似的效果,因此充分證明了使用替代式建模方式可以大量的減少所需粒子數(shù)值,減少對計算機硬件資源的需求,將大大提高場景運行的實時性,增加虛擬系統(tǒng)的流暢性,特別對于大型的虛擬場景,在確保仿真效果的同時減少了近十分之九的硬件消耗,這將為仿真系統(tǒng)開辟更大的發(fā)展空間。
圖4 3種建模方式效果及數(shù)值對比Fig.4 Three kinds of modeling effects comparison
隨著計算機軟硬件的發(fā)展,對水體仿真真實性、實時性、交互性的要求越來越高,水體仿真也從單一的建模方式朝著多方法融合的方向發(fā)展。本文提出替代式的建模方式,以最簡化的形式滿足水體仿真對真實性和實時性的需求,目的在于為水體仿真的建模方式提供一種新的思路。相信在不久的將來,經(jīng)過廣大研究人員的不懈努力,水體仿真會得到更好的發(fā)展。
[1]徐庚保,曾蓮芝.虛擬仿真[J].計算機仿真,2012,29(5):1-5.XUGeng-bao,ZENGLian-zhi.Virtual simulation[J].Computer Simulation,2012,29(5):1-5.
[2]方貴盛.水體虛擬仿真與應(yīng)用綜述[J].計算機仿真,2012,29(10):30-33.FANG Gui-sheng.Water virtual simulation and application summarize[J].Computer Simulation, 2012,29(10):30-33.
[3]Emmanuelle Darles,et al.A Survey of Ocean Simulation and rendering techniques in computer graphics[J].Computer Graphics Forum,2011,30(1):43-60.
[4]張亞旭.虛擬環(huán)境中瀑布的實時繪制方法研究 [D].濟南:山東大學,2007.
[5]廖健.三維地形及瀑布繪制技術(shù)研究[D].貴陽:貴州大學,2009.
[6]Toon Lenaerts,et al.Porous Flow in Particle-based Fluid Simulations[J].ACM Transactions on Graphics,2008,27(3):491-498.