青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

蕙麓

Email:oxionghui@gmail.com

  C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 ::  :: 管理 ::

文章來自:http://www.c-cnc.com/dz/news/news.asp?id=18622
在進(jìn)行3D場景渲染時(shí),天空是必不可少的因素。對于3D天空的模擬在視景仿真系統(tǒng)、計(jì)算機(jī)游戲、三維動(dòng)畫中有著廣泛的應(yīng)用。但是,目前對于天空的仿真還存在很多不足,一些模擬方法中存在實(shí)現(xiàn)復(fù)雜、計(jì)算耗時(shí)、圖像分辨力不高,真實(shí)感不強(qiáng)且只能生成靜態(tài)圖像等問題。本文在研究了前人仿真天空算法的基礎(chǔ)上,利用目前3D圖形行業(yè)中流行的OpenGL技術(shù)和有被譽(yù)為"大自然的幾何學(xué)"美稱的分形理論,提出了一種更加簡單實(shí)用的仿真3D天空的方法,可以仿真出具有動(dòng)態(tài)效果和不同天氣的3D天空,繪制速度快,真實(shí)感強(qiáng)。

l構(gòu)造天空模型

1.1 OpenGL技術(shù)[1.2]

OpenGL作為一套圖形標(biāo)準(zhǔn),由數(shù)百個(gè)功能函數(shù)組成,提供了訪問圖形硬件的所有特性,其嚴(yán)格按照計(jì)算機(jī)圖形學(xué)原理設(shè)計(jì)而成,符合光學(xué)和視覺的原理,非常適合可視化仿真系。其優(yōu)勢在于:首先,在OpenGL中,允許視景對象用圖形方式表達(dá);其次,OpenGL通過光照處理能表達(dá)出物體的三維特性,其光照模型是整體光照模型。可視化仿真圖像的顏色體現(xiàn)著物體與視點(diǎn)以及光源之間的空間位置關(guān)系,具有很強(qiáng)的三維效果。此外,為彌補(bǔ)圖形方法難于生成復(fù)雜自然背景的不足,OpenGL提供了對圖像數(shù)據(jù)的使用方法,即直接對圖像數(shù)據(jù)讀、寫和拷貝,或者把圖像數(shù)據(jù)定義為紋理與圖形方法結(jié)合在一起生成視景圖像以增強(qiáng)效果。本文研究了基于OpenGL技術(shù)的3D天空仿真,使得算法易于實(shí)現(xiàn),并且有很好的可視化效果。

1.2 傳統(tǒng)模型

在傳統(tǒng)的3D游戲中,對于天空的仿真,程序員往往從實(shí)時(shí)簡單的角度出發(fā),采用非常簡化的天空模型,通常包括以下3種方法[3-5]:用一種接近天空的淡藍(lán)色來清除背景;采用天空盒(skyBox)的方法:即首先繪制一個(gè)多邊形,然后進(jìn)行立方體紋理貼圖;八棱錐天空模型:定義一個(gè)天頂,以這個(gè)頂點(diǎn)為中心繪制一圈三角形扇,然后進(jìn)行紋理映射。

這3種方法都具備了實(shí)時(shí)性,方法簡單的優(yōu)點(diǎn),但同時(shí)也存在明顯的不足,第一種方法繪制的天空效果看起來太平面化,簡單粗糙,逼近度不高。第二種方法對紋理的要求非常高,如果紋理使用得不好,在一個(gè)比較大的多邊形上的紋理就容易產(chǎn)生拉伸變形的副作用。此外,霧化設(shè)置也會產(chǎn)生問題,如果霧的設(shè)置靠近觀察點(diǎn),則天空的顏色會變淡甚至沒有。第三種方法有明顯的天頂。

顯然,在如今這種對3D場景仿真要求越來越高的時(shí)代,這些方法已經(jīng)不適應(yīng)時(shí)代的要求,需要尋求一種渲染速度快,真實(shí)感強(qiáng),有一定交互能力的3D天空模型。

