【正文】
............................. 29 參考文獻(xiàn) ..................................................................................................................................... 30 致 謝 ..................................................................................................................................... 33 1 摘 要 自然景物的模擬在視景仿真系統(tǒng)、計(jì)算機(jī)游戲、三維動(dòng)畫中等有著廣泛的運(yùn)用。 自然景物的模擬也一直是計(jì)算機(jī)圖形學(xué)中的熱門研究課題。然而,大多數(shù)自然景物的外形是隨機(jī)變化的,如:火焰、浪花、河流、瀑布、雨雪、煙霧等,很難用常規(guī)的建模方法及模擬技術(shù)來描述,因此自然景物的模擬也是具有挑戰(zhàn)性的課題。 本文 在認(rèn)真分析和總結(jié)目前國(guó)內(nèi)外噴泉模擬的基礎(chǔ)上,以 實(shí)時(shí)性和逼真性 為目標(biāo),提出 一種基于粒子系統(tǒng)的虛擬噴泉的模擬方法。 結(jié)合 OpenGL和 MFC編程,運(yùn)用 物理原理 模擬實(shí)現(xiàn)噴 泉粒子的運(yùn)動(dòng)軌跡時(shí) , 結(jié)合等加速運(yùn)動(dòng)來簡(jiǎn)化粒子運(yùn)動(dòng)狀態(tài),并 采用紋理融合技術(shù)實(shí)現(xiàn)對(duì) 粒子 的 繪制。 實(shí)驗(yàn)證明該方 法實(shí)現(xiàn)簡(jiǎn)單,模擬的噴泉效果滿足實(shí)時(shí)性和逼真性的要求。 關(guān)鍵詞: 粒子系統(tǒng);噴泉模擬;虛擬現(xiàn)實(shí); 0penGL 2 Abstract The natural scenery in visual simulation system is simulated, the puter games, 3d animation medium have extensive use of. The natural scenery of simulation has been puter hot research topic. However, most of the natural scenery have random change shape, such as flame, spray, rivers, waterfalls, snow, smoke, etc. It is difficult to use conventional modeling method and simulation technology to describe the natural scenery, so the simulation of natural scenery is a challenging task. Based on the analysis and summary fountain at home and abroad on the basis of simulation, realtime and lifelike, particle system was proposed. Combined with OpenGL and physical principle, using MFC programming simulation of particle trajectories fountain, bined acceleration motion to simplify particle movement, and the realization of particle texture fusion technology. Experiment results show that the method is simple, the fountain of simulation results meet requirement of realtime and lifelike. Key words: particle systems, Fountain simulation, Virtual reality, 0penGL 3 1 緒 論 計(jì)算機(jī)圖形學(xué) (Computer Graphics,簡(jiǎn)稱 CG)是一種使用數(shù)學(xué)算法將二維或三維圖形轉(zhuǎn)化為計(jì)算機(jī)顯示器柵格形式的科學(xué)。簡(jiǎn)單地說,計(jì)算機(jī)圖形學(xué)就是研究如何在計(jì)算機(jī)中表示圖形、利用計(jì)算機(jī)進(jìn)行圖形計(jì)算、處理和顯示的相關(guān)原理與算法。 1982年,國(guó)際標(biāo)準(zhǔn)化組織 IS0給出計(jì)算機(jī)圖形學(xué)的定義:研究用計(jì)算機(jī)進(jìn)行數(shù)據(jù)與圖形之間相互轉(zhuǎn)換的方法和技術(shù)。計(jì)算機(jī)圖形學(xué)是運(yùn)用計(jì)算機(jī) 產(chǎn)生、存儲(chǔ)、構(gòu)建物體模型的 一門 學(xué) 科 [1]。 近年來,諸如云彩、瀑布、雨、雪等不規(guī)則模糊物體的模擬越來越成為計(jì)算機(jī)圖形學(xué)中最具挑戰(zhàn)性的研究方向之一,它們的模擬在計(jì)算機(jī)游戲、影視、廣告、視景仿真等各種領(lǐng)域得到了越來越廣泛的應(yīng)用。具有不規(guī)則的幾何外形和內(nèi)在不確定性的不規(guī)則模糊物體,不能用通常的三維建模方法來制作,不同于靜態(tài)景物,它具有產(chǎn)生、發(fā)展和消滅的過程。粒子系統(tǒng) (particle system)是迄今為止模擬不規(guī)則模糊物體最為成功的一種圖形生成算法。 噴泉模擬過程是一種非常復(fù)雜的不規(guī)則模糊物體的模擬過程 , 本文 在運(yùn)用物理學(xué)原理模擬實(shí)現(xiàn)噴泉粒子的運(yùn)動(dòng)軌跡時(shí),結(jié)合等加速運(yùn)動(dòng)來簡(jiǎn)化粒子運(yùn)動(dòng)狀態(tài),并利用 OpenGL的紋理映射和 融合該技術(shù) 繪制粒子。結(jié)果表明等 加速運(yùn)動(dòng)方法使粒子運(yùn)動(dòng)路徑更加簡(jiǎn)單,可以獲得好的實(shí)時(shí)性,利用 融合渲染粒子的方法也使噴泉模擬效果滿足了虛擬現(xiàn)實(shí)、計(jì)算機(jī)仿真中真實(shí)感的要求 。 研究背景、 意義 虛擬現(xiàn)實(shí)技術(shù) 在當(dāng)今計(jì)算機(jī)信息科學(xué)領(lǐng)域中研究的熱門方向之一,虛擬場(chǎng)景是虛擬現(xiàn)實(shí)系統(tǒng)中重要的組成部分,在虛擬場(chǎng)景中模擬生活中的自然景物一直是計(jì)算機(jī)圖形學(xué)領(lǐng)域中研究的內(nèi)容。 隨著計(jì)算機(jī)科技的不斷發(fā)展進(jìn)步,計(jì)算機(jī)圖形學(xué)己 成為一個(gè)具有巨大潛力的新興產(chǎn)業(yè),對(duì)于人們的學(xué)習(xí)、生活以及學(xué)習(xí)領(lǐng)域都產(chǎn)生了重大的影響和推動(dòng)作用。尤其是圖形學(xué)領(lǐng)域中的計(jì)算機(jī)動(dòng)畫目前廣泛應(yīng)用于航空航天、影視廣告、行為模擬、裝演設(shè)計(jì)、虛擬場(chǎng)景等各種領(lǐng)域。可以預(yù)見,在未來的信息工業(yè)和產(chǎn)業(yè)中,計(jì)算機(jī)動(dòng)畫將更進(jìn)一步發(fā)揮巨大的作用,占據(jù)重要的地位。 近年來,對(duì)于自然景物的生成與模擬一直是計(jì)算機(jī)圖形學(xué)和動(dòng)畫研究中的熱門課題。其中的煙火爆炸、云霧閃電、瀑布浪花、飛沙塵埃、花草樹木等景物的模擬更具有挑戰(zhàn)性。這些自然景物因其形狀、形態(tài)隨時(shí)間的推移而動(dòng)態(tài)地、隨機(jī)地發(fā)生變化,很難用 常規(guī)的建模方法及模擬技術(shù)來生成。隨機(jī)模型是處理這類問題的一種先進(jìn)的方法,在隨機(jī)模型中首推 Fournier的分形算法和 Reeves的粒子系統(tǒng)方法 [2]。其中粒子系統(tǒng)方法具有良好的隨機(jī)性和動(dòng)態(tài)性,能逼真地模擬動(dòng)態(tài)景物。因此,研究利用粒子系統(tǒng)方法模擬自然景物,有著重要的科學(xué)意義和廣泛的應(yīng)用前景。 噴泉是這些景物中具有代表性的動(dòng)態(tài)景物,在風(fēng)景園林、學(xué)校、廣場(chǎng)、生活小區(qū)、公園等工作及休閑娛樂場(chǎng)所皆可看到各種不同的噴泉 [3]。因此,在虛擬風(fēng)景園林、虛擬校園、虛擬城市、虛擬公園等大的虛擬場(chǎng)景中,噴泉是一個(gè)風(fēng)景點(diǎn)。粒子系統(tǒng) 是最合適在虛擬場(chǎng)景中建立噴泉模型的選擇。 論文研究的意義在于 粒子系統(tǒng)方法在模擬不規(guī)則動(dòng)態(tài)自然景物的研究領(lǐng)域開 辟了很大的發(fā)展空間,自然景物的模擬是計(jì)算機(jī)圖形學(xué)理論研究與實(shí)際應(yīng)用的重點(diǎn)與難點(diǎn);在構(gòu)造這類復(fù)雜物體的幾何模型時(shí)需要大量的有效數(shù)據(jù),而且這些數(shù)據(jù)都是隨機(jī)性,計(jì)算量相當(dāng)大,如何以粒子系統(tǒng)基本算法來構(gòu)造復(fù)雜物體并逼真的對(duì)其進(jìn)行實(shí)時(shí)渲染是虛擬現(xiàn)實(shí)技術(shù)研究的新課題。 虛擬噴泉技術(shù)在房地產(chǎn)開發(fā)、建筑設(shè)計(jì)、影視制作、游戲設(shè)計(jì),風(fēng)景園林等方面具有非常廣闊的應(yīng)用前景。在虛擬場(chǎng)景中水的效果對(duì)增強(qiáng)場(chǎng)景真實(shí)感有十分重要的作用 ,其中噴泉效果是虛擬場(chǎng)景中常見的畫面,例如風(fēng)景園林的動(dòng)態(tài)噴泉水景,將計(jì)算機(jī)產(chǎn)生的許多奇妙噴泉水景圖像添加到虛擬漫游系統(tǒng)或影視作品中可以大大提高作品的觀賞效果。 虛擬噴泉的沉浸性、真實(shí)性以及實(shí)時(shí)性效果是傳統(tǒng)平面效果圖和動(dòng)畫播放所無(wú)法達(dá)到的,而應(yīng)用粒子系統(tǒng)實(shí)現(xiàn)噴泉的模擬具有較強(qiáng)的真實(shí)感,能達(dá)到人們對(duì)虛擬現(xiàn)實(shí)系統(tǒng)沉浸感的要求,使人能在虛擬場(chǎng)景中有身臨其境的感覺,更具有實(shí)時(shí)性。因此虛擬噴泉技術(shù)在一定程度上會(huì)得到廣泛的應(yīng)用,利用粒子系統(tǒng)實(shí)現(xiàn)噴泉的三維效果在虛擬現(xiàn)實(shí)領(lǐng)域具有一定的研究意義。 4 國(guó)內(nèi)外研究現(xiàn)狀 在對(duì) 于仿真噴泉、瀑布、火焰、樹木、雨、雪、霧等這些生活中常見的自然景物過程中,由于這些景物具有不規(guī)則性,動(dòng)態(tài)性和隨機(jī)性,模擬起來十分的困難,同時(shí)也是虛擬場(chǎng)景中不可缺少的部分。而自然景物的模擬一直是虛擬現(xiàn)實(shí)領(lǐng)域的重要研究?jī)?nèi)容,如 何在虛擬場(chǎng)景中真實(shí)的再現(xiàn)生活中的自然景物是極具挑戰(zhàn)性的課題之一。 自然景物的模擬一般有兩種方法 [4]: 一種是基于物理建模技術(shù)的方法。 基于物理建模技術(shù)的方法主要是通過對(duì) NavierStokes(納維埃一斯托克斯,簡(jiǎn)稱 N— S方程 )方程求解,求出流體過斷面時(shí)的平均流速 [5]。在基于物理的真實(shí)水 流模擬方面, Anderson[6]等人從工程需要出發(fā),基于 NavierStokes方程準(zhǔn)確描述了水流的形態(tài);而 Kass [7]等人則以動(dòng)畫中快速模擬為目標(biāo),通過簡(jiǎn)化 NavierStokes方程較好地模擬了水波: Foster [8]等人運(yùn)用 NavierStokes方程分別實(shí)現(xiàn)了液體、氣體、流體的模擬。我國(guó)的徐迎慶 [9]等人從水力學(xué)方程出發(fā),提出了一個(gè)基于物理模型的模擬流水和波浪的方法;陳前華 [10]等人基于物理建模方法與隱式曲面造型技術(shù),實(shí)現(xiàn)了滴水漣漪的模擬。這些方法的共同特點(diǎn)是要求解 NavierStokes方程,或者是簡(jiǎn)化后的 NavierStokes方程,但由于 NavicrStokes方程組是非線性方程組,很多情況下都難以精確地求出解析解,即使能求出其特解也往往因?yàn)榍蠼庥?jì)算量太大而難以達(dá)到實(shí)時(shí)的要求。 另一種是基于粒子系統(tǒng)的方法。自然景物與規(guī)則的幾何物體不同,它們的表面往往包含有豐富的細(xì)節(jié)或具有隨機(jī)變化的形狀,這些細(xì)節(jié)與隨機(jī)變化的形狀很難用傳統(tǒng)的解析曲面來描述。比如說對(duì)噴泉、水流、云、霧、煙、雪、火花等自然景物的模擬上,傳統(tǒng)的造型方法具有局限性,而粒子系統(tǒng)的出現(xiàn)卻較好的解決了這一難題。粒子系統(tǒng)能充 分體現(xiàn)模糊物體的動(dòng)態(tài)性和隨機(jī)性,能很好地模擬風(fēng)中飄搖的樹枝、天空中的流云、水面上的浪花、山中的薄霧、雨和雪花、園林中的噴泉等三維復(fù)雜自然景物。 粒子系統(tǒng)的優(yōu)點(diǎn)就是用簡(jiǎn)單的粒子圖元來構(gòu)造出傳統(tǒng)計(jì)算機(jī)圖形學(xué)難以構(gòu)造的復(fù)雜物體,而且具有很強(qiáng)的真實(shí)感和實(shí)時(shí)性,粒子系統(tǒng)在對(duì)自然景物的模擬方面得到了廣泛的應(yīng)用。 1992年 Loke[11]等人提出了應(yīng)用粒子系統(tǒng)繪制焰火的算法,采用鏈表數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)粒子,設(shè)計(jì)了粒子系統(tǒng)繪制引擎 (Particle System Rendering Engine),并用粒子衍生的方法表現(xiàn)焰火粒 子的軌跡實(shí)現(xiàn)了多種焰火的特殊效果。 從 1983年由 Reeves提出粒子系統(tǒng)訓(xùn)以來,許多的研究者對(duì)粒子系統(tǒng)進(jìn)行了研究與發(fā)展。 Reeves W. T用粒子系統(tǒng)模型模擬了火焰、爆炸等效果,他還成功模擬了電影《 Star Trek II: The warth of Khan》中行星被撞擊后所產(chǎn)生的爆炸及火焰等一系列特殊效果。 1955年 Reeves W. T和 Blau[12]發(fā)展了粒子系統(tǒng)他們用“ Vo1ume Filling”基本單元法生成隨時(shí)間改變形狀但又基本保持不變的實(shí)體,如隨風(fēng)飄動(dòng)的花草樹葉; Stam和 Flume[13]用“元球”來描述火焰等氣態(tài)現(xiàn)象,并給出了一種扭曲“元球”的算法,使模擬的氣態(tài)景物的外形更加不規(guī)則,從而更加真實(shí); Karl Sims[14]研究了粒子的動(dòng)畫及繪制算法,他利用粒子系統(tǒng)的并行特點(diǎn),提出了一個(gè)并行的粒子繪制系統(tǒng),該系統(tǒng)能繪制不同形狀、大小、顏色、透明度的粒子; wong[15]使用粒子系統(tǒng)實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的瀑布模型,在該模型中設(shè)置了瀑布下落過程中的障礙 (如巖石等 ); Fournier A[16]等在研究海浪模型中利用粒子系統(tǒng)模擬了浪花,并提出了浪花所產(chǎn)生的條件; Tengsee Loke[11]等人基 于粒子系統(tǒng),使用牛頓運(yùn)動(dòng)定律來描述煙火,對(duì)煙火的運(yùn)動(dòng)、顏色、形狀、亮度、尾跡等進(jìn)行仿真,取得了很好的效果。M. E. Goss[17]使 用粒子系統(tǒng)模擬了船行駛時(shí)產(chǎn)生的尾跡,主要是從外形上模擬船的尾跡。MatthiasUnbescheiden和 Andrzej Trembilski[18]運(yùn)用粒子系統(tǒng),從云的物理原理出發(fā),結(jié)合紋理映射技術(shù)建立了云的模型,其核心是采用具有紋理的多面體頂點(diǎn)集代替粒子群,該模型大大減少了粒子系統(tǒng)中粒子的數(shù)量,從而使粒子系統(tǒng)的實(shí)時(shí)仿真得以實(shí)現(xiàn)。 國(guó)內(nèi)對(duì)粒子系統(tǒng)的研究也開始深入 ,一些研究人員 利用粒子系統(tǒng)實(shí)現(xiàn)了火焰、煙、云、導(dǎo)彈尾氣等復(fù)雜景物的效果,如謝劍斌,郝建新 [19]等運(yùn)用粒子系統(tǒng)模擬了雨點(diǎn)和雪花的降落;彭群生和管宇 [20]實(shí)現(xiàn)了瀑布的模擬;張芹、吳慧中 [21]等模擬了火焰、煙等所具有的動(dòng)態(tài)性和隨機(jī)性;王潤(rùn)杰、田景全 [22]等人在分析粒子系統(tǒng)的基礎(chǔ)上,提出了模擬雨雪的實(shí)時(shí)算法;王靜秋 [23]等通過對(duì)焰火細(xì)節(jié)和特點(diǎn)的分析,給出了模擬焰火的數(shù)據(jù)結(jié)構(gòu),用粒子系統(tǒng)實(shí)現(xiàn)了焰火的動(dòng)態(tài)模擬,其 中主要介紹了 5 焰火的顏色、亮度、透明度、形狀、大小、尾跡和生命周期等特性及旋轉(zhuǎn)、星狀等特殊顯示效果的模擬。 在基于 粒子系統(tǒng)模擬噴泉上,國(guó)內(nèi)朱加勇,周波等 [24]設(shè)計(jì)了一個(gè)基于 VC++6. O和 OpenGL的噴泉模擬系統(tǒng),結(jié)合凹凸紋理映射技術(shù)對(duì)粒子進(jìn)入水池真實(shí)水波的產(chǎn)生、擴(kuò)散、衰減以及多個(gè)水波