李春燕 劉少華
摘 要:Unity3D是現(xiàn)階段應用最為廣泛、功能最為強大的虛擬現(xiàn)實軟件之一,但是引入的三維模型通常是由不同軟件形成的?,F(xiàn)階段,市面上眾多三維建模軟件各有千秋,各有特色,但所存儲的格式卻各不相同,如何更大程度的發(fā)揮建模軟件的功效,更好的在不同軟件之間進行相互轉換,是本文討論的重點內容。
關鍵詞:三維模型;三維格式;轉換
中圖分類號:TP391 文獻標識碼:A
1 前言
Unity3D作為虛擬現(xiàn)實軟件的后起之秀,跟DirectX和openGL相比,該軟件對圖形渲染管道進行了高度的優(yōu)化,即使是比較低端的硬件,也可以流暢的運行漫游展示、虛擬仿真、交互式動畫等等,并能夠創(chuàng)造出高質量3D仿真系統(tǒng)和真實視覺效果。并且Unity3D起步定位為多平臺高端大型游戲開發(fā)引擎,能夠與Html、Flash等進行良好的交互,并支持C++和JavaScript等多種腳本語言。因此,基于Unity3進行三維展示、虛擬漫游和仿真應用已成為當前的研究熱點。
但是,Unity3D軟件并不具備復雜的建模功能,因此,要想在其中進行操作首先就要在其他軟件中建立好三維模型再導入。Unity3D當前接收到的三維模型主要為.fbx格式,而.fbx格式最大的用途是用在3Dmax、maya等軟件間進行模型、材質、動作和攝影機信息的互導。因此,從3Dmax或maya軟件中導出fbx模型然后導入Unity3D中是沒有問題的,但現(xiàn)在常用的優(yōu)秀三維建模軟件還有很多,這些軟件在三維建模方面都有其自身的優(yōu)勢和特點,但保存格式卻各不相同,本文將主要討論在實際操作中如何將不同軟件中不同格式的三維模型導入至Unity3D中進行操作。
2 三維模型及格式
現(xiàn)在,三維模型已經(jīng)應用于各種不同的領域,并得到了長足的發(fā)展??茖W構想中各種物體的精確三維模型;電影行業(yè)中的人物、物體以及虛擬現(xiàn)實場景;建筑業(yè)中的設計建筑物和風景表現(xiàn);教學行業(yè)中的各種模擬操作仿真訓練;工程界中的設計新設備、交通工具、結構狀態(tài);地球科學領域中的三維地質模型,等等。可以說三維模型已經(jīng)深入到各行各業(yè)中,已經(jīng)成為各行各業(yè)中必不可少的重要元素。
目前物體的建模方法有三種,第一種方式利用三維軟件建模;第二種方式通過儀器設備測量建模;第三種方式利用圖像或者視頻來建模。當前基于PC系統(tǒng)的三維軟件建模方式尤為快捷和熱門。現(xiàn)今,利用三維軟件建模的三維模型主要包括網(wǎng)格和紋理兩部分。
2.1 網(wǎng)格
點、線和面是用于構造三維模型的基本元素。一個點可以用立體空間中的XYZ位置定義;一條線可以用其兩個端點的XYZ位置定義;一條邊可由兩個鄰接的面定義;一個平面可由其邊界線的位置定義。三維模型通常由三維建模軟件把點、線、面和其它信息集合在一塊,所集合數(shù)據(jù)按照一定的算法生成,并存儲于計算機文件中。
2.2 紋理
紋理既包括通常意義上物體表面的紋理即使物體表面呈現(xiàn)凹凸不平的溝紋,同時也包括在物體的光滑表面上的彩色圖案,也稱紋理貼圖。當把紋理按照特定的方式映射到物體表面上的時候能使物體看上去更真實。通過對物體的拍攝所得到的圖像加工后,再映射到各個網(wǎng)格上,最終形成三維模型。
3 常用的三維模型格式
目前常用的三維建模軟件有3Dmax, UG, Solidworks, Pro/E, Sketchup等。由于軟件的不同,以及三維模型的算法、存儲方式、信息、結構等等諸多方面的不同導致了三維模型存儲的格式也會不同。目前常用的三維模型文件格式包括:.stl,.igs,.prt,.prt,.stp,.3ds等等。
3.1 .stl格式
.stl文件是在計算機圖形應用系統(tǒng)中,用三角網(wǎng)格來表現(xiàn)三維模型的一種文件格式。它的文件格式非常簡單,是最多快速原型系統(tǒng)所應用的標準文件類型,應用很廣泛。目前通過大部分三維建模軟件(除CAD,Sketchup外)建立的三維模型都可以導出成.stl格式,并且.stl格式是3Dmax可以導入的格式類型,因此,.stl格式可以作為其他三維建模軟件與3Dmax相互轉換的通用格式類型。
3.2 .igs格式
.igs是大部分的三維設計軟件均能打開或者導入的三維模型文件格式。但是,該格式往往只注意了圖形數(shù)據(jù)轉換而忽略了其他信息的轉換,因此導致兼容性很差。由不同軟件生成的igs文件相互讀取的過程中,可能會導致破面、信息不全、無法讀出實體等問題出現(xiàn),并且在實際操作過程中出錯率很高。
3.3 .prt格式
.prt格式是一種強大的參數(shù)化文檔,通常用UG或Pro/E軟件打開。
3.4 .stp格式
.stp是一種獨立于系統(tǒng)的產(chǎn)品模組交換格式,是三維設計中比較常用的文件格式,該格式兼容性好,在各軟件中轉換時數(shù)據(jù)不會丟失的太厲害。
目前通過大部分三維建模軟件建立的三維模型都可以導成.stp格式,但是,3Dmax卻不兼容此格式,因此其他軟件如果生成該格式文件,在3Dmax中將無法導入。
3.5 .3ds格式
.3ds是3Dmax建模軟件的衍生格式,可用于渲染。由CAD或Sketchup制作的三維模型可以直接導出為.3ds格式。但其他三維建模軟件卻無法直接導出該格式文件。
3.6 .obj文件格式
.obj文件很適合用于3D軟件模型之間的互導,可以作為3Dmax和maya互相轉換的一種格式。
4 常用的三維建模軟件
4.1 UG
UG是Unigraphics的縮寫,該軟件功能強大,可以輕松實現(xiàn)各種復雜實體及造型的建構。目前已經(jīng)成為模具行業(yè)三維設計的一個主流應用。
該軟件常用的格式包括.prt,.igs,.stp,.dwg等等,兼容性強。通過UG建立的三維模型可以導出.stl格式,導入3Dmax中繼續(xù)編輯,出錯率很低。
4.2 Solidworks
Solidworks功能齊全,標準件庫完整,在實際工作中也可以將自己畫的圖編輯后放入標準件庫,以供以后使用,十分方便。
該軟件常用的格式包括.igs,.stp,.prt,.stl等等,兼容性強。但是當采用該軟件導出.stl格式時往往會自動轉存很多個小文件,對于稍復雜的三維模型甚至會自動分化為成千上萬個小文件,對后續(xù)工作帶來很大麻煩,筆者感受頗深。通過深入研究發(fā)現(xiàn)可以通過x_t格式與UG進行相互轉換,并且在實際工作中出錯率很低,是個不錯的方法。
4.3 Pro/E
Pro/Engineer操作軟件以參數(shù)化著稱,是參數(shù)化技術的最早應用者,采用單一數(shù)據(jù)庫來解決特征的相關性問題,在目前的三維造型軟件領域中占有著重要地位。該軟件采用了模塊方式,用戶可以根據(jù)自身的需要進行選擇,而不必安裝所有模塊;可以分別進行草圖繪制、零件制作、裝配設計、鈑金設計、加工處理等,保證用戶可以按照自己的需要進行選擇使用。
該軟件常用的格式包括.prt,.igs,.stp,.dwg等等,兼容性強。并且作為當今世界機械CAD/CAE/CAM領域的新標準而得到業(yè)界的認可和推廣,是現(xiàn)今主流的CAD/CAM/CAE軟件之一,特別是在國內產(chǎn)品設計領域占據(jù)重要位置。
4.4 3Dmax
3D Studio Max簡稱為3Dmax,是基于PC系統(tǒng)的三維動畫軟件。廣泛應用于廣告、影視、工業(yè)設計、建筑設計、三維動畫、多媒體制作、游戲、輔助教學及工程可視化等領域。軟件性價比高,操作思路清晰,操作簡單,使三維建模工作十分簡潔高效。
3Dmax通常導出.obj格式與maya相互轉換,3Dmax與maya都可直接導出.fbx格式直接導入Unity3D中進行操作。
4.5 Sketchup
Sketchup是一套直接面向設計方案創(chuàng)作過程的設計工具,常常應用于三維建筑設計方案創(chuàng)作。該軟件最大的特點就是使用簡便,使用者可以快速上手,并且使用SketchUp創(chuàng)建的3D模型直接輸出至GoogleEarth里,十分方便。
該軟件常用的格式有dwg和3ds。通常通過3ds格式與3Dmax相互轉換。
5 不同建模軟件、不同文件格式之間的相互轉換
各種軟件及各種存儲格式都有其自身的優(yōu)勢和特點,在實際應用中靈活轉換,才能更大的發(fā)揮軟件的效用。三維模型最終轉換成Untiy3D能夠采納的格式,再進一步對其進行操作,從而可以大大提高工作效率和質量。
參考文獻
[1]wapbaike.baidu.com[Z].
[2]m.baike.haosou.com[Z].