楊魯
摘要:該文介紹了基于MAYA和Virtools技術的虛擬組裝與維修學習平臺的構建,運用MAYA創(chuàng)建三維模型、制作三維模擬動畫,導出到Virtools中裝配并進行交互控制。
關鍵詞:MAYA;Virtools;建模技巧
中圖分類號:TP391 文獻標識碼:A 文章編號:1009-3044(2015)28-0189-03
3D Modeling Based on MAYA and Applied in Virtools
YANG Lu
(Wuxi City College of Technology, Wuxi 214153, China)
Abstract: This article introduces Based on MAYA and Virtools technology, virtual assembly and maintenance learning platform, then use MAYA to create 3d model, 3d animation, export to the Virtools assembly and interactive control. technology.
Key words: MAYA; Virtools; Modeling Tips
1 前言
虛擬現(xiàn)實技術是一種可以創(chuàng)建和體驗虛擬世界的計算機仿真系統(tǒng)。它利用計算機生成一種多源信息融合的交互式的三維動態(tài)視景和實體行為的系統(tǒng)仿真使用戶沉浸其中。虛擬環(huán)境是由計算機生成的、實時動態(tài)的三維立體逼真圖像;更好地讓用戶沉浸入虛擬環(huán)境中進行交互控制。
當下,醫(yī)療、娛樂休閑、航空航天、工業(yè)仿真、建筑漫游、應急推演、文物復現(xiàn)等領域更多的使用虛擬現(xiàn)實技術。虛擬環(huán)境的構建也伴隨著技術的迭代發(fā)展擁有更多的技術和軟件來實現(xiàn),主要的軟件有VRML、XSI、3DsMax、MAYA等。對現(xiàn)有的這幾款軟件進行綜合考量和對比,首先剔除XSI,主要是由于其對硬件以及團隊合作的制作環(huán)境要求與院校能提供相距甚遠。其次排除VRML,Virtual Reality Modeling Language是虛擬現(xiàn)實造型語言的簡稱,是一種基于Web,面向?qū)ο蟮娜S造型語言。它要求用戶群體自身具有較高的知識結(jié)構,還要求用戶群體必須會運用Java程序和編程VRML交互動畫等,實際應用操作可行性低,并且實現(xiàn)起來時間成本高。最后刪除3DsMAX,是更多地考慮到MAYA軟件超強的建模、容錯能力,以及二款軟件的發(fā)展前景和可擴展性。最終選取使用MAYA軟件結(jié)合Virtools進行虛擬組裝與維修學習平臺開發(fā);具體實施為運用MAYA軟件創(chuàng)建三維虛擬環(huán)境、制作三維模擬動畫;運用Virtools技術為載體將三維模型與場景轉(zhuǎn)化為可用鍵鼠控制的360°瀏覽漫游系統(tǒng)。
2 Virtools與MAYA簡介
2.1 Virtools簡介
Virtools公司是法國一家擁有尖端技術的小型三維引擎或平臺的公司,微軟XBOX系統(tǒng)認可其所開發(fā)的三維引擎方案。其特點是方便易用應用領域廣。Virtools是一款整合型軟件,可以將常用的現(xiàn)有文件格式整合在一起,如三維模型、二維圖形圖像或者音效等。其具備的豐富互動行為模塊,可以讓沒有程序基礎的美術人員利用內(nèi)置的行為模塊快速制作出許多不同用途的產(chǎn)品運行于實時3D虛擬實境中。如虛擬試衣、次時代體感游戲、多媒體投放、建筑環(huán)游、智能電視、仿真與產(chǎn)品展示、教育實訓等 。在輸出環(huán)節(jié)中,Virtools軟件不僅可以編譯成單機運行的可執(zhí)行文件,更可以輸出成Web網(wǎng)絡瀏覽的格式。如此開發(fā)者便可將作品輸出成在互聯(lián)網(wǎng)中瀏覽交互的增強型虛擬現(xiàn)實,或在線進行二次編輯與開發(fā)。
但是鑒于Virtools軟件本身并不具備三維的模型建模和動畫模塊,因此在使用Virtools進行構建虛擬組裝與維修學習平臺時,需要第三方三維設計軟件的配合。目前3DsMAX、MAYA、LightWave等軟件都開發(fā)出導入Virtools軟件的文件格式轉(zhuǎn)換插件。
2.2 MAYA簡介
Autodesk旗下的著名三維建模和動畫軟件,也是現(xiàn)在最為流行的頂級三維動畫軟件,在國內(nèi)外絕大多數(shù)的視覺設計領域都在使用。MAYA可以大幅提高影視特效、游戲CG等領域設計、創(chuàng)作、開發(fā)的工作效率;同時多邊形建模模塊,通過新的運算法則提高了性能,多線程支持可以充分利用多核心處理器進行三維動畫的烘培與渲染,此外在角色建立和動畫方面也更具張力。MAYA軟件被廣泛應用于游戲開發(fā)、影片特效制作、欄目包裝、游戲CG呈現(xiàn)和設計行業(yè)等領域,它的主要特點有:
1)功能豐富,體系完善:建模功能豐富而強大是選取MAYA構建虛擬組裝與維修學習平臺的重要原因;此外在動畫方面與生俱來的優(yōu)勢,很多3DsMAX需要第三方插件完成,MAYA用戶可以快速操作粒子系統(tǒng)、毛發(fā)生成、植物創(chuàng)建、衣料仿真等,體系相對完善。
2)交互友好,操作簡便:相比其強大的功能,MAYA可以說是UI更加人性化,交互友好,操作簡便、入門相對輕松的三維軟件。
3)配合順暢、高兼容性:最新的MAYA2016版本提供更多的接口技術和軟件優(yōu)化,數(shù)據(jù)交互得到極大改進,操作速度明顯提高。多種格式文件的導入和導出快速地提高了兼容性。
3 MAYA模型創(chuàng)建
虛擬組裝與維修學習平臺的基礎是三維模型的創(chuàng)建,模型的表現(xiàn)力直接影響虛擬平臺的真實呈現(xiàn)度。在運用MAYA建模模塊部分來進行模型創(chuàng)建時,要充分考慮到軟硬件配置的限制和虛擬平臺運行時的實時性,以及互聯(lián)網(wǎng)帶寬對于平臺交互響應的制約。因此在創(chuàng)建模型過程中應普遍遵循游戲建模的相應法則:在保證視覺效果不失真的前提下,盡量采用最合理的布線來構建模型,保持模型面數(shù)控制在一定的數(shù)量內(nèi)。MAYA建模功能的強大在這個時候就體現(xiàn)出來,同時參考游戲建模時的部分技巧,例如:使用標準化參數(shù)創(chuàng)建模型;用凹凸紋理代替復雜貼圖;減少幾何體的細分數(shù);刪除不可見的面;合并多邊形中重合的點線;分離模型獨立建模,以便交互和瀏覽在虛擬環(huán)境中流暢進行;使用網(wǎng)格中精簡命令對模型面數(shù)進行優(yōu)化等。區(qū)別于游戲建模的是,模型擁有相應的物理性質(zhì),不能相互穿越。
3.1 資料搜集整理分析
在使用MAYA構建虛擬組裝平臺時,前期需要搜集組裝資料工作需要拆解多臺電腦主機,將主機內(nèi)部件進行歸納分析,分析出各部件的共性和個性,然后將所要做的模型進行模糊化處理,并采用流行的電源下置式設計,概括出計算機組裝包含以下主要模塊,如圖1所示:
3.2 模型創(chuàng)建
將主要模塊部分選擇典型的部件進行數(shù)碼拍攝或者掃描,形成正交、側(cè)面、前面三視圖。模型的創(chuàng)建基本采用三視圖圖像參考繪制。通過對主要模塊的模型分析得出采用兩種主要方法:多邊形(Polygon)建模進行主體部分的創(chuàng)建、曲面(NURBS)建模進行彎曲弧度部分以及線材的建模。在建模時,可根據(jù)需要選擇多種建模格式的相互轉(zhuǎn)換。例如電源的建模就使用了多邊形、細分曲面及NURBS建模等多種建模方法。其中像CPUFAN模型的創(chuàng)建,首先用多邊形中平面多次擠出(Extrude)制作出散熱器底座部分,用變形修改器下的非線性擴張(Flare)、晶格對生成的模型進行調(diào)節(jié)變形;接著創(chuàng)建散熱器風扇底座,運用多邊形中的圓柱體修改細分數(shù),再利用倒角(Beve1)、擠出(Extrude)命令進行創(chuàng)建;創(chuàng)建散熱器風扇,圓柱體進行默認參數(shù)修改并擠出(Extrude)二級形成扇葉,執(zhí)行變形命令中的非線性扭曲(Twist)對扇葉進行扭曲操作;運用曲面建模中的放樣(Loft)命令制作風扇線材和接口;最后加入修飾零件并運用對齊工具(Align tools)命令進行組合,對齊后使用Ctrl+G快捷鍵進行成組(Group)操作,至此完整的CPU散熱器完成如圖2所示。
3.3 材質(zhì)與貼圖
模型創(chuàng)建優(yōu)化完成后就是賦予模型材質(zhì)和紋理貼圖。在虛擬組裝學習平臺中,涉及基礎材質(zhì)(Blinn、Lambert)的使用。通過調(diào)節(jié)公用材質(zhì)屬性以及鏡面反射著色,可創(chuàng)建出金屬、磨砂、亞光等材質(zhì)。當然基礎材質(zhì)也可以使用特殊效果來模擬機箱風扇發(fā)光,通過調(diào)節(jié)透明度來形成透明或半透明材質(zhì)模擬側(cè)透機箱擋板。而且對于不同的部件應采取多種方案結(jié)合,靈活搭配。例如:主板、顯卡、內(nèi)存等電路基板采用(Lambert)材質(zhì),而對于各種散熱片、散熱條、螺絲等金屬體則采用(Blinn)材質(zhì),展現(xiàn)出鋁合金,銅管,鋅合金的質(zhì)感。貼圖是覆蓋于物體表面的二維圖像,利用貼圖可以在簡化模型的復雜度基礎上突出局部細節(jié),并且可以創(chuàng)建反射、折射、凹凸,鏤空等效果,且比基礎材質(zhì)更加精細和真實。例如,金手指的效果可以使用貼圖來完美展現(xiàn),模型則只需要一個面片就好,降低制作難度,極大地提高了執(zhí)行效率。由此可見材質(zhì)和貼圖的靈活運用可以增加模型的質(zhì)感,完善模型的造型,使構建出的虛擬組裝與維修學習平臺更接近現(xiàn)實環(huán)境。
4 Virtools中模型的運用
4.1 Virtools導入模型
首先檢查MAYA中創(chuàng)建的模型各項細節(jié),然后將模型用Virtools Export Plugins插件以NMO的格式導出。NMO是Virtools軟件的默認格式,用于存儲角色和場景以及物體等信息,其中包含了一個以上單元信息以及動畫腳本。然后,將導出生成的NMO文件導入到Virtools軟件中,添加進行交互的模塊化腳本。軟件強大之處在于可以保存并導出為多種項目類型:1)可編輯的工程文件CMO文件格式,但是只能導入Virtools中才可進行單機的交互操作。2)也可以通過將項目打包成VMO文件格式后在網(wǎng)絡中傳播,只要客戶端安裝有Virtools Web Player插件,就可進行交互操作。
3)還可以可以通過Virtools自帶的程序開發(fā)包SDK,利用編程的方法將項目打包成EXE文件格式,可以在任一版本W(wǎng)indows系統(tǒng)中運行。
正是由于Virtools不是一款純粹的三維軟件,所以在導出時會出現(xiàn)不易識別等問題。具體原因在于導出時,模型的編譯可能會出現(xiàn)三種情況:
1)導出的模型文件節(jié)點信息都能被Virtools所兼容,那么模型將完整的儲存在文件中,為Virtools調(diào)用。
2)當模型部分節(jié)點信息不被Virtools支持,那么編譯器將依據(jù)自身的編譯算法,對相應節(jié)點信息進行轉(zhuǎn)化,雖然格式和特征的本質(zhì)發(fā)生部分變化,但是保留并滿足大部分視覺等方面。3)當模型中出現(xiàn)Virtools根本識別不了的節(jié)點信息后,編譯器罷工,此時模型的相關節(jié)點信息將出現(xiàn)忽略甚至丟失。所以在輸出成可用的NMO文件格式時,需要將MAYA中制作導出的初級模型導入Virtools中進行檢驗,進行不斷的修改及糾錯,以及調(diào)試輸出時的參數(shù)設定。
4.2 模型的控制與整合
在Virtools中,模型的控制是依靠軟件內(nèi)置行為模塊(Building Block)實現(xiàn)的。Virtools中有500多個行為模塊可供使用,能夠?qū)氲娜S模型進行各種控制;如大小變化、平移、旋轉(zhuǎn)、貼圖顏色等,甚至還可以進行一些復雜的操作。模型的控制目前有2種方法:一種是直接調(diào)用行為模塊庫中的內(nèi)置Building Block模塊,另外一種是運用用C++進行Building Block模塊的重新編寫。
5 結(jié)束語
伴隨著科學的不斷發(fā)展和技術迭代,虛擬現(xiàn)實技術將會得到廣泛的應用與發(fā)展。本文介紹關于MAYA 模型的創(chuàng)建動畫的制作及其在Virtools中的應用,對于學生掌握和理解《組裝與維修》課程起到較好的效果,對于其他相關課程也有一定的啟示和指導意義。
參考文獻:
[1] 孫倩. 基于基于3DS MAX的三維建模及其在Virtools環(huán)境中的應用[J]. 中國科技信息, 2008(12).
[2] 孟慶武, 樊明, 神文龍. 基于Maya和Virtools的煤礦虛擬現(xiàn)實系統(tǒng)開發(fā)[J]. 山西焦煤科技, 2011(6).
[3] 陳浩, 張桂香, 張慶洪. 基于Virtools的機械裝備虛擬拆卸系統(tǒng)研究[J].現(xiàn)代制造工程, 2015(1).