王太偉1 張?zhí)煜? 張尚弘2
(1.交通運(yùn)輸部水運(yùn)科學(xué)研究院,北京 100088;2.華北電力大學(xué)可再生能源學(xué)院,北京 102206)
水體視覺(jué)效果模擬與實(shí)現(xiàn)
王太偉1 張?zhí)煜? 張尚弘2
(1.交通運(yùn)輸部水運(yùn)科學(xué)研究院,北京 100088;2.華北電力大學(xué)可再生能源學(xué)院,北京 102206)
本文簡(jiǎn)要描述基于波形函數(shù)變形、法線紋理貼圖2種水體視覺(jué)模擬技術(shù),并基于Tiled Directional Flow的算法實(shí)現(xiàn)河流水體視覺(jué)模擬,基于波形疊加的方法實(shí)現(xiàn)海洋水體視覺(jué)模擬,結(jié)合GPU渲染管線實(shí)現(xiàn)組合條件繪制,最后比較2種不同模擬技術(shù)所適用模擬的情景。本文所采用的水體視覺(jué)模擬技術(shù)及實(shí)現(xiàn)方法對(duì)于研究水體視覺(jué)模擬有一定助益,水體視覺(jué)模擬效果良好。
波形函數(shù)變形;法線紋理貼圖;視覺(jué)效果模擬
海洋、河流、湖泊等水體的真實(shí)狀態(tài)模擬在可視化系統(tǒng)中是十分常見(jiàn)的,有別于上述的科學(xué)可視化方法,此類(lèi)水流可視化偏重于水流的真實(shí)視覺(jué)效果,對(duì)其具體的水深、流速分布等科學(xué)數(shù)據(jù)不做深究。介于科學(xué)可視化所需的計(jì)算量龐大,而且普通模擬無(wú)法滿(mǎn)足水流三維視覺(jué)的需要。因此,此類(lèi)水流可視化通常采用簡(jiǎn)化的數(shù)學(xué)方法模擬水流形態(tài),外加計(jì)算機(jī)特效實(shí)現(xiàn)視覺(jué)上的真實(shí)感。常用的水體視覺(jué)模擬技術(shù)有波形函數(shù)變換與法線紋理貼圖[1]。
波形函數(shù)變換是直接實(shí)時(shí)改變水體表面的頂點(diǎn),模擬水面的波動(dòng)狀態(tài)。常見(jiàn)的做法有波形疊加、波動(dòng)方程、預(yù)渲染流場(chǎng)紋理等。波形疊加是疊加不同的隨機(jī)周期函數(shù)構(gòu)成水體表面,多用來(lái)表現(xiàn)波濤起伏海面。使用波動(dòng)方程或者近似公式來(lái)表現(xiàn)局部的水波,多用于表現(xiàn)物體與水面互動(dòng)產(chǎn)生的漣漪。預(yù)渲染流場(chǎng)紋理是將復(fù)雜運(yùn)動(dòng)的數(shù)據(jù)預(yù)先渲染到紋理上,多用于模擬渦流等難于實(shí)時(shí)計(jì)算的非線性運(yùn)動(dòng)。
法線紋理貼圖是通過(guò)改變水體表面的法線,實(shí)現(xiàn)對(duì)水體波動(dòng)的模擬。換個(gè)角度說(shuō),法線紋理貼圖不對(duì)水體表面的頂點(diǎn)做任何改動(dòng),其實(shí)現(xiàn)的效果只是一個(gè)假象。如果剖開(kāi)水體進(jìn)行觀察,不會(huì)看到任何的波動(dòng)變化。在近距離觀察時(shí),常常會(huì)存在失真的情況。但是,相對(duì)地,法線紋理貼圖僅僅會(huì)動(dòng)態(tài)改變水體的光照狀態(tài),可以很大程度上節(jié)省系統(tǒng)的性能。特別是對(duì)于大尺度水體的表現(xiàn),水體視覺(jué)模擬的性能(即水體波動(dòng)動(dòng)畫(huà)的流暢程度)遠(yuǎn)遠(yuǎn)比其圖像質(zhì)量重要,使用法線紋理貼圖會(huì)是一個(gè)更好的選擇。
2.1 河流水體視覺(jué)模擬
當(dāng)前很多流域模擬系統(tǒng)都采用地形模型為用戶(hù)提供大規(guī)模的虛擬環(huán)境,對(duì)水體流動(dòng)的表現(xiàn)會(huì)極大地增強(qiáng)整個(gè)虛擬環(huán)境的真實(shí)感。由于缺少準(zhǔn)確的河流流速數(shù)據(jù),大部分的流域模擬系統(tǒng)對(duì)河流水體的模擬缺乏細(xì)節(jié)表現(xiàn),很少能表現(xiàn)河流的水流流速分布特征(流速大小,橫流、渦流等流態(tài)特征)和水流變化情況。本文將水動(dòng)力模型的計(jì)算結(jié)果與水體視覺(jué)模擬方法相結(jié)合,增強(qiáng)河道水流流態(tài)狀態(tài)的真實(shí)感。
對(duì)河流的水體視覺(jué)模擬,關(guān)鍵內(nèi)容有2個(gè)方面:一是河流水波起伏,二是河流流向。相對(duì)于流域模擬的尺度,水波是一種微小尺度上的變化情況。水波無(wú)法使用水動(dòng)力學(xué)模型進(jìn)行計(jì)算,一般是采用一些紋理動(dòng)畫(huà)或周期函數(shù)進(jìn)行表現(xiàn)。流向則由于其顯示的尺度較大,精度要求不高,因而直接使用水動(dòng)力計(jì)算的結(jié)果,用法線紋理貼圖的方法繪制水體流動(dòng)的特效。
本文采用了Tiled Directional Flow的算法[2-4],即通過(guò)著色器在河流表面劃分正方形網(wǎng)格,按照流向調(diào)整貼圖方向,進(jìn)而實(shí)現(xiàn)河流有向流動(dòng)的效果,過(guò)程如圖1所示。
圖1 Tiled Directional Flow處理過(guò)程
每個(gè)正方形網(wǎng)格瓦片都有4個(gè)頂點(diǎn),在4個(gè)頂點(diǎn)上都可以求出其流速的大小和方向。之后,根據(jù)這些頂點(diǎn)數(shù)據(jù),設(shè)置法線貼圖的方向和各坐標(biāo)軸方向的重復(fù)度,將法線紋理貼圖貼合在水體表面。最后,結(jié)合光照與視點(diǎn)位置,應(yīng)用Fresnel反射與折射模型,進(jìn)行水體的反射與折射計(jì)算,實(shí)現(xiàn)效果如圖2所示。
圖2 河流水體視覺(jué)模擬效果
2.2 海洋水體視覺(jué)模擬
海水波動(dòng)的起伏比較大,細(xì)節(jié)相對(duì)豐富,本文采用波形疊加的方法對(duì)海水的運(yùn)動(dòng)進(jìn)行模擬。波形疊加是將很多個(gè)不同周期、不同振幅的周期函數(shù)疊加在一起。但在水體視覺(jué)模擬中使用的基礎(chǔ)波形并不是正弦和余弦波,而是一種叫做Gerstner波的特殊波形。Gerstner波的誕生早于計(jì)算機(jī)圖形學(xué)(Computer Graphic,CG),最初在物理中用于水波的模擬。由于其形狀比較真實(shí),而且計(jì)算量不大,所以被廣泛用于計(jì)算機(jī)圖形學(xué)中水波的模擬[5]。Gerstner波以參數(shù)方程的形式給出:
式(1)中,自變量為p,參數(shù)Q、D、A用來(lái)控制形狀,Q控制波峰的尖銳度,D控制波長(zhǎng),A為振幅。
Gerstner波和余弦波的差別,如圖3所示。與紅色的余弦波相比Gerstner波在兩側(cè)有收緊的趨勢(shì),和真實(shí)海洋表面更加接近。
圖3 Gerstner波和余弦波示意圖
在繪制過(guò)程中,將很多個(gè)不同波長(zhǎng)、不同振幅的Ger?stner波疊加在一起,加上一些隨機(jī)值,建立海水的折射與反射的模型,就能得到這種看起來(lái)很復(fù)雜的海面效果[6]。平臺(tái)應(yīng)用Sundog公司的Triton插件,基于波形疊加的方法,實(shí)現(xiàn)了海水波動(dòng)的模擬效果,如圖4所示。
圖4 海水水體視覺(jué)模擬效果
2.3 組合條件繪制
水流上的標(biāo)量和矢量都可以通過(guò)顏色繪制在水流模型的表面。不同的可視化方案可以對(duì)不同的變量數(shù)值進(jìn)行圖形化。在不同的專(zhuān)業(yè)應(yīng)用中,需要在一些可視化方案中提取特定的區(qū)域進(jìn)一步強(qiáng)化顯示其內(nèi)部的信息。例如,在航運(yùn)應(yīng)用中,需要在水深等值面或流場(chǎng)紋理上提取水深、流速條件適合和禁止船舶航行的區(qū)域;在洪水淹沒(méi)應(yīng)用中,需要在模擬洪水的表面上提取水位高于一定閾值的區(qū)域,便于實(shí)現(xiàn)對(duì)洪水的警戒。
在具體的實(shí)現(xiàn)過(guò)程中,平臺(tái)應(yīng)用GPU渲染管線,繪制一個(gè)透明的面片覆蓋在任意一個(gè)可視化方案上。面片上會(huì)有一些顏色標(biāo)識(shí)用戶(hù)指定的區(qū)域。這樣將二者組合起來(lái),就可以實(shí)現(xiàn)區(qū)域條件繪制的效果,其具體步驟如下:①初始化網(wǎng)格,將所有水流數(shù)據(jù)加載到網(wǎng)格節(jié)點(diǎn)上,并輸入到GPU頂點(diǎn)著色器;②頂點(diǎn)著色器輸出中間變量,進(jìn)行光柵化操作,完成對(duì)各個(gè)變量的插值計(jì)算,輸出變量至片元著色器;③用戶(hù)通過(guò)圖形用戶(hù)界面,新建條件方案,輸入要求的組合條件,如“流速”>2.5AND“水深”>10;④在片元著色器中,將輸入的組合條件轉(zhuǎn)化為條件語(yǔ)句,提取指定區(qū)域。組合條件繪制效果如圖5所示,黃色區(qū)域即按照上述組合條件繪制的區(qū)域。
圖5 組合條件繪制效果
在平臺(tái)的應(yīng)用中,主要有2種場(chǎng)景會(huì)用到水體視覺(jué)模擬。一是河流模擬,即根據(jù)水動(dòng)力計(jì)算的結(jié)果,盡可能模擬水面的真實(shí)流動(dòng)狀態(tài);二是海水模擬,即模擬海水的波動(dòng)狀態(tài),給予用戶(hù)在虛擬環(huán)境的真實(shí)感。一般河流的波動(dòng)比較小,但如模擬大流域尺度河流,源數(shù)據(jù)規(guī)模比較大,平臺(tái)運(yùn)行的性能相對(duì)重要,所以采用的是法線紋理貼圖;與此相比,海水的波動(dòng)更大,平臺(tái)模擬海水更多的是為船舶航行模擬服務(wù),尺度較小,為了顯示的效果更加形象、逼真,所以采用的是波形函數(shù)變換。
[1]方貴盛,潘志庚.水體虛擬仿真與應(yīng)用綜述[J].計(jì)算機(jī)仿真,2012(10):30-33,361.
[2]Kipfer P,Westermann R.Realistic and interactive simula?tion of rivers[A]//Proceedings of Graphics Interface 2006,2006:41-48.
[3]蔣瑜,杜斌,盧軍,等.基于Delaunay三角網(wǎng)的等值線繪制算法[J].計(jì)算機(jī)應(yīng)用研究,2010(1):101-103.
[4]Varela JM,Soares CG.Interactive 3D desktop ship simula?tor for testing and training offloading manoeuvres[J].Applied Ocean Research,2015(51):367-380.
[5]Hinsinger D,Neyret F,Cani MP.Interactive animation of ocean waves[A]//Proceedings of the 2002 ACM SIGGRAPH/Euro?graphics symposium on Computer animation.ACM,2002:161-166.
[6]Bruneton E,Neyret F,Holzschuch N.Real-time Realis?tic Ocean Lighting using Seamless Transitions from Geometry to BRDF[J].Computer Graphics Forum.Blackwell Publishing Ltd,2010(2):487-496.
Simulation and Realization of Visual Effect of Water
Wang Taiwei1Zhang Tianxiang2Zhang Shanghong2
(1.Ministry of Transport,Water Transport Science Research Institute,Beijing 100088;2.School of Renewable Energy,North China Electric Power University,Beijing 102206)
This paper briefly described two visual modeling techniques based on waveform function deformation and normal texture mapping.Based on the Tiled Directional Flow algorithm,the visual simulation of river water body was realized.Based on the waveform superposition method,the visual simulation of marine water body was realized.Com?bined with GPU rendering pipeline,the combination of conditional rendering was achieved.Finally,the simulation scenarios of two different simulation techniques were compared.The visual simulation technology and the realization method of the water body used in this paper are helpful for the study of water visual simulation,and the simulation works well.
waveform function deformation;normal texture mapping;visual effect simulation
TP391
:A
:1003-5168(2017)03-0029-03
2017-02-19
王太偉(1987-),男,碩士,工程師,研究方向:交通運(yùn)輸信息化。