• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于OSG虛擬漫游的設(shè)計與實現(xiàn)

      2011-03-23 09:30:50陳定方
      關(guān)鍵詞:環(huán)境變量碰撞檢測漫游

      王 麗,陳 杰,李 佳,陳定方

      (武漢理工大學(xué)智能制造與控制研究所,湖北 武漢 430063)

      虛擬漫游技術(shù)是虛擬現(xiàn)實(VR)技術(shù)的重要分支,而場景實時漫游是虛擬現(xiàn)實技術(shù)的一個重要應(yīng)用.由于沒有制定具體的路線,人們可以在虛擬的環(huán)境中自由行走,不受時間、空間的限制,達(dá)到真正意義上的交互,因此該技術(shù)能夠給客戶帶來企業(yè)最直觀的展示.本文對OpenSceneGraph(OSG)圖形系統(tǒng)大型場景進行數(shù)字化采集數(shù)據(jù),然后通過三維建模建立大型場景,最終實現(xiàn)現(xiàn)實場景的虛擬漫游系統(tǒng)開發(fā).

      1 場景建模

      利用Google Earth大型場景的衛(wèi)星地圖為依據(jù),收集相關(guān)實體的結(jié)構(gòu)數(shù)據(jù)以及照片,通過使用3ds Max軟件對光照、紋理、材質(zhì)等多因素進行修理,進行實體建模.

      2 場景模型的優(yōu)化

      虛擬建筑場景漫游的最大難點在于建模逼真度和繪制實時性.由于這種漫游所看到的景象離觀察者近,要求繪制非常逼真的圖像.因此,構(gòu)造精細(xì)的建模,會消耗很多時間.同樣,由于計算機性能的制約,構(gòu)造出來的模型越復(fù)雜,在繪制時要達(dá)到實時效果就越困難,實時性太差會使觀察者無法接受.因此必須像重視建模本身一樣重視對場景模型的優(yōu)化[1].可以運用多層次細(xì)節(jié)(LOD)方法為場景生成不同的細(xì)節(jié)層次,這樣可大大減少繪制的計算量.還可以采取一些場景預(yù)處理辦法,例如用輻射度方法,可在漫游時省去許多光照的計算量.

      3 建立三維場景模型

      利用基于OSG技術(shù)開發(fā)的軟件——三維仿真軟件進行編輯并導(dǎo)出三維場景模型.將場景模型導(dǎo)入3dvri軟件中進行編輯(主要是進行攝影機的路線校正,以及天空盒的創(chuàng)建還有鏡頭光斑的設(shè)置等),最后將場景文件保存為ive格式的文件[2,3].

      4 實現(xiàn)實時漫游

      基于 OSG技術(shù),通過在 Microsoft Visutual stdio.NET平臺下開發(fā)的一個基于MFC的演示窗口,實現(xiàn)虛擬校園的漫游功能.

      4.1 系統(tǒng)開發(fā)與環(huán)境設(shè)置

      正確使用安裝包安裝OSG并完成OSG的編譯后,打開VS2005,選擇“工具”※“選項”命令打開“選項”對話框,展開“項目和解決方案”結(jié)點,選擇“VC++目錄”選項,在此設(shè)置包含文件和庫文件兩項,分別選擇OSG目錄中的include和lib文件夾所在的路徑[4].

      具體設(shè)置方法如下.

      1)包含文件和庫文件目錄分別設(shè)置為:

      2)右擊“我的電腦”圖標(biāo),在彈出的快捷菜單中選擇“屬性命令”打開“系統(tǒng)屬性”對話框,選擇“高級”選項卡,單擊“環(huán)境變量”按鈕,在彈出環(huán)境變量對話框中設(shè)置下面兩個環(huán)境變量:

      4.2 場景漫游

      在瀏覽整個三維場景時,矩陣變換非常關(guān)鍵.通過適當(dāng)?shù)木仃囎儞Q可獲得各種移動或者渲染效果.此系統(tǒng)中自定義的漫游操作器T ravelManipulator是繼承于OSGGA::MatrixManipulator的.

      編寫自定義場景漫游操作器的主要步驟如下.

      1)編寫一個繼承自 osgGA::GUIEventHandler類的新類,class TravelManipulator:public osgGA::MatrixManipulator.

      2)重載函數(shù)handle()及相關(guān)矩陣變換函數(shù),在handle()中添加合適的事件處理函數(shù),并指定執(zhí)行相關(guān)的動作.

      在此函數(shù)中執(zhí)行相關(guān)動作如:

      3)進行碰撞檢測.本系統(tǒng)中使用一種簡單的碰撞檢測方法(圖1).

      圖1 簡單碰撞檢測

      碰撞檢測實現(xiàn)代碼如下:

      4)關(guān)聯(lián)該操作器到當(dāng)前視圖場景中,OSG不會自動啟動.該操作器代碼為

      5 結(jié)論

      使用該漫游系統(tǒng)操作方便,仿真度高,在實際應(yīng)用中獲得了較好的效果(圖2).

      [1]丁建浩,王毅剛,潘志庚.采用大屏幕投影系統(tǒng)的虛擬河坊街漫游[J].杭州電子科技大學(xué)學(xué)報,2005,25(1):56-59.

      [2]申閆春,朱幼虹,曹 莉,等.基于 OSG的三維仿真平臺的設(shè)計與實現(xiàn)[J].計算機仿真,2007,24(6):207-211.

      [3]Bow man DA,Kruijff E,LaViola J,et al.3D user interfaces:theory and practice[M].Boston:Addison Wesley,2004.

      [4]肖 鵬,劉更代,徐明亮.Open Scene Graph三維渲染引擎編程指南[M].北京:清華大學(xué)出版社,2010:14-15,265-275.

      猜你喜歡
      環(huán)境變量碰撞檢測漫游
      基于最大熵模型的云南思茅松潛在分布區(qū)
      全新預(yù)測碰撞檢測系統(tǒng)
      從桌面右鍵菜單調(diào)用環(huán)境變量選項
      基于BIM的鐵路信號室外設(shè)備布置與碰撞檢測方法
      徹底弄懂Windows 10環(huán)境變量
      霹靂漫游堂
      Unity3D中碰撞檢測問題的研究
      電子測試(2018年1期)2018-04-18 11:53:00
      NASA漫游記
      BIM技術(shù)下的某辦公樓項目管線碰撞檢測
      基于三階段DEA—Malmquist模型的中國省域城鎮(zhèn)化效率測度及其收斂分析
      赤峰市| 饶平县| 治多县| 页游| 昌图县| 加查县| 德昌县| 永善县| 康马县| 阳曲县| 吉林省| 盐城市| 财经| 阿鲁科尔沁旗| 五莲县| 垦利县| 霞浦县| 余江县| 鱼台县| 永修县| 桦南县| 娄烦县| 桑植县| 泗洪县| 寿阳县| 宁陕县| 灌阳县| 卢湾区| 镇宁| 望城县| 健康| 英德市| 黄骅市| 大邑县| 柳河县| 达孜县| 靖宇县| 贵溪市| 新蔡县| 中超| 广昌县|