專利名稱:一種基于2d網(wǎng)格的實(shí)時(shí)水波紋理處理方法
技術(shù)領(lǐng)域:
本發(fā)明屬于圖像處理領(lǐng)域,尤其涉及一種基于2D網(wǎng)格的實(shí)時(shí)水波紋理處理方法。
背景技術(shù):
水波圖像的模擬一直是計(jì)算機(jī)圖形學(xué)研究的熱點(diǎn),由于水面的物理原型十分復(fù)雜,實(shí)時(shí)地對其進(jìn)行精確描述相當(dāng)困難,因此研究者們一直在尋求真實(shí)感和復(fù)雜度之間的平衡點(diǎn),基于Navier-Stokes方程的水面模型,模型精確但求解復(fù)雜,不適合實(shí)時(shí)計(jì)算。也有人提出了線性生成海面網(wǎng)格的方法,采用逆FFT計(jì)算,求得一定數(shù)量的線性函數(shù)疊加描述波浪,該類方法追求統(tǒng)計(jì)學(xué)上的模擬,未考慮物理精確性,有待于與流體動(dòng)力學(xué)理論的結(jié)合;而在游戲等需要快速生成水體的場合,往往采用perlin噪聲等噪聲源的預(yù)計(jì)算生成水面,該方法可以生成視覺效果良好的水面,但無法結(jié)合物理計(jì)算。另外還提出了一種基于 GTO的實(shí)時(shí)生成和渲染水面的方法。該方法仍使用折射和反射紋理的方式。而不同的是,紋理生成后,水面合成及模擬步驟均在GPU片段程序中實(shí)現(xiàn)。由于目前開發(fā)板硬件只支持OpenES I. O接口,不能使用可編程顯卡的強(qiáng)大的流計(jì)算能力。鑒于以上的水波模擬算法雖然可以獲得一些模擬的真實(shí)效果,但是對于開發(fā)板處理速度慢,只支持Open ES I. O的瓶頸來說,復(fù)雜而計(jì)算量大的算法、使用GPU可編程顯卡都是無法在目前的智能電視等智能設(shè)備開發(fā)平臺上應(yīng)用,所以針對目前的硬件狀況,以上的算法均不適用于在智能電視等智能設(shè)備開發(fā)平臺上使用。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種基于2D網(wǎng)格的實(shí)時(shí)水波紋理處理方法,旨在解決在現(xiàn)有算法處理水面計(jì)算復(fù)雜,硬件要求高的問題。本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種基于2D網(wǎng)格的實(shí)時(shí)水波紋理處理方法,所述方法包括下述步驟根據(jù)顯示圖像的長寬比設(shè)置用于模擬水波紋理的網(wǎng)格,并對網(wǎng)格中的每個(gè)節(jié)點(diǎn)設(shè)置紋理坐標(biāo);
將水波的傳遞模擬為正弦波,并根據(jù)波動(dòng)方程
權(quán)利要求
1.一種基于2D網(wǎng)格的實(shí)時(shí)水波紋理處理方法,其特征在于,所述方法包括以下步驟 根據(jù)顯示圖像的長寬比設(shè)置用于模擬水波紋理的網(wǎng)格,并對網(wǎng)格中的每個(gè)節(jié)點(diǎn)設(shè)置紋理坐標(biāo);將水波的傳遞模擬為正弦波,并根據(jù)波動(dòng)方程
2.如權(quán)利要求I所述的方法,其特征在于,所述根據(jù)顯示圖像的長寬比設(shè)置用于模擬水波紋理的網(wǎng)格,并對網(wǎng)格中的每個(gè)節(jié)點(diǎn)設(shè)置紋理坐標(biāo)的步驟,具體為設(shè)置水波三維網(wǎng)格模型,所述網(wǎng)格模型根據(jù)顯示圖像長寬自適應(yīng)網(wǎng)格節(jié)點(diǎn)的X值、Y 值,并且網(wǎng)格節(jié)點(diǎn)Z值初始時(shí)為O ;根據(jù)所述網(wǎng)格模型設(shè)置顯示圖像的紋理坐標(biāo),所述紋理坐標(biāo)對應(yīng)三維網(wǎng)格模型的節(jié)點(diǎn)設(shè)置。
3.如權(quán)利要求I所述的方法,其特征在于,所述坐標(biāo)的增量的計(jì)算還包括,設(shè)置D/ (W*S*T)衰減系數(shù)對振幅增量進(jìn)行衰減的步驟,衰減計(jì)算的公式為An = AtfDV^W-S*!')], 其中An表示第N幀時(shí)水波的波峰、An-I表示第N-I幀時(shí)的波峰、D表示網(wǎng)格節(jié)點(diǎn)到水波中心的距離、W表示水波的波長、S表示水波在介質(zhì)中得傳播速度、T表示水波波動(dòng)的時(shí)間。
4.如權(quán)利要求2所述的方法,其特征在于,實(shí)時(shí)捕捉波幅最小節(jié)點(diǎn),對節(jié)點(diǎn)設(shè)置替換振幅為零的水波。
5.如權(quán)利要求I所述的方法,其特征在于,所述波動(dòng)平均法向量的計(jì)算,具體為 根據(jù)每個(gè)節(jié)點(diǎn)水波的坐標(biāo)值計(jì)算該節(jié)點(diǎn)的法向量;通過求平均值法計(jì)算網(wǎng)格中每個(gè)節(jié)點(diǎn)的波動(dòng)平均法向量。
6.如權(quán)利要求I所述的方法,所述根據(jù)所述的紋理坐標(biāo)的增量與波動(dòng)法向量實(shí)時(shí)渲染生成水波的波動(dòng),其特征在于根據(jù)方程Z(t0+t) = ZO (tO) + A Z實(shí)時(shí)更新水波質(zhì)點(diǎn)的高度場,所述的高度場表示為方程 Z(t) = X(x, y)。以所述的波動(dòng)平均法向量作為橋梁,將三維網(wǎng)格模型的節(jié)點(diǎn)波動(dòng)映射為顯示圖像的紋理坐標(biāo)的像素偏移。
7.如權(quán)利要求I至6任一項(xiàng)所述的方法,其特征在于,所述的根據(jù)所述的紋理坐標(biāo)的增量與波動(dòng)平均法向量實(shí)時(shí)渲染生成水波的波動(dòng)步驟,具體在于根據(jù)所述的波動(dòng)平均法向量與紋理坐標(biāo)的增量通過圖像渲染器生成二維坐標(biāo)系下像素的變化方向與幅度的調(diào)整。
8.如權(quán)利要求7所述的方法,其特征在于,所述計(jì)算水波到達(dá)網(wǎng)格的每個(gè)節(jié)點(diǎn)的高度值的方法具體為當(dāng)只有一條水波時(shí),按照波動(dòng)方程直接計(jì)算波幅值;或者,當(dāng)有多條水波時(shí),則將每條水波產(chǎn)生的波幅值進(jìn)行線性疊加。
9.如權(quán)利要求7所述的方法,其特征在于,所述的方法還包括,設(shè)置隨機(jī)的水波激蕩, 水波向四周傳遞,形成水波的疊加、反射、衰減、平靜步驟。
10.如權(quán)利要求7所述的方法,其特征在于,所述的方法還包括,設(shè)置用戶觸摸或者鼠標(biāo)激蕩水波,水波向四周傳遞,形成水波的疊加、反射、衰減、平靜步驟。
全文摘要
本發(fā)明適用于圖像處理領(lǐng)域,提供了一種基于2D網(wǎng)格的實(shí)時(shí)水波紋理處理方法,該方法包括下述步驟根據(jù)顯示圖像的長寬比設(shè)置用于模擬水波紋理的網(wǎng)格,并對網(wǎng)格中的每個(gè)節(jié)點(diǎn)設(shè)置紋理坐標(biāo);將水波的傳遞模擬為正弦波,并根據(jù)波動(dòng)方程計(jì)算水波到達(dá)網(wǎng)格的每個(gè)節(jié)點(diǎn)時(shí)的高度值;根據(jù)所述每個(gè)節(jié)點(diǎn)的高度值計(jì)算每個(gè)節(jié)點(diǎn)的紋理坐標(biāo)的增量與波動(dòng)平均法向量;根據(jù)所述的紋理坐標(biāo)的增量與波動(dòng)平均法向量實(shí)時(shí)渲染生成水波的波動(dòng)。本發(fā)明實(shí)施例,對網(wǎng)格的每個(gè)節(jié)點(diǎn)設(shè)置紋理坐標(biāo),通過節(jié)點(diǎn)的高度值計(jì)算紋理坐標(biāo)的增量,進(jìn)而模擬水波圖像,使得無需通過求導(dǎo)、求積分等復(fù)雜的算法,只需計(jì)算波動(dòng)方程即可模擬水波圖像,降低了對顯示設(shè)備硬件的需求。
文檔編號G06T11/40GK102592297SQ20111044788
公開日2012年7月18日 申請日期2011年12月27日 優(yōu)先權(quán)日2011年12月27日
發(fā)明者盧偉超, 張穎, 趙智寶 申請人:Tcl集團(tuán)股份有限公司