1.3 半球型天空模型

地球是球型的,所以天空像半個(gè)球一樣籠罩在大地之上。在用計(jì)算機(jī)仿真3D天空時(shí),半球型天空模型顯然符合真實(shí)世界的天空模型。利用數(shù)學(xué)中的球面方程,可以建立如下模型:

P是球面上一點(diǎn),R為球的半徑。在球面坐標(biāo)系下方程改寫為:

對于一個(gè)半球.φ為緯度,其變化范圍是O≤φ≤90°;θ為經(jīng)度,其變化范圍是O≤θ≤360°。采用球型(DOme)的方法,比起采用盒子(BOx)的方法,有很多優(yōu)點(diǎn)。首先由于球形方法繪制的天空具有更多的頂點(diǎn),霧化效果可以繪制得更加均勻[5]。同時(shí)也可以實(shí)時(shí)改變單個(gè)頂點(diǎn)的顏色,這樣可以獲得一些非常好的效果,如一天不同時(shí)刻的太陽光。

半球型天空模型也存在不足:

(1)頂點(diǎn)數(shù)目過多,影響渲染速度。

N為所需要繪制的頂點(diǎn)總數(shù);△φ,△θ為繪制球型天頂?shù)捻旤c(diǎn)經(jīng)緯度間隔,值越小、網(wǎng)格越密,繪制越精細(xì)。由于采用OpenG技術(shù)中的三角形帶繪制(GL-TRIANGLE一STRIP),每次繪制4個(gè)頂點(diǎn),每個(gè)頂點(diǎn)被繪制4次,故需要乘以4。

(2)三角函數(shù)的運(yùn)算過多。

在單一場景的渲染中不會影響渲染速度,但在復(fù)雜的3D場景中,渲染速度的劣勢會體現(xiàn)出來。因?yàn)樵谟?jì)算機(jī)中三角函數(shù)的運(yùn)算較之加、減、乘、除等運(yùn)算要慢的多。

1.4 曲面天空模型

為保持球型天空模型的優(yōu)勢并彌補(bǔ)該算法的不足,本文研究了一種渲染速度更快的曲面天空模型,該模型如圖1所示。

該模型類似于將一個(gè)經(jīng)過細(xì)分的平面的4個(gè)角點(diǎn)向下拉,形狀看上去像一個(gè)撐開的降落傘,將他罩在場景之上,可以模擬3D天空。曲面的長度為S為:

頂點(diǎn)坐標(biāo)(x,y,z)的計(jì)算公式為:

 

其中△s為曲面細(xì)分間隔;j,i為循環(huán)參數(shù)。

