2021-4-9 | 電子技術論文
作者:方貴盛 潘志庚 單位:浙江水利水電專科學校 杭州師范大學數字媒體與人機交互研究中心
影視動畫中大型水場景的制作影視特效中大型水場景,如洪水、海嘯等,如果要達到某種逼真的效果,在實際拍攝取景的過程中,往往需要經過多次拍攝才能完成。對于一些危險性、破壞性場面不僅拍攝起來困難,而且還可能會對演員造成一定的人身安全。另外有些虛構的場景也很難在現實世界中找到。如果能借助于計算機來生成具有高度真實感的虛擬場景,則可以為制作者節省大量的錢財,還可以保證人員的安全。在國內外的電影拍攝與制作過程中,如《海神號》、《水世界》、《水嘯霧都》、《泰坦尼克號》等,均采用了虛擬仿真技術實現水場景特效的建模與仿真。
虛擬現實場景中水體的制作為了增強虛擬環境的真實感,往往需要在虛擬環境中添加各種自然景象。而自然景象中一個重要的組成部分便是水體的制作,包括了江河湖海、瀑布、噴泉等,如軍事仿真訓練海戰場景中海洋仿真,河流整治效果虛擬展示、港口海岸工程與水利工程建設虛擬仿真、城市建設規劃中河流的設計等。這些水場景要求盡可能真實,同時滿足交互性、實時性要求。
3D游戲中水場景的制作電腦游戲要能吸引更多的玩家,一個趨于真實的自然景物場景制作非常關鍵,如逼真的江河湖海、溪流、水池、瀑布、噴泉等,可以讓玩家有種身臨其境的感覺。目前流行的一些游戲軟件中,都有一些逼真的水場景仿真,比較典型的有《勇闖水世界》中海天相接、波光粼粼的大海場景,逼真的水池仿真,《航海世紀》中壯觀的海洋、瀑布場景等。《極品飛車》中賽道兩邊流淌的小溪、一望無際的大海、交錯的河流、鱗次櫛比的城市以及飛奔而下的瀑布等。
數字流域的三維可視化仿真隨著各領域數字化進程的發展,水利行業正在逐步開展數字化流域三維可視化研究,推動數字流域建設的發展。流域三維可視化仿真研究是構建數字流域可視化信息平臺的基礎,其中三維可視化仿真系統的關鍵環節是流域中水虛擬場景的仿真,包括了洪水演進實時動態仿真、海浪風暴潮預報仿真、涌潮實時仿真、潰壩波仿真等。三維可視化仿真的主要目的在于利用計算機圖形學和圖像處理技術將科學計算得到的數據和仿真結果轉換為三維模型,并能實現動態仿真和交互控制,以彌補原先數值仿真中所采用的二維表現形式直觀性不強、表現力不足、交互性差的缺點。
各種水現象的虛擬仿真
1海浪仿真海浪作為生活中最常見的自然現象之一,其仿真結果可廣泛應用于電腦游戲、電影電視、虛擬海戰環境、海港與堤岸工程建設等領域中,成為了水體虛擬仿真的主要研究熱點。海浪作為一個時刻變化的復雜環境,它的產生、傳播、消失與風場、氣候、潮汐、水下地形等因素息息相關。海浪從外觀上看是雜亂無章的,總體上表現為海面連續變化的紊亂的波峰和波谷,波形極不規則,其波高、波長、周期等物理量均為隨機量,傳播方向也變化不定,而且海浪的范圍非常廣闊,因此海浪的仿真十分困難。隨著計算機軟硬件技術的發展,其研究的重點從最初研究靜態海浪高度場的生成,動態海浪網格的構建,到現如今研究海浪特效的生成技術等,總體上可分為三類:一類是深海區域海浪的仿真,側重于大面積海域的構建,以及海浪在風作用下無規則涌動、以及波浪翻滾的效果。這方面研究代表性的有DamienHinsinger等人[3]仿真的逼真的深海區海浪,ViorelMihalef[4]仿真的風暴潮作用下的波浪翻滾效果;第二類是近岸海浪的虛擬仿真,側重于仿真海浪與潮灘或堤岸交互后產生的浪花及波浪破碎效果,以及海面與堤岸建筑物相互映射的視覺效果等,代表性的有Peachey[5]等人仿真的近岸海浪沿海灘地形變化所產生的反射、折射現象以及浪花、泡沫等效果;QiangWang等人[6]仿真出海浪沖擊碼頭和沖上海灘形成破碎波的效果。第三類主要研究海水在船的作用下形成的海浪效果,如曾芬芳等人[7]仿真出隨機海浪,以及艦船航行中的浪花,如艏浪、艉浪等,從而為海戰場視景圖生成創建了一個較為逼真的海洋虛擬場景。從波浪的構造技術來看,對于深海區相對比較平靜的海浪大多采用基于波浪譜或基于Perlin噪聲函數的方法,通過構建海面高度場來實現。而對于波濤翻滾的海浪和近岸海浪,一般通過構造特殊的波浪函數,如基于Gerstner波的方法或通過匹配適當的二維破碎波浪庫來實現。對于波浪的破碎部分和浪花的仿真,則采用基于粒子系統的方法,通過改變浪尖處粒子的位置、速度、顏色來實現。對于船形波,一般先利用開爾文波理論構建出船行波模型,然后采用粒子系統技術構造出船行波的浪花。
2河流湖泊的仿真河流湖泊是數字流域的主要研究內容,同時也是虛擬現實、計算機游戲場景的重要組成部分,因此其研究受到了較大的關注。相對于海洋來講,河流湖泊屬于中等尺度的流體,其研究重點主要關注的是兩個方面的內容:一是仿真河水的動態流動效果;二是仿真水流與障礙物的交互碰撞效果等。這方面研究比較典型的有PeterKipfer等人[8]仿真的河流中水繞過巖石障礙物流入水池的仿真效果。QizhiYu[9]則實現了大范圍流域內河流的三維可視化仿真技術,從近處觀察可見河面的波紋與漣漪,并仿真了河水分叉及繞開障礙物進行流動的效果。另外程甜甜[10]針對太湖水域進行了研究,仿真出太湖湖面連續動蕩變化的效果,以及小面積水域內(如水塘)雨滴落入水面后,水面波動的效果。FabriceNeyret[11]仿真了小溪在流動過程中產生的振蕩波和漣漪效果等。流動的河水仿真一般采用網格高度場的方法或基于物理的方法來實現。網格高度場的方法把河水看作是一個由大量水粒子構成的網格,每個水粒子沿一定的速度和方向平穩推進,便可仿真出水流的動態效果。基于物理的方法則通過求解二維淺水波方程,得到水流的速度場,在進而得到水域各處的壓強,把壓強大小伸縮后當作第三維的數據,即當作水表面高度后,逼真地仿真物體在水域里移動時產生的波紋或漩渦。湖泊的仿真類似于較為平靜的海面波浪的仿真,大多采用波浪譜方法或構造Perlin噪聲函數來實現。
3水波的仿真當物體落入水池中,會產生水波。水波以擾動點為中心,并向四周傳播;由于水存在的一定的阻尼作用,水波在傳播過程中能量會逐漸的衰減,直至最后消失。水波的仿真為平靜的水面賦予了生機,增加了虛擬現實的真實感。當傳播中的水波碰到池壁反彈后會產生干涉與疊加效果,另外如果碰到小的障礙物后會產生繞射效果,增加了仿真的難度。從水波的傳播效果來看,水波仿真包括了深水波和淺水波兩個部分。在深水區域,水波可以自由地進行傳播,而不用考慮地形和海岸線對波形的影響。在淺水區域,則需要考慮波的反射、折射、干涉、疊加等各種現象。從引起水波的介質來看,則主要有雨點波、船行波和落物波等。雨點波產生的波紋小,但密集、波與波之間會產生干涉等現象,如楊懷平等人[12]在水池中仿真雨點波、反射波、紊亂波以及水花效果等。陳前華等人[13]仿真了近距離觀察雨點或水龍頭的水滴掉入水池后產生漣漪的場景。在水波仿真過程中同時考慮了水波的疊加、反射、繞射,以及壩缺口處的穿越效果。落物波是當物體落入水中所產生的波形,同時伴隨著水花的產生,如NilsThuerey等人[14]仿真出物體落入水面后濺起的水花產生到消亡及引起的水波傳播效果。船形波是船在水上航行時產生的一種特殊水面波動效果,隨船的運行軌跡變化而變化。如CemYuksel等人[15]仿真出船行駛過程中產生的破碎波效果。相對于海浪來說,水波的波紋一般較小,屬于小振幅波,而且其影響范圍也相對較小,因此其構建一般采用小振幅波理論,通過鄰域傳播思想來構建。還有一種方法是通過求解二維淺水方程來實現,通過水流方程控制水波的傳播效果。