基于流計(jì)算的大范圍動(dòng)態(tài)海浪實(shí)時(shí)渲染方法
【專利摘要】本發(fā)明公開了一種在流處理器上實(shí)現(xiàn)大范圍動(dòng)態(tài)海浪高效實(shí)時(shí)渲染的方法。包括基于LOD(LevelofDetail)技術(shù)的新型網(wǎng)格模型,基于Gerstner模型實(shí)現(xiàn)海浪的動(dòng)態(tài)模擬,一種凹凸紋理貼圖的方法對(duì)較遠(yuǎn)處的海浪渲染實(shí)現(xiàn)加速,并利用動(dòng)畫凹凸紋理改善海浪渲染效果。本發(fā)明的新穎之處在于通過立方體紋理實(shí)現(xiàn)了對(duì)天空、太陽的反射效果,運(yùn)用Phong光照模型實(shí)現(xiàn)了海浪的光照并實(shí)現(xiàn)了菲涅爾反射;采用動(dòng)畫紋理模擬了海浪中的泡沫,并實(shí)現(xiàn)了云在海面上投射的陰影等特殊效果。本方法可以在具有流處理器的計(jì)算機(jī)平臺(tái)上對(duì)百公里級(jí)范圍的海浪進(jìn)行實(shí)時(shí)交互渲染,具有速度快,仿真度高,平臺(tái)兼容性好的優(yōu)點(diǎn)。
【專利說明】基于流計(jì)算的大范圍動(dòng)態(tài)海浪實(shí)時(shí)渲染方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明與計(jì)算機(jī)圖形學(xué)有關(guān),隨著GPU技術(shù)的快速進(jìn)步,使得GPU的性能和可編程 能力得到大幅度提升,為圖形學(xué)的發(fā)展提供了重要的硬件平臺(tái),本發(fā)明涉及一種基于流計(jì) 算平臺(tái)GPU的大范圍動(dòng)態(tài)自然場景一海浪的實(shí)時(shí)渲染方法。
【背景技術(shù)】
[0002] 地球表面約70%的區(qū)域被海洋所覆蓋,相比較其它自然景物的仿真,海浪場景的 繪制在飛行仿真、水面艦船仿真應(yīng)用中顯得更為重要.針對(duì)海浪渲染的研究,所用的方法 歸結(jié)起來可以分為兩大類:基于物理模型的方法和基于構(gòu)造的方法,基于物理模型的方法 一般是從Navier-Stokes方程組著手,試圖通過求解該方程組來實(shí)現(xiàn)對(duì)海浪的模擬;基于 構(gòu)造的方法通過構(gòu)造網(wǎng)格或基于粒子的方式,對(duì)海浪進(jìn)行模擬?;谖锢砟P偷姆椒ǜm 合于流體傾倒、噴泉等小范圍、小規(guī)模的場景,或是用于電影、動(dòng)畫等不要求實(shí)時(shí)性的場合, 由于Navier-Stokes方程組的求解極為復(fù)雜,即便現(xiàn)代GPU的計(jì)算性能已達(dá)到TFL0PS量 級(jí),仍然無法通過這類方法交互實(shí)時(shí)地實(shí)現(xiàn)大范圍動(dòng)態(tài)海浪的渲染.在實(shí)時(shí)交互性應(yīng)用 中,在先方法[1](參見Fournier A, Reeves W T. A simple model of coean waves. ACM SIGGRAPH Computer Graphics, 1986, 20(4): 75-84; Peachey D R. Modeling waves and surf. ACM SIGGRAPH Computer Graphics, 1986,20(4): 65-74)基于幾何模型的方法是 常用的構(gòu)造方法,通過采用函數(shù)曲線等來模擬海浪的幾何形狀,該方法波形容易控制,速度 較快,其不足之處在于波形過于規(guī)則,真實(shí)感差,已經(jīng)難以滿足目前對(duì)海浪模擬真實(shí)性的要 求.在先方法[2](參見 Fr6chot J. Realistic simulation of ocean surface using wave spectra. Proceedings of the First International Conference on Computer Graphics Theory and Applications, Setubal: GRAPP, 2006: 76-83; Tessondorf J. Simulating ocean water. Computer Graphics Proceedings, Annual Conference Series,Los Angeles: ACM SIGGRAPH,2001,1-18;任鴻翔,尹勇,金一丞.大規(guī)模海 浪場景的真實(shí)感繪制.計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2008,20(12): 1617-1622)基于 統(tǒng)計(jì)和譜的方法依據(jù)海洋統(tǒng)計(jì)和海洋觀測的經(jīng)驗(yàn)?zāi)P?,采用多個(gè)正弦曲線或快速傅立葉變 換合成符合海浪譜分布的海浪。這類方法在現(xiàn)代GPU上也很容易實(shí)現(xiàn),從而為實(shí)現(xiàn)實(shí)時(shí)交 互提供了可能。
【發(fā)明內(nèi)容】
[0003] 現(xiàn)代流計(jì)算技術(shù)為基于GPU的海浪仿真提供了良好的平臺(tái)和巨大的靈活性。本發(fā) 明建立一種新的統(tǒng)計(jì)和譜的方法,利用GPU實(shí)現(xiàn)大范圍復(fù)雜場景下動(dòng)態(tài)海浪的實(shí)時(shí)渲染, 解決大范圍動(dòng)態(tài)海浪實(shí)時(shí)渲染方法的難題. 本發(fā)明的大范圍動(dòng)態(tài)海浪實(shí)時(shí)渲染方法首先利用一種新的基于技術(shù)的網(wǎng)格模 型來模擬海平面,在高等級(jí)上采用基于GPU的Gerstner模型直接計(jì)算海浪的高度并 計(jì)算其法向量,在低等級(jí)的上計(jì)算海浪的凹凸紋理圖;最后模擬海面的光照及一些特 殊效果,包括細(xì)碎海浪的模擬、海面對(duì)天空與太陽的反射效果、泡沫以及云層在海面上的陰 影等. 本發(fā)明的基本原理 一、 一種新的基于LOD同心圓網(wǎng)格模型,該模型借鑒射線同心圓網(wǎng)格模型和動(dòng)態(tài)、靜態(tài) 網(wǎng)格模型,在視點(diǎn)附近,采用兩級(jí)細(xì)分圓形網(wǎng)格構(gòu)成兩級(jí)LOD,網(wǎng)格中頂點(diǎn)的間距由模擬的 海況確定,兩級(jí)LOD以外的網(wǎng)格部分,采用同心圓網(wǎng)格,各同心圓半徑和第i個(gè)同心圓上第 j個(gè)網(wǎng)格頂點(diǎn)的坐標(biāo)(^幻的計(jì)算公式由公式(1)和(2)計(jì)算
【權(quán)利要求】
1. 一種在流處理器上實(shí)現(xiàn)大范圍動(dòng)態(tài)海浪高效實(shí)時(shí)渲染的方法,其特征在于所述方法 為: 一種新的基于LOD同心圓網(wǎng)格模型,該模型借鑒射線同心圓網(wǎng)格模型和動(dòng)態(tài)、靜態(tài)網(wǎng) 格模型,在視點(diǎn)附近,采用兩級(jí)細(xì)分圓形網(wǎng)格構(gòu)成兩級(jí)LOD,網(wǎng)格中頂點(diǎn)的間距由模擬的海 況確定,兩級(jí)LOD以外的網(wǎng)格部分,采用同心圓網(wǎng)格。
2. 各同心圓半徑和第i個(gè)同心圓上第j個(gè)網(wǎng)格頂點(diǎn)的坐標(biāo) 的計(jì)算公式由公式(1)和(2)計(jì)算
(1) (2) 式中,式為第i個(gè)同心圓的半徑,只胃為海平面的可見距離。
3. -種逐頂點(diǎn)計(jì)算與凹凸紋理貼圖相結(jié)合的方法模擬海浪,在細(xì)分圓形網(wǎng)格上采用逐 頂點(diǎn)計(jì)算,在同心圓網(wǎng)格上采用凹凸紋理貼圖法,設(shè)^時(shí)刻平面上一點(diǎn),海浪的運(yùn) 動(dòng)方程,三維空間中坐標(biāo)i 5及其副法線、切線和法線分別由公式(3) ~ (7)計(jì)算
式中,木為第?個(gè)波的波向量,4為振幅,A為頻率,與為相位。
4. 結(jié)合Fresnel反射與天空反射的海面光照計(jì)算,海平面對(duì)光線具有反射和折射兩種 作用,海平面的顏色主要是這兩作用的結(jié)果,對(duì)天空的反射通過環(huán)境立方體紋理的方式實(shí) 現(xiàn),對(duì)海平面以上的景物可以采用平面反射法實(shí)現(xiàn),將海平面以上的景物渲染成紋理,在 GPU中求取紋理投影坐標(biāo),從而實(shí)現(xiàn)反射效果,F(xiàn)resnel反射是海平面光照計(jì)算的重要組成 部分,海平面光照的反射率i?和折射率Γ滿足i? + T = l,反射率由公式(8)計(jì)算
(8) 折射主要是對(duì)海平面以下的景物進(jìn)行的,其實(shí)現(xiàn)方法與實(shí)現(xiàn)反射的方法類似。
5.海泡沫與云的陰影計(jì)算,Choppy波導(dǎo)致了海平面產(chǎn)生泡沫,泡沫主要出現(xiàn)在波峰附 近,對(duì)泡沫的模擬可以增加模擬的真實(shí)感,本發(fā)明采用動(dòng)畫泡沫紋理對(duì)其方法進(jìn)行了改進(jìn), 并可以交互實(shí)現(xiàn)泡沫的產(chǎn)生和消失,天空中的物體在太陽的照射下會(huì)在海平面投下陰影, 本發(fā)明通過陰影算法得到一張陰影紋理,對(duì)天空中的云生成的陰影進(jìn)行模擬。
【文檔編號(hào)】G06T15/00GK104143207SQ201310171982
【公開日】2014年11月12日 申請(qǐng)日期:2013年5月12日 優(yōu)先權(quán)日:2013年5月12日
【發(fā)明者】張澤旭, 王綱 申請(qǐng)人:哈爾濱點(diǎn)石仿真科技有限公司