一種大規(guī)模真實(shí)感雪景實(shí)時(shí)渲染方法
【專利摘要】本發(fā)明公開了一種在流處理器上實(shí)現(xiàn)大規(guī)模真實(shí)感雪景實(shí)時(shí)渲染的方法。包括雪花模型及其在降雪過程中的運(yùn)動(dòng)模型,通過Perlin噪聲生成的隨機(jī)風(fēng)模型,積雪與融化模型。本發(fā)明的新穎之處在于將風(fēng)的運(yùn)動(dòng)速度分為平均風(fēng)速與隨機(jī)風(fēng)速,簡化了風(fēng)場的計(jì)算,并將隨機(jī)風(fēng)的計(jì)算結(jié)果存儲(chǔ)在3D紋理中,建立了基于GPU的粒子系統(tǒng),并對上述3D紋理加以應(yīng)用,從而減輕粒子系統(tǒng)的計(jì)算負(fù)荷,提高粒子系統(tǒng)的渲染效率。本方法以視覺效果的真實(shí)感和渲染效率為主要研究目標(biāo),具有速度快,仿真度高,平臺(tái)兼容性好的優(yōu)點(diǎn)。
【專利說明】一種大規(guī)模真實(shí)感雪景實(shí)時(shí)渲染方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明與計(jì)算機(jī)圖形學(xué)有關(guān),隨著流計(jì)算平臺(tái)GPU技術(shù)的快速進(jìn)步,為圖形 學(xué)的發(fā)展提供了重要的硬件平臺(tái),本發(fā)明涉及一種基于流計(jì)算平臺(tái)GPU的大規(guī)模真實(shí)感雪 景的實(shí)時(shí)渲染方法。
【背景技術(shù)】
[0002] 在計(jì)算機(jī)圖形學(xué)領(lǐng)域,自然景物的真實(shí)感實(shí)時(shí)渲染是一個(gè)重要的研究方向, 包括天空、水波、云、樹、草等自然景物是這類研究的重要對象。自然景物隨著四季與地理位 置的不同而各具特色,在較高緯度或高海拔地區(qū),雪景是最常見的自然景象。模擬雪景的變 化是非常具有挑戰(zhàn)性的研究課題,其主要原因是雪的累積與融化受風(fēng)、溫度、雪的厚度以及 其它環(huán)境因素如陽光直射或處于陰影中等諸多外界條件的影響較大.雪景的模擬可以分 為降雪、累積和融化三個(gè)方面。降雪過程的模擬一般采用基于粒子系統(tǒng)的方法,此外,采用 諸如IFFT (Inverse Fast Fourier Transform)和基于紋理技術(shù)等其它方法在模擬大規(guī)模 降雨、降雪方面也有一定的優(yōu)勢.在先方法[1](參見Langer M S, Zhang L, Klein A W, Bhatia A, Pereira J, Rekhi D. A spectral-particle hybrid method for rendering falling snow. Rendering Techniques 2004 Eurographics Symposium on Rendering. 2004: 217 - 226.)采用一種譜和粒子混合的研究方法來模擬降雪,隨著GPU技術(shù)的發(fā)展, 大規(guī)模粒子系統(tǒng)可以通過GPU實(shí)現(xiàn).同降雪過程的模擬相比,雪的累積和融化過程的模擬 更加復(fù)雜。依據(jù)場景中物體的幾何特性,基于過程或物理的方法建立了降雪和積雪模型,并 綜合考慮了風(fēng)的影響?,F(xiàn)有的降雪累積方法可以大致分為三大類:基于粒子系統(tǒng)的方法、 基于表面位移技術(shù)的方法和基于表面細(xì)分技術(shù)的方法。基于粒子系統(tǒng)的方法主要是計(jì)算 雪花被風(fēng)吹起后的運(yùn)動(dòng)及其在地面的堆積,較早的這類模型通過設(shè)置粒子的分布采用變形 球?qū)崿F(xiàn);一些對此方法的改進(jìn)主要是對雪花在風(fēng)作用下的運(yùn)動(dòng)方式的改進(jìn),這類改進(jìn)通過 求解風(fēng)的動(dòng)力學(xué)特性進(jìn)而得到了復(fù)雜的雪景效果,其方法則是通過求解Navier-Stokes方 程或Boltzmann方程。不同于粒子系統(tǒng)方法,基于表面位移的方法主要是通過計(jì)算局部區(qū) 域的可達(dá)性和遮掩性(Occlusion)求解積雪的厚度。表面細(xì)分技術(shù)則是通過將積雪的表 面進(jìn)行細(xì)分,從而使得積雪的表面更加平滑.在先方法[2] (FestenbergN, GumholdS. A geometric algorithm for snow distribution in virtual scenes. Proceedings of Eurographics Workshop on Natural Phenomena 2009: 15 - 25.)米用一種高度跨越映射 (Height span maps)的方法,用于實(shí)現(xiàn)顆粒材質(zhì)如沙等的模擬,已被證明是一種高效的積 雪模型.不同于在先方法[1,2],本發(fā)明重點(diǎn)是實(shí)現(xiàn)一種實(shí)時(shí)渲染大規(guī)模雪景的方法,并 不考慮其物理的真實(shí)性,而以視覺效果的真實(shí)感和渲染效率為主要研究目標(biāo)。
【發(fā)明內(nèi)容】
[0003] 現(xiàn)代流計(jì)算技術(shù)為基于GPU的大規(guī)模真實(shí)感體積云實(shí)時(shí)渲染提供了良好的平臺(tái) 和巨大的靈活性。本發(fā)明建立一種在流處理器上實(shí)現(xiàn)大規(guī)模真實(shí)感雪景實(shí)時(shí)渲染的方法, 解決視覺效果的真實(shí)感和渲染效率之間相互制約的問題.本發(fā)明的大規(guī)模真實(shí)感雪景實(shí) 時(shí)渲染的方法首先建立雪花模型及其在降雪過程中的運(yùn)動(dòng)模型;其次將風(fēng)的運(yùn)動(dòng)速度分為 平均風(fēng)速與隨機(jī)風(fēng)速,簡化了風(fēng)場的計(jì)算,通過Perlin噪聲生成了隨機(jī)風(fēng),并將計(jì)算結(jié)果 存儲(chǔ)在3D紋理中,從而減輕粒子系統(tǒng)的計(jì)算負(fù)荷;第三,建立積雪與融化模型,實(shí)現(xiàn)雪的積 累和融化的|吳擬;最后建立基于GPU的粒子系統(tǒng),提1?粒子系統(tǒng)的?宣染效率. 本發(fā)明的基本原理如下: 一、 雪花的運(yùn)動(dòng)模型.雪花在從開始形成直至其降落到地面形成降雪的整個(gè)過程中, 一直受到四種力的作用:浮力、重力、升力以及阻力,浮力與重力方向相反,兩者皆為常量, 升力與阻力則隨著風(fēng)向的變化而變化,浮力與雪花所排開的相同體積大氣的重量相等,重 力則是雪花所受到的地球引力的大小,由于雪花所受到的浮力與其重力相比非常小,對于 雪花的運(yùn)動(dòng)影響不大,可以忽略不計(jì),雪花受到的力可由公式(1)計(jì)算
【權(quán)利要求】
1. 一種在流處理器上實(shí)現(xiàn)大規(guī)模真實(shí)感雪景實(shí)時(shí)渲染的方法,其特征在于所述方法 為: 雪花的運(yùn)動(dòng)模型,雪花在從開始形成直至其降落到地面形成降雪的整個(gè)過程中, 一直受到四種力的作用:浮力、重力、升力以及阻力,浮力與重力方向相反,兩者皆為常量, 升力與阻力則隨著風(fēng)向的變化而變化,浮力與雪花所排開的相同體積大氣的重量相等,重 力則是雪花所受到的地球引力的大小,由于雪花所受到的浮力與其重力相比非常小,對于 雪花的運(yùn)動(dòng)影響不大,可以忽略不計(jì),雪花受到的力可由公式(1)計(jì)算
(1) 式中,A為浮力,G為重力,6為升力,&為阻力,W為雪花的質(zhì)量,g為重力加速度。
2. 升力巧是使雪花在下落過程中沿著不規(guī)則環(huán)形路徑運(yùn)動(dòng)并不斷繞質(zhì)心旋轉(zhuǎn)的主要 原因,這主要是由于雪花不規(guī)則的空氣動(dòng)力學(xué)外形及其在下落過程中形成的紊流引起的, 阻力巧主要是雪花在運(yùn)動(dòng)過程中受到的空氣作用力,同時(shí)也是雪花能夠沿著風(fēng)的運(yùn)動(dòng)方 向運(yùn)動(dòng)的重要原因。
3. 阻力的大小可以通過公式(2)求得
(2) 式中,&為由雪花引起的空氣運(yùn)動(dòng)速度,其方向與A的方向相同,為考慮風(fēng)阻時(shí) 的最大垂直速度,對于干雪,e[0.5亂k1. 5亂/s],對于濕雪,^?χ 概/s]。
4. &是由兩種因素引起的變量:風(fēng)以及雪花與空氣的摩擦,后者導(dǎo)致雪花隨著風(fēng)的運(yùn) 動(dòng) WK (3) 式中,--為風(fēng)速,G為雪花的運(yùn)動(dòng)速度。
5. 風(fēng)場的計(jì)算模型.由于風(fēng)的運(yùn)動(dòng)所特有的復(fù)雜性,因此風(fēng)場中某一點(diǎn)處的風(fēng)速并 不是一成不變的,對于風(fēng)場中任一點(diǎn)在某個(gè)給定的時(shí)刻,風(fēng)速的大小或方向與該點(diǎn)在下一 時(shí)刻是不同的,因而可以假定風(fēng)速^是由平均風(fēng)速和隨機(jī)風(fēng)速兩部分組成的,即
(4) 式中,匕為平均風(fēng)速,G隨機(jī)風(fēng)速。
6. 本發(fā)明重點(diǎn)研究了隨機(jī)風(fēng)速& ,對于給定的平均風(fēng)速匕,可以通過公式(5)得 到^
(5) 式中,#為一個(gè)與風(fēng)速大小相關(guān)的隨機(jī)比例系數(shù),一般可取為不大于平均速度的模 I匕I的3%-5% ; α為隨機(jī)初始相位角,盡管隨機(jī)風(fēng)速是由于風(fēng)形成的紊流產(chǎn)生的,但其仍然 在時(shí)間和空間上是連續(xù)的,因而初始相位角《也必須是連續(xù)的,Perlin噪聲作為一種連續(xù) 噪聲,可以作為產(chǎn)生初始相位角的隨機(jī)函數(shù),由于風(fēng)速一般是按水平方向給出,其垂直分量 依然可以通過Perlin噪聲產(chǎn)生,可以將預(yù)先計(jì)算出的sin S值以及垂直風(fēng)速一并存儲(chǔ)進(jìn)一 張3D紋理中,作為三維風(fēng)場中隨機(jī)風(fēng)的模型,在后續(xù)的計(jì)算中使用。
7. 本發(fā)明采用基于觀測以及經(jīng)驗(yàn)數(shù)據(jù)的方法,實(shí)現(xiàn)雪的累積和融化,在雪的累積計(jì)算 中,積雪的厚度可通過公式(6)計(jì)算 D = CCL>it (6) 式中,Q為降雪的速度(mm/ day,毫米/天),|為降雪過程的時(shí)間(day,天)。
8. 在雪的融化計(jì)算中,雪的融化速度(mm/day,毫米/天)由公式(7)計(jì)算 Μ = '--^-Τμ).+Μ (7) 式中,為雪的融化率系數(shù)(mm/t: day,毫米/攝氏度天),為大氣溫度(°C ),?;為 使雪融化的溫度門限值(°C),一般為0°C,:為融雪過程的時(shí)間(day,天),Q與植被遮擋、 雪的反照率、太陽的輻射等有關(guān),由公式(8)計(jì)算 (8) 式中,4為比例常量,< 為植被遮擋引起的太陽輻射傳遞系數(shù),足為太陽的輻照度因 子,4為雪的反照率,由公式(9)計(jì)算
(9) 式中,?0.2/?^ν,為時(shí)間常量。
9. 而< 由公式(10)計(jì)算
(10) 式中,為植物遮擋的密度。
【文檔編號(hào)】G06T15/00GK104143208SQ201310172058
【公開日】2014年11月12日 申請日期:2013年5月12日 優(yōu)先權(quán)日:2013年5月12日
【發(fā)明者】張澤旭, 王綱 申請人:哈爾濱點(diǎn)石仿真科技有限公司