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

蕙麓

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>
            亚洲影院在线观看| 欧美激情2020午夜免费观看| 国产一区二区精品| 国产精品日韩欧美一区| 国产精自产拍久久久久久蜜| 国产日韩欧美综合| 1000部精品久久久久久久久| 亚洲国产婷婷香蕉久久久久久| 亚洲国产成人av| 在线视频你懂得一区二区三区| 亚洲视频欧洲视频| 欧美一二三视频| 欧美电影打屁股sp| 亚洲婷婷综合色高清在线| 亚洲欧美第一页| 噜噜噜91成人网| 欧美午夜三级| 一区二区三区在线高清| 亚洲美女性视频| 性欧美大战久久久久久久久| 美脚丝袜一区二区三区在线观看| 欧美国产日产韩国视频| 中文在线资源观看网站视频免费不卡 | 久久午夜精品一区二区| 欧美日本在线看| 国产日产欧产精品推荐色| 亚洲国产精品999| 香蕉av福利精品导航| 亚洲激情在线观看| 亚洲一区二区三区在线| 牛夜精品久久久久久久99黑人| 国产精品免费一区二区三区在线观看 | 亚洲人成小说网站色在线| 亚洲欧美一区二区在线观看| 欧美电影免费观看| 精品不卡在线| 久久福利视频导航| 91久久午夜| 亚洲国产成人一区| 久久精品国产免费观看| 亚洲激情国产| 久久精品毛片| 国产精品高清在线| 99热这里只有精品8| 欧美黄色精品| 久久久久国产一区二区三区四区| 国产精品国码视频| 夜夜嗨av一区二区三区网站四季av | 亚洲淫片在线视频| 欧美绝品在线观看成人午夜影视| 狠狠色综合色区| 久久精品盗摄| 亚洲欧美三级在线| 国产精品专区h在线观看| 午夜久久tv| 亚洲在线1234| 国产欧美精品一区二区色综合 | 久久久蜜桃精品| 亚洲欧美日韩在线一区| 国产精品久久久久毛片大屁完整版 | 久久精品国产久精国产爱| 亚洲午夜久久久| 国产免费成人在线视频| 久久国产日本精品| 久久国产加勒比精品无码| 激情一区二区三区| 亚洲第一网站| 欧美日韩一区二区三区在线 | 国产日本精品| 久久午夜电影| 蜜臀av在线播放一区二区三区 | 一区二区日韩免费看| 最新中文字幕亚洲| 欧美日韩在线大尺度| 欧美亚洲视频在线观看| 欧美一区免费| 亚洲日本aⅴ片在线观看香蕉| 欧美日韩精品一区二区| 欧美午夜视频| 国产欧美日韩综合一区在线观看 | 久久精品在线| 亚洲国产日韩欧美| 99国产精品99久久久久久粉嫩 | 黄色成人小视频| 欧美激情久久久久久| 欧美日韩视频在线第一区| 久久成人资源| 欧美黄色一级视频| 午夜精品久久久| 免费成人av在线看| 亚洲综合色激情五月| 久久精品夜色噜噜亚洲aⅴ| 一本到12不卡视频在线dvd| 亚洲永久在线观看| 亚洲动漫精品| 亚洲性感激情| 日韩午夜激情| 久久激情一区| 亚洲欧美国产毛片在线| 免费成人av资源网| 久久精品欧美日韩| 欧美日韩国产综合新一区| 久久综合久久综合九色| 欧美性天天影院| 亚洲国产精品t66y| 国产无遮挡一区二区三区毛片日本| 亚洲国产日韩欧美在线99| 国产亚洲欧美日韩日本| 一区二区电影免费在线观看| 亚洲黄网站在线观看| 欧美自拍丝袜亚洲| 欧美一级播放| 欧美午夜精品久久久久久孕妇| 欧美成人精品福利| 激情六月婷婷综合| 欧美在线播放一区二区| 午夜综合激情| 国产精品成人一区二区网站软件| 亚洲高清资源| 亚洲国产欧美国产综合一区 | 久久香蕉国产线看观看网| 欧美在线视频免费观看| 国产精品福利在线观看网址| 亚洲精品乱码久久久久久按摩观| 亚洲盗摄视频| 久久久久久夜精品精品免费| 久久久久久久尹人综合网亚洲| 国产精品自拍视频| 午夜国产一区| 欧美在线亚洲一区| 国产亚洲精品资源在线26u| 午夜精品婷婷| 久久99在线观看| 国产主播一区二区三区| 欧美一区二区三区男人的天堂 | 一本一本久久| 欧美国产在线观看| 欧美va日韩va| 91久久精品美女| 亚洲最黄网站| 欧美日韩久久不卡| 日韩亚洲欧美一区二区三区| 亚洲一区国产视频| 国产九区一区在线| 久久爱另类一区二区小说| 噜噜噜91成人网| 亚洲日本成人在线观看| 欧美久色视频| 午夜精品久久久久久久白皮肤| 久久精品视频免费观看| 韩国三级电影一区二区| 免费日韩成人| 日韩视频免费观看| 欧美专区日韩视频| 亚洲大胆女人| 欧美日韩在线一二三| 午夜伦欧美伦电影理论片| 久久亚洲图片| 一本久道久久综合狠狠爱| 国产精品一区二区三区成人| 久久精品五月| 亚洲美女在线视频| 久久精品亚洲一区二区| 亚洲精品免费看| 国产欧美日韩一区二区三区在线观看| 欧美一区二区三区四区高清| 欧美成人免费一级人片100| 中日韩男男gay无套| 国产在线精品成人一区二区三区 | 国内激情久久| 欧美精品日韩综合在线| 亚洲欧美成人一区二区在线电影 | 免费在线日韩av| 亚洲男女自偷自拍| 亚洲国产精品嫩草影院| 香蕉久久夜色精品| 亚洲精品国产精品国自产观看浪潮| 国产精品国产三级国产专播精品人 | 亚洲一区二区免费| 欧美成人激情视频免费观看| 午夜精品久久久久久久蜜桃app| 激情五月***国产精品| 国产精品国产三级国产aⅴ入口| 久久综合久久美利坚合众国| 亚洲先锋成人| 91久久精品国产91性色tv| 久久久久国产精品人| 亚洲一区视频在线| 亚洲精选在线| 亚洲电影自拍| 精品不卡一区| 国产午夜精品美女毛片视频| 欧美视频一区二区三区| 欧美成人精品| 久久躁狠狠躁夜夜爽| 欧美亚洲专区| 亚洲欧美综合v| 亚洲图片欧洲图片日韩av| 久久久久久久网| 国产精品成人播放|