本站小編為你精心準備了虛擬現實系統構建參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。
摘要:3DStudioMAX是Autodesk公司的子公司Kinetix推出的一種優秀的三維動畫造型軟件,它廣泛用于游戲、廣告、建筑等領域,是目前PC上最流行的三維動畫造型軟件。虛擬現實技術是計算機技術發展到一定階段的產物,它使計算機適應人而不是人適應計算機,它的發展應用日益廣泛、普及。本文擬就3DSMAX在虛擬現實系統構建過程中的應用做一介紹。
1.虛擬現實簡介
虛擬現實(VR)是一種由計算機和電子技術創造的新世界,是一個看似真實的模擬環境,通過多種傳感設備用戶可根據自身的感覺,使用人的自然技能對虛擬世界的物體進行考察或操作,參與其中的事件;同時提供視覺、聽覺、觸覺等多通道的信息,用戶通過視、聽、摸等直觀而又自然的實時感知,并使參與者沉浸于模擬環境中。VR的三個最突出的特征,即它的3“I”特性:交互性(interactivity)、沉浸感(IllusionofImmersion)、想象(imagination)。
虛擬現實技術是在眾多相關技術如計算機圖形學、仿真技術、多媒體技術、傳感器技術、人工智能的基礎上發展起來的。虛擬現實技術在最近十年里獲得了極大的發展,這主要歸因于計算機軟、硬件條件的飛速發展,以及虛擬現實專用設備價格的下降和性能的提高。目前虛擬現實技術已經獲得了廣泛的應用,而且日益普及,不僅在諸如NASA的大型工程得到應用,也出現在一些游戲中,在一些高檔的PC機上甚至可以構建自己的個人PCVRS(個人虛擬現實系統)。
設計一個虛擬現實系統除了硬件條件一般個人無法定制外,能夠充分發揮個人能動性的就只能是在系統軟的方面下功夫了。設計一個VR系統,首要的問題是創造一個虛擬環境,這個虛擬環境包括三維模型、三維聲音等,在這些要素中,因為在人的感覺中,視覺攝取的信息量最大,反應亦最為靈敏,所以創造一個逼真而又合理的模型,并且能夠實時動態地顯示是最重要的。虛擬現實系統構建的很大一部分工作也是建造逼真合適的三維模型。
2.3DStudioMAX簡介
3DStudioMAX是Kinetix公司推出的一套強大的三維建模軟件,由于它是基于WinNT或Win98平臺的,方便易學,又因其相對低廉的價格優勢,所以成為目前個人PC上最為流行的三維建模軟件。其3.0版本的推出,更是鞏固了它在個人PC平臺上的地位。它的3.0版本相較以前的版本有了明顯的改進,具體表現在以下幾個方面:
⑴工作流模式使得工作組的協調更容易,效率更高。3DStudioMAXR3引入了工作流模式,在具體的實現上從外部參考體系(XRef)、示意視圖(SchematicView)的引入以及現在3DMAX可以使用其他程序從外部加以控制,而不必激活它的工作界面。
⑵易用性的改進。操作界面的改進是Release3.0版本的最顯著的變化,除了外觀的變化之外,R3.0版本還增加了諸如用戶自定義界面、宏記錄、插件代碼、變換Gizmo、軌跡條等功能。
⑶渲染的改進。Autodesk公司在收購了以渲染和視頻技術聞名的DiscreetLogic公司,吸收了該公司的先進技術,3DMAXR3對其渲染器幾乎做了重新設計,不僅增加了渲染的速度,而且提高了畫面渲染的質量。
⑷建模技術的增強。建模技術的增強是3DStudioMAX最重要、最突出的改進,這也是在虛擬現實系統構建中應用它的一個有力的原因。主要的改進包括:
①細分曲面技術(SubdivisionSurface)。3DSMAX包含了細分曲面技術,細分曲面技術是1998年以來業界最流行的建模技術,大有趕超NURBS技術之勢,它可以使模型建立更容易,而且效果更好。
②柔性選擇。此項技術可以“部分地”選擇頂點,從而在變換頂點時獲得光滑、柔和的效果,這對建立復雜物體的模型時非常有用。
③曲面工具和改進的NURBS技術。使用曲面工具可以產生很復雜的“面片”模型,這亦是一種重要的建模方法,Release3.0版本中的NURBS技術不但速度加快,而且增加了一系列方便、易用的功能。
⑸對游戲的更好支持。3DStudioMAXR3大大增強了對游戲的支持,而且這些特性也可以用于其他場合。
①增加了角色動畫功能。Release3.0版本內置了制作角色動畫的功能,可以方便制作人物或動物的動作、柔軟物體的效果以及變形效果。
②頂點信息以及加強的貼圖坐標功能。現在可以對頂點著色,并增加了頂點的通道,增強了UVWUnwarp的功能,并增加了WorldXYZ貼圖坐標。
此外,3DStudioMAXR3也顯著增強了動畫功能。
3.3DSMAX在VR系統構建過程中的應用
如前所述,VR系統要求實時動態逼真地模擬環境,考慮到硬件的限制和虛擬現實系統的實時性的要求,VR系統的建模與以造型為主的動畫建模方法有著顯著的不同,VR的建模大都采用模型分割、紋理映射等技術。目前VR中的虛擬場景的構造主要有以下途徑:基于模型的方法和IBR(基于圖像的繪制)方法兩種。這兩種方法都可以在3DSMAX中加以實現和驗證,下面具體展開加以說明。
3.1基于模型的構造方法。3DSMAX的幾何建模方法主要有多邊形(Polygon)建模、非均勻有理B樣條曲線建模(NURBS)、細分曲面技術建模(SubdivisionSurface)。通常建立一個模型可以分別通過幾種方法得到,但有優劣、繁簡之分。
⑴多邊形建模。多邊形建模技術是最早采用的一種建模技術,它的思想很簡單,就是用小平面來模擬曲面,從而制作出各種形狀的三維物體,小平面可以是三角形、矩形或其他多邊形但實際中多是三角形或矩形。使用多邊形建模可以通過直接創建基本的幾何體,再根據要求采用修改器調整物體形狀或通過使用放樣、曲面片造型、組合物體來制作虛擬現實作品。多邊形建模的主要優點是簡單、方便和快速但它難于生成光滑的曲面,故而多邊形建模技術適合于構造具有規則形狀的物體,如大部分的人造物體,同時可根據虛擬現實系統的要求,僅僅通過調整所建立模型的參數就可以獲得不同分辨率的模型,以適應虛擬場景實時顯示的需要。
⑵NURBS建模。NURBS是Non-UniformRationalB-Splines(非均勻有理B樣條曲線)的縮寫,它純粹是計算機圖形學的一個數學概念。NURBS建模技術是最近4年來三維動畫最主要的建模方法之一,特別適合于創建光滑的、復雜的模型,而且在應用的廣泛性和模型的細節逼真性方面具有其他技術無可比擬的優勢。但由于NURBS建模必須使用曲面片作為其基本的建模單元,所以它也有以下局限性:NURBS曲面只有有限的幾種拓撲結構,導致它很難制作拓撲結構很復雜的物體(例如帶空洞的物體);NURBS曲面片的基本結構是網格狀的,若模型比較復雜,會導致控制點急劇增加而難于控制;構造復雜模型時經常需要裁剪曲面,但大量裁剪容易導致計算錯誤;NURBS技術很難構造“帶有分枝的”物體。
⑶細分曲面技術。細分曲面技術是1998年才引入的三維建模方法,它解決了NURBS技術在建立曲面時面臨的困難,它使用任意多面體作為控制網格,然后自動根據控制網格來生成平滑的曲面。細分曲面技術的網格可以是任意形狀,因而可以很容易地構造出各種拓撲結構,并始終保持整個曲面的光滑性。細分曲面技術的另一個重要特點是“細分”,就是只在物體的局部增加細節,而不必增加整個物體的復雜程度,同時還能維持增加了細節的物體的光滑性。但由于細分曲面技術是一種剛出現不久的技術,3DStudioMAXR3對它的支持還顯得稚嫩,還不能完成一些十分復雜的模型創作。
有了以上3DSMAX幾種建模方法的認識,就可以在為虛擬現實系統制作相應模型前,根據虛擬現實系統的要求選取合適的建模途徑,多快好省地完成虛擬現實的作品的制作。
在虛擬現實作品制作的時候應當遵循一個原則:在能夠保證視覺效果的前提下,盡量采用比較簡單的模型,而且若能夠用參數化方法構建的對象盡量用參數化方法構建,同時,在模型創作過程中,對模型進行分割,分別建模,以利于在虛擬現實系統中進行操作和考察。
對于復雜對象的運動或原理演示,我們可以預先將對象的運動和說明做成動畫存為avi文件,然后等待VR系統合適的觸發事件,播放該avi文件即可。
3.2基于圖像的繪制(IBR),傳統圖形繪制技術均是面向景物幾何而設計的,因而繪制過程涉及到復雜的建模、消隱和光亮度計算。盡管通過可見性預計算技術及場景幾何簡化技術可大大減少需處理景物的面片數目,但對高度復雜的場景,現有的計算機硬件仍無法實時繪制簡化后的場景幾何。因而我們面臨的一個重要問題是如何在具有普通計算能力的計算機上實現真實感圖形的實時繪制。IBR技術就是為實現這一目標而設計的一種全新的圖形繪制方式。該技術基于一些預先生成的圖像(或環境映照)來生成不同視點的場景畫面,與傳統繪制技術相比,它有著鮮明的特點:
⑴圖形繪制獨立于場景復雜性,僅與所要生成畫面的分辨率有關。
⑵預先存儲的圖像(或環境映照)既可以是計算機合成的,亦可以是實際拍攝的畫面,而且兩者可以混合使用。
⑶該繪制技術對計算資源的要求不高,因而可以在普通工作站和個人計算機上實現復雜場景的實時顯示。
由于每一幀場景畫面都只描述了給定視點沿某一特定視線方向觀察場景的結果,并不是從圖像中恢復幾何或光學景象模型,為了擺脫單幀畫面視域的局限性,我們可在一給定視點處拍攝或通過計算得到其沿所有方向的圖像,并將它們拼接成一張全景圖像。為使用戶能在場景中漫游,我們需要建立場景在不同位置處的全景圖,繼而通過視圖插值或變形來獲得臨近視點的對應的視圖。IBR技術是新興的研究領域,它將改變人們對計算機圖形學的傳統認識,從而使計算機圖形學獲得更加廣泛的應用。
3DSMAX在IBR中的應用是自然的,3DSMAX的出色的紋理貼圖,強大的貼圖控制能力,各種空間扭曲和變形,都提供了對圖像和環境映照的容易的處理途徑。例如,在各種IBR的應用中,全景圖的生成是經常需要解決的問題,這方面,利用3DSMAX可以根據所需的全景圖類型先生成對應的基板,比如,柱面全景圖就先生成一個圓柱,然后控制各個方向的條狀圖像沿著圓柱面進行貼圖即可。而且可以將圖像拼接的過程編制成Script文件做成插件嵌入3DSMAX環境中,可以容易地生成全景圖并且預先觀察在虛擬現實系統中漫游的效果,這通過在VideoPost設置攝像機的運動軌跡即可。事實上,目前已經有一些全景圖生成和校正的插件。
在用3DSMAX為VR系統創作好模型后,結合VR系統的要求,看是否需要采用諸如LOD(LevelofDetail)模型,如果需要可利用MAX自帶的LOD插件直接生成對象的LOD模型,最后根據VR系統的編輯環境將模型輸出為編輯環境所能接收的文件類型,如VRML97或DXF等格式的文件。
以上主要介紹了3DSMAX制作VR作品,下面再簡單介紹一些3DSMAX的另外的應用。
在VR系統中經常需要有視差和景深的立體視圖,這可以通過在3DSMAX中設置雙攝像機來模擬人的雙眼來渲染立體視圖對,這個需要調整雙攝像機的相對位置,然后分別渲染不同的攝像機視圖即可得到立體視圖對,具體實現過程可參見文獻〖2〗。
3DSMAX是用C++語言和OpenGL編寫的應用軟件,而且它提供的MAXSDK也是采用C++編寫的代碼,我們可以很容易地用C++和OpenGL結合MAXSDK實現我們的圖形學算法,再把我們的算法作為插件嵌入3DSMAX環境中,而不用考慮物體模型的生成和處理的復雜代碼,利用3DSMAX的渲染計時器可以方便地檢驗我們所編算法的效率和效果。