曲面天空模型仍然可以用OpenGL技術(shù)中的三角形帶((GLTRIANGLE_STRIP)繪制,但他避免了三角函數(shù)的運(yùn)算,且頂點(diǎn)數(shù)目比相同精度的球型天空模型少,故增加了渲染速度。

2 天空云圖

2.1 分形云圖

分形[4]方法建造的物體模型結(jié)構(gòu)精細(xì)、算法控制相對簡單,適合于描繪云、樹等結(jié)構(gòu)精細(xì)的物體。本文利用分形理論中的插值算法產(chǎn)生靜態(tài)天空云圖紋理,算法如下:

(1)在平面上劃分正方形網(wǎng)格n×n,隨機(jī)給A1,A2,A3,A4這4個(gè)角點(diǎn)的顏色。如圖2所示。

(2)計(jì)算中點(diǎn)值,B1=(A1+A2+A3+A4)×0.25+ξ×scale,其中ξ是一個(gè)隨機(jī)量;Scale一(1/2)H(標(biāo)度)H即Hurst指數(shù),他也是分形維數(shù)D的度量:D一2一H,如圖3所示。

 

(3)根據(jù)A1,A4,B1點(diǎn)和網(wǎng)格外一虛擬點(diǎn),重復(fù)第(2)節(jié),得到邊中點(diǎn)c1的顏色值。同理,可計(jì)算出C2,C3,C4邊中點(diǎn)的顏色值。

(4)遞歸步驟(2),(3),使其正方形網(wǎng)格不斷細(xì)化,直到達(dá)到預(yù)期的遞歸深度。

以上步驟中,正方形初始點(diǎn)的顏色是隨機(jī)賦予的,但正方形網(wǎng)格內(nèi)的所有點(diǎn)不是隨機(jī)分布的。通過采用分形插值算法,使得網(wǎng)格內(nèi)相鄰點(diǎn)之間建立了某種聯(lián)系,從而使生成體內(nèi)部過渡得更加自然。這樣,通過分形插值算法,得到一個(gè)2維數(shù)組,將數(shù)組中的每一個(gè)元素值看成是云的不透明度數(shù)據(jù)。最小數(shù)組值代表最藍(lán)色,天空中云最少的部分,最大的值代表最白色,天空中云最重的部分。分析數(shù)組并生成藍(lán)天白云紋理圖如圖4所示。

2.2 紋理映射

紋理映射技術(shù)[1.2]也叫紋理貼圖技術(shù)(Texture Map-ping),與建造模型的方法相比,在摸擬物體表面細(xì)節(jié)方面,紋理映射是一個(gè)較有效的方法。景物表面紋理細(xì)節(jié)的模擬在真實(shí)感圖形合成技術(shù)中起著非常重要的作用,這種將景物表面紋理細(xì)節(jié)的模擬稱為紋理映射技術(shù)。現(xiàn)在,紋理映射已經(jīng)成為三維圖形世界中最為常用的技術(shù)之一,其數(shù)學(xué)過程十分復(fù)雜,但OpenGL已對其進(jìn)行處理,于是編程者可以利用幾個(gè)函數(shù)就可以完成紋理貼圖。

執(zhí)行紋理貼圖的步驟可以概括為:定義紋理貼圖;控制紋理;說明紋理貼圖方式;激活紋理映射;定義紋理坐標(biāo)等。在一個(gè)球面上進(jìn)行紋理映射是比較復(fù)雜的,采用不同的映射方式將產(chǎn)生不同的問題。如果采用平面映射的方式將在連續(xù)處產(chǎn)生紋理拉伸現(xiàn)象,如果采用球面映射,最大的問題是在球面的極點(diǎn)產(chǎn)生紋理的聚集現(xiàn)象,對于好的紋理,這種現(xiàn)象可以縮減到最小。根據(jù)球面幾何知識,可以得到紋理坐標(biāo)的具體計(jì)算公式:

加上1/2的原因是為了使U,V坐標(biāo)的值處于(0.0,1.0)范圍內(nèi)。

3 動(dòng)態(tài)仿真

本文采用定時(shí)器技術(shù)和改變紋理矩陣坐標(biāo)的方法實(shí)現(xiàn)云的流動(dòng)效果。首先定義一個(gè)100 ms的定時(shí)器,每隔100ms紋理坐標(biāo)改變一次。其次,使用多重紋理來添加一個(gè)單獨(dú)的云彩貼圖,通過變換紋理矩陣坐標(biāo)實(shí)現(xiàn)流動(dòng)。變換紋理坐標(biāo)的方法是先將當(dāng)前矩陣類型設(shè)置為紋理矩陣(GL-TEXTURE),然后調(diào)用glTranslate(),glRotate()和glScale()函數(shù)實(shí)現(xiàn)坐標(biāo)的平移、旋轉(zhuǎn)和縮放。這樣,云就可以緩慢地在天空中移動(dòng)。此外,通過添加按鍵響應(yīng)函數(shù),在函數(shù)體中利用()penGL的模型變換函數(shù),如glRotate(),可以以任意角度旋轉(zhuǎn)3D天空,達(dá)到用戶與3D場景的交互的效果。

4仿真結(jié)果

本仿真實(shí)驗(yàn)在CPU為P4,主頻為1.7 GHz,內(nèi)存為256 M,集成顯卡上完成。仿真結(jié)果如圖5~圖8所示。天空中的云彩可以沿球形天空緩慢移動(dòng),客戶可以通過上下左右鍵旋轉(zhuǎn)3D天空。該模型在實(shí)時(shí)3D場景仿真中可以籠罩在場景之上,有很好的3D效果,并且真實(shí)感強(qiáng)。采用半球型天空模型的幀速率為250~285 f/s;采用曲面型天空模型的幀速率為324~340 f/s,在保證真實(shí)感和交互性的前提下,從渲染速度上看曲面天空模型優(yōu)于半球型天空模型。

 

 

 

5 結(jié) 語

本仿真系統(tǒng)的軟件平臺為VC++6.O,通過OpenGL圖形庫函數(shù)實(shí)現(xiàn)可視化仿真。利用球形方程、平面方程、三角函數(shù)等幾何原理建立各種3D天空模型,運(yùn)用分形理論中的插值算法編寫天空紋理,并通過OpenGL函數(shù)進(jìn)行三角形帶繪制天空框架,紋理映射技術(shù),映射出具有真實(shí)效果的3D天空。從仿真結(jié)果來看,真實(shí)感強(qiáng),實(shí)時(shí)性好,此外,通過按鍵響應(yīng)函數(shù),可以以任意角度旋轉(zhuǎn),任意高度升降3D天空,交互性強(qiáng),非常適合3D游戲的戶外場景仿真。

posted on 2012-06-09 16:27 蕙麓 閱讀(1187) 評論(0)  編輯 收藏 引用 所屬分類: 計(jì)算機(jī)圖像學(xué)(OpenGL)
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            伊人色综合久久天天五月婷| 亚洲精品免费一二三区| aa国产精品| 亚洲视频福利| 欧美中在线观看| 国产欧美一区二区精品仙草咪| 亚洲天堂av电影| 欧美二区在线观看| 久久久久久香蕉网| 亚洲乱码国产乱码精品精| 欧美亚洲视频一区二区| 在线视频一区观看| 国产麻豆成人精品| 久久久亚洲国产美女国产盗摄| 亚洲一区二区三区在线播放| 国产精品美女久久久久av超清| 久久精品欧洲| 欧美黄色免费| 久久精品国产精品亚洲综合| 久久久欧美一区二区| 亚洲国产一区二区在线| 亚洲一区二区欧美日韩| 亚洲国产高清自拍| 亚洲欧美国产77777| 亚洲精品视频在线观看免费| 亚洲一区视频在线| 一本久道综合久久精品| 亚洲欧洲日产国产网站| 国产精品国产三级国产a| 久久综合福利| 国产精品久久久久久亚洲调教| 久久久久久久综合色一本| 久久男女视频| 亚洲国产精品一区二区第四页av| 亚洲成人在线观看视频| 欧美一区二区视频在线观看2020| 日韩亚洲一区在线播放| 欧美成人伊人久久综合网| 1024欧美极品| 久久精品免费播放| 欧美成人精品一区二区| 一区二区亚洲精品| 麻豆av一区二区三区久久| 欧美成人蜜桃| 亚洲伦理在线免费看| 欧美精品三级| 性做久久久久久久久| 久久综合九九| 日韩午夜高潮| 国产小视频国产精品| 久久精品久久综合| 亚洲日本乱码在线观看| 欧美一级久久| 在线视频国内自拍亚洲视频| 欧美高清在线视频观看不卡| 一区二区三区国产在线观看| 久久精品日韩| 亚洲精品久久久一区二区三区| 欧美日韩国产色综合一二三四 | 亚洲一级免费视频| 亚洲大片av| 美女在线一区二区| 亚洲综合色婷婷| 亚洲乱码日产精品bd| 美女主播视频一区| 欧美自拍偷拍午夜视频| 一区二区日韩| 亚洲国产91精品在线观看| 国产日韩欧美精品一区| 国产欧美一区二区三区久久 | 久久免费视频在线| 亚洲在线播放| 在线中文字幕一区| 午夜精品久久久久久久久久久久 | 久久久精品999| 久久久久久久久久久久久女国产乱| 亚洲午夜高清视频| 亚洲美女91| 欧美福利精品| 亚洲高清不卡av| 一本色道综合亚洲| 久久成人18免费观看| 久久精品九九| 欧美激情日韩| 国产精品人人做人人爽人人添| 欧美日韩成人在线| 国产亚洲毛片在线| 在线亚洲成人| 久久夜色精品亚洲噜噜国产mv| 久久最新视频| 99精品热视频只有精品10| 亚洲国产欧美一区二区三区丁香婷| 亚洲精品免费电影| 久久久av毛片精品| 欧美精品在线一区| 久久噜噜亚洲综合| 欧美激情第二页| 国产偷自视频区视频一区二区| 亚洲激情视频网| 欧美高清视频www夜色资源网| 亚洲乱亚洲高清| 欧美高清视频一区二区| 国产毛片一区二区| 一区二区三区精品国产| 久久综合久久88| 一区二区三区你懂的| 久久久久久自在自线| 国产精品国内视频| av不卡在线| 亚洲美女在线看| 欧美sm视频| 在线观看视频日韩| 国产欧美视频一区二区| 在线免费高清一区二区三区| 欧美一区二区视频97| 午夜精品一区二区三区四区| 国产精品网站一区| 久久精品综合一区| 久久久久久九九九九| 亚洲国产电影| 亚洲片在线资源| 国产精品第一页第二页第三页| 亚洲婷婷国产精品电影人久久| 亚洲精品在线看| 欧美日韩成人在线观看| 日韩写真在线| 9国产精品视频| 国产欧美精品一区二区色综合| 亚洲香蕉网站| 久久久久久久久久久成人| 一区二区不卡在线视频 午夜欧美不卡在 | 久久久久欧美| 欧美日韩另类国产亚洲欧美一级| 亚洲欧美日韩成人| 久久综合伊人77777尤物| 日韩一区二区福利| 亚洲午夜免费视频| 亚洲美女黄网| 久久一区亚洲| 欧美在线观看网站| 欧美激情精品久久久久久免费印度| 中文精品视频| 欧美国产一区二区| 欧美成人tv| 在线 亚洲欧美在线综合一区| 亚洲欧洲三级电影| 亚洲欧美三级在线| 亚洲高清视频在线| 久久伊人精品天天| 久久亚洲国产精品日日av夜夜| 欧美四级剧情无删版影片| 日韩午夜电影| 99精品视频一区二区三区| 久久在线免费| 欧美激情一区二区在线| 一区二区在线观看av| 久久激情视频久久| 久久尤物视频| 亚洲福利电影| 免费日韩精品中文字幕视频在线| 久久久999| 亚洲午夜黄色| 国产一区二区三区电影在线观看 | 欧美理论电影网| 99视频在线观看一区三区| av成人国产| 国产精品狼人久久影院观看方式| 午夜精品av| 韩国福利一区| 欧美a级在线| 正在播放欧美视频| 噜噜噜躁狠狠躁狠狠精品视频| 亚洲国产精品va在线看黑人动漫| 久久婷婷久久| 9人人澡人人爽人人精品| 亚洲美女视频在线观看| 国产精品久久久91| 久久婷婷综合激情| 日韩一区二区精品| 老司机久久99久久精品播放免费| 伊伊综合在线| 国产精品日韩电影| 欧美国产欧美亚洲国产日韩mv天天看完整| 亚洲国产一区二区三区青草影视| 亚洲欧美在线免费| 日韩视频在线免费观看| 激情五月婷婷综合| 国产视频一区在线| 国产精品视频yy9099| 欧美色精品在线视频| 欧美电影免费观看大全| 免费成人高清| 欧美福利视频在线| 欧美成人性生活| 欧美91精品| 国产精品乱人伦中文| 亚洲一区二区精品视频| 老色鬼精品视频在线观看播放| 欧美诱惑福利视频| 亚洲国产日日夜夜|