王若柔
摘 要:如今,虛擬現實技術己經成為計算機技術中研究和應用的熱點,其中虛擬校園就是其在教育領域的典型應用。本文分析了虛擬現實技術及其研究現狀,并對所研究系統的構架、組織方式、創建平臺及使用軟件等進行了較為詳細的闡述,分析了其構建過程與方法,最終完成系統的設計。
關鍵詞:虛擬校園;三維虛擬場景;C#
一、虛擬現實技術
虛擬現實(Virtual Reality,簡稱VR),又稱為靈境技術。其特征是沉浸性、交互性和多感知性,是一種可以創建和體驗虛擬世界的計算機系統。其中,虛擬校園是虛擬城市建設計劃的核心平臺,在此核心平臺之上的各種數據庫及其系統集成構成了虛擬校園的核心應用。針對虛擬校園漫游系統的研究具有諸多意義,其可為虛擬社區、虛擬城市等虛擬瀏覽系統的研究建立起示范、試驗作用。
二、三維虛擬場景制作
1.外業拍攝
外業拍攝即地面攝影影像采集,是三維場景建設的基礎工作之一,良好的外業拍攝作業有助于后期三維建模過程中最大限度地保證模型的真實性,更真實地表現現實世界中的各種景觀事物。
2.底圖校正
此步驟要求對虛擬瀏覽系統范圍內航拍影像底圖進行校正,所使用的軟件為ArcGIS,校正后得到坐標正確且與實際地貌特征相符的底圖,以備后期使用。
3.CAD即計算機輔助設計(Computer Aided Design)
CAD圖紙為創建三維模型提供了所需要的基本資料。通過AutoCAD的提取處理,得到相應地區的CAD底圖及坐標信息,以便導入3dsMax進行后期建模。
4.紋理圖樣的處理
三維虛擬場景制作工作中的基礎部分,主要應用的軟件為Adobe公司的Photoshop,主要工作是根據外業拍攝工作中得到的數據編輯處理出三維建模過程所需的紋理圖樣,用于模型的貼圖處理。
5.三維模型制作
本論文所采用的三維場景的建立技術主要是建立在3ds Max平臺之上。在導入CAD底圖后根據CAD文件繪制模型輪廓,在此基礎之上創建立體模型,隨后對模型貼圖。
三、三維虛擬場景瀏覽系統的功能實現
建立好三維模型后,我們將使用Microsoft Visual Studio 2010 軟件,利用C#語言進行編程,最終形成一套完整的三維虛擬場景瀏覽系統。
三維虛擬場景瀏覽系統主要實現功能為虛擬校園中模型的顯示、場景漫游及相關設置、場景內屬性及坐標的查詢、距離量算等。
1.系統模塊結構及功能介紹
建立C3Dmodel模塊,將其定義為本系統核心模塊,其主要功能為調用3D模型,使之正常顯示。其作用主要包括加載模型中頂點數目、模型中面的數目、模型紋理坐標數目、模型對象名稱、對象法向量、紋理UV坐標以及存儲對象對應紋理名稱、判斷是否具有紋理映射。
2.系統主要模塊
(1)讀入對象數據。此段代碼主要實現的功能為讀入對象數據。
(2)載入透明紋理。本段代碼主要實現的功能為載入瀏覽系統中模型所需的透明紋理,以保證模型的正常顯示。
(3)顯示效果的控制。改變顯示效果菜單欄下有“顯示/隱藏影像圖”和“打開/關閉背景音樂”兩個選項,用于系統的基礎功能控制,單擊后即可生效;改變顯示內容菜單欄下有“顯示天空”“顯示模型”“顯示霧效”和“顯示雪景”四個選項,用于調控不同顯示內容;為實現效果控制,對應視窗界面下的各項效果控制命令,不同命令的初始默認值不同,用true 和 false 控制開關。
(4)漫游瀏覽功能的實現。本系統設計通過鍵盤操作可進行在虛擬場景中漫游,用戶手動漫游方式主要依靠鍵盤操作。對應功能如下:“W”——向前移動;“S”——向后移動;“A”——向左旋轉;“D”——向右旋轉;“+”——視點抬高;“-”——視點降低。用戶可通過以上按鍵在此三維虛擬場景中進行漫游,全方位地體驗本系統。
(5)步長設置功能的實現。瀏覽菜單欄下有“視點復位”“自動漫游”和“步長設置”三個選項,下面主要對“步長設置”功能進行介紹。本系統提供了步長設置功能,用戶可通過設置不同的步長值來調控漫游過程中的步長幅度。配合鍵盤按鍵“W”“S”“A”“D”可實現場景漫游瀏覽。點擊“步長設置”命令后,即彈出“漫游步長參數設置”窗口,用戶可對前后移動步長、左右旋轉角度及視點升降角度進行設置。其中,前后移動步長值對應“W”鍵和“S”鍵操作步長值,左右旋轉角度步長值對應“A”鍵和“D”鍵操作步長值,視點升降角度步長值對應“+”鍵和“-”鍵操作步長值。設置完成后點擊“確定”即可,如若不想保存此設置則需點擊“取消”。
(6)查詢量算功能的實現。查詢量算菜單欄下有“屬性查詢”“坐標查詢”和“距離量算”三個選項。首先需要對系統中的查詢量算操作進行控制,目的是實現此系統的空間量算功能;當用戶選擇此三位虛擬場景瀏覽系統的“距離量算”功能時,視窗中將顯示測量用線劃,本段代碼即實現此線劃的顯示;在屬性查詢狀態下點擊虛擬場景中模型,當系統數據庫中有用戶所查詢的模型信息時,將彈出“地物屬性”窗口。
(7)坐標查詢功能。本系統提供了坐標查詢功能,用戶可在視窗中點擊虛擬場景中任意空間點,系統將提供給用戶該點的空間坐標位置。點擊“坐標查詢”命令后,系統進入坐標查詢狀態,此狀態下在鼠標點擊虛擬場景中任意點,即可彈出對應對話框顯示該點坐標。若想退出坐標查詢狀態只需再次點擊“坐標查詢”命令即可。
(8)距離量算功能。本系統提供了距離量算功能,用戶可在視窗中通過鼠標選擇兩個目標點,以測量出該兩點間的距離。點擊“距離量算”命令后,系統進入距離量算狀態,此狀態下在鼠標點擊虛擬場景中任意點后,將出現紅色線劃隨鼠標移動,直至在虛擬場景中再次點擊鼠標左鍵選取另一點,此時單擊鼠標右鍵,系統將計算出此兩點間距離并將彈出對話框告知用戶。若想量算其他兩點間距離,只需重新選擇點即可。若想退出距離量算狀態只需再次點擊“距離量算”命令即可。
四、總結
本文以三維虛擬場景瀏覽系統為主要研究對象,對其構建過程進行了較為細致的分析。對在構建系統過程中使用到的各種軟件進行了介紹,并對相關的使用方法進行了概括,是在虛擬校園領域的又一次探索和實踐。
參考文獻:
[1]The Virtual Reality Modeling Language International Standard[S].ISO/IEC14772,1997.
[2]伍周凱.建筑三維建模高級技法[M].北京:機械工業出版社,2001.
[3]高志清.3ds Max4.0效果圖及動畫制作入門與深造[M].北京:中國水利水電出版社,2002.