999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

三維建模過程復用MEL腳本研究

2018-04-21 08:10:12胡曉輝郭建平
科技創新與應用 2018年10期

胡曉輝 郭建平

摘 要:三維建模過程復用是動畫制作過程中常見的操作,傳統的方式是手工建模和手工復制,大量的重復性操作造成了時間和精力的巨大浪費。文中以動畫場景中創建一組旋轉噴泉群為例,通過Maya MEL語言對三維建模過程復用的操作進行程序開發,此外還開發了該MEL腳本的可視化操作界面。經調試,該MEL腳本可快捷實現旋轉噴泉群的參數化建模,對其它三維建模過程復用的MEL腳本開發提供了設計思路。

關鍵詞:Maya;三維建模;復用;MEL語言;模塊

中圖分類號:TP391.4 文獻標志碼:A 文章編號:2095-2945(2018)10-0005-03

Abstract: The reuse of 3D modeling process is a common operation in animation production. The traditional way is manual modeling and manual copying. A large number of repetitive operations have caused a huge waste of time and energy. Taking the creation of a group of rotating fountains in the animation scene as an example, a program is developed for the reuse of 3D modeling process using Maya MEL language. In addition, the visual operation interface of the MEL script is also developed. After debugging, the MEL script can quickly realize the parameterized modeling of the rotating fountain group, and provides the design idea for the MEL script development of other 3D modeling process reuse.

Keywords: Maya; 3D modeling; reusing; MEL language; module

引言

隨著計算機軟硬件技術和計算機圖形學的快速發展,三維動畫制作已經在多個領域推廣開來。Autodesk公司的三維動畫軟件Maya在動畫設計和制作中應用廣泛。Maya的可擴展性較強,MEL語言可以進行Maya命令的擴展和模塊的開發,通過編制MEL腳本,可以大大簡化一些動畫制作過程中的重復性操作,提高了動畫制作效率,節約了大量的人力物體。動畫制作中三維建模過程復用的情況非常常見,完全可以利用MEL腳本實現重復建模和模型的多次重復調用。

1 MEL語言在Maya中的應用

MEL語言和其它程序設計語言一樣是通過命令來實現程序控制的。三維制作軟件Maya可以看作是由MEL命令集與節點組合而成,MEL用來動態的控制過程,節點是靜態的來表現結果。雖然在Maya軟件操作界面中,一般用戶察覺不到在操作過程中對MEL語言的調用和執行,但是實際上所有的Maya操作都離不開MEL語言。

因為MEL語言的單獨命令都只能執行一條程序操作,很少有操作僅僅靠一個獨一的MEL語言命令就能實現的,所以在Maya中,MEL語言的調用都是以MEL腳本的形式進行。根據需要的操作而將多個MEL語言命令組合起來放在一起就構成了一個MEL腳本。將執行特定操作的MEL語言命令集寫入一個數據文件中,那么這個數據文件就是一個腳本文件。MEL腳本的設計者可以定義一個命令來調用和執行這個腳本文件,這個命令是一個Maya中新的命令,也叫做腳本命令,腳本命令和Maya中自帶的命令一樣,還能在其它腳本中調用。Maya中調用這種新的MEL腳本程序,除了可以使用自定義命令來執行,還可以將這個自定義命令添加編輯到Maya系統菜單中,通過鼠標點擊菜單中的該自定義命令關聯到MEL腳本程序執行所需要的操作。

可以通過兩種方法運行MEL腳本,一種是對于那些沒有進行模塊化設計的MEL腳本,這種腳本只是單獨的標準命令集文件,通過調用該腳本直接執行其中的MEL命令,這種MEL腳本多用于功能單一、需要執行的操作不存在動態設置的情況。另一種是可視化腳本調用。將寫成標準命令的MEL腳本通過可視化操作界面執行調用。這樣雖然需要另行制作可視化模塊界面,但是可以通過MEL腳本中的變量設置與關聯,實現在模塊化調用MEL腳本時的動態參數調整和輸入,適合于執行的MEL腳本需要用戶參與變量設置的情況。

2 三維建模過程復用模塊的開發

三維建模過程復用是動畫制作過程中常見的操作。例如在一個動畫制作項目中,劇本中的場景需要創建一組旋轉噴泉群。這組旋轉噴泉群是由多個結構和外形相同的單獨噴泉組成,其中中間的一個噴泉稍大一些,其余噴泉作為小噴泉圓形均布環繞這個大噴泉,這些噴泉在場景中需要一直噴射水花,然后水花落進噴泉的水池里。

這組旋轉噴泉如果在Maya中逐個建模,再手工復制到指定位置費時費力,通過MEL語言編制一段腳本可以實現這個建模過程復用。主要思路和過程是先制作一個三維噴泉模型,把它作為一個整體建模,放置到場景中特定位置,再復制若干個噴泉模型圍繞在這個中央噴泉周圍。建模效果如圖1所示。

創建如圖1中的一組旋轉噴泉群,在這個小場景中,其中的第一個噴泉底座的模型直接建模,周圍的其它噴泉底座模型是通過命令陣列復制而來。噴泉的底座大小、層數都可能變化,噴泉的水流向上噴射的花型、速度、高度也可能不同,這些都需要設置變量參數。這些變量參數可以依據用戶的設計需要輸入,用戶可以快捷方便的通過操作輸入界面創建不同的旋轉噴泉群。

噴泉噴出的水花是向上發射的,圓形擴散,然后在重力的作用下自由落體。這些水花可以用粒子實現,場景中創建一個向上的粒子發射器,擴散的形狀和速度可以通過變量參數控制,噴泉水噴出后,要給粒子增加重力,使得水粒子在重力作用下落回到噴泉池子中。此外,在水落下時還需要設置水粒子與水池中的水進行碰撞。通過上述方式就創建出模擬現實生活場景的噴泉水池。

發射器可以通過以下MEL語句實現:

emitter -pos 0 0 0 -type direction -sro 0 -r 200 -nuv 0 - cye none -spd -cyi l $Fountain_Speed -srn 0 -nsp l - mxd 0 -tsp 0 -mnd 0 -dx 0 -dy l -dz 0 -sp $Fountain_Spread -n myEmitter;

particle -n myParticle;

connectdynamic -em myEmitter myParticle;

語句中的變量$Fountain_Speed用來存儲噴泉水柱噴出的速度值,變量$Fountain_Spread用來存儲噴泉水柱的擴散值,這兩個變量都由用戶在程序腳本模塊的操作界面輸入。

在Maya場景中設置基本重力,定義水粒子運動受重力場影響。水粒子與水池中的水進行碰撞可以利用循環語句來反復調用,保證噴泉不斷水流不斷,關鍵性腳本語句是:

int $j=0;

for ($j=0;$j<5;$j++)

{select -r myParticle;

select -add ("surface"+$j);

collision -r l -f 0 ("surface"+$j);

connectdynamic -c ("surface"+$j) myParticle;

event -n ("event"+$j) -die 0 -count 0 myParticle;

event -name ("event"+$j) -e -die l myPartical;}

制作完單一的噴泉模型之后,再利用MEL語言實現多個噴泉的陣列圓形環繞,同樣采用一個for循環來實現,關鍵性腳本語句是:

int $j;

for ($j=1;$j<13;$j++)

{$Exp=$Exp+"group"+$j+".rotateY"="+$Rotate_Speed+"*frame+"+($j-1)*(360/$num)+";\nif ("+($j%2)+"==0)\n{\nif(frame%(10/"+$Glitter_Speed+")<("+$Glitter_Speed+"*2)))\ngroup"+$j+".visibility=0;\nelse\ngroup"+$j+".visibility=1;\n}\nelse\ngroup"+$j+"..visibility=1;\n";}

expression -s $exp -o "" -uc all -ae 1 -n experssionl;

這段語句可以根據用戶設置,實現旋轉噴泉群的建模,噴泉可以實現旋轉。語句中的變量$Rotate_Speed控制旋轉速度。

旋轉噴泉群建模腳本制作完成之后,再創建一個可視化模塊界面與這段腳本程序相互關聯,通過該模塊界面可直接調用和運行旋轉噴泉群建模腳本。旋轉噴泉群的建模效果都可以通過界面進行直觀快捷的設置,創建的旋轉噴泉群模型經過測試如果不符合要求,還可以對參數進行修改重新建模,直至滿意。旋轉噴泉群建模的制作界面如圖2所示。

這個可視化界面中的radius參數用來控制噴泉陣列的圓周半徑,fountain Speed參數用來控制水柱的噴射速度,fountain Spread參數控制水的擴散范圍,num參數控制噴泉陣列的數量。設置好這些參數后點擊“create”即可創建旋轉噴泉群,“delete”按鈕可以刪除不滿意的模型。Rotate Speed用來控制圓周的噴泉旋轉速度,glitter Speed用來控制噴泉群的動作頻率。設置好之后點擊“anim”可以運行動畫。

3 結束語

文中利用MEL語言制作了三維建模過程的復用的Maya二次開發腳本,該腳本可以實現旋轉噴泉群模型的批量建模,總結步驟如下:

首先,根據場景需要對建模過程進行分析;其次,運用MEL腳本實現建模和模型的復用,一些模型的動態數據可以設計成變量由用戶控制;最后,制作這個三維建模過程復用模塊的可視化制作界面,通過這個界面實現最終的三維建模。

在動畫制作過程中遇到的其它類型的模型需要建模和復用的,都可以通過這個思路編寫MEL腳本模塊來實現。

參考文獻:

[1]Mark R. Wilkins. Maya動畫師MEL腳本編程全攻略[M].北京:電子工業出版社,2004.

[2]陳清,韓杰,楊娟.電腦動畫設計與制作[M].濟南:山東美術出版社,2006.

[3]戴健文.面向真實感渲染的材質轉換系統與優化[D].杭州:浙江大學,2016.

[4]何偉.MEL腳本語言在數字集群動畫中的設計與實現[D].北京:北京工業大學,2012.

[5]賀瞿.基于動力學原理的Maya粒子特效插件[D].上海:上海交通大學,2011.

[6]李志豪,李才應.Maya命令參考大全[M].北京:兵器工業出版社,2006.

[7]劉娟娟.基于MayaMEL語言的數字媒體動畫控制技術的研究[J].電子技術與軟件工程,2015(1):115.

[8]羅漢.MayaMEL動畫編程從入門到精通[M].北京:兵器工業出版社,2005.

[9]孟詩涵.創意材質在Maya動畫創作中的表現研究[D].長春:東北師范大學,2016.

[10]田玉婷.Maya的MEL語言在項目中的開發應用[J].黑龍江科技信息,2007(22):100.

[11]王澄宇.Maya腳本應用手冊:表達式與MEL語言[M].北京:人民郵電出版社,2013.

[12]吳文哲.MEL語言在Maya場景設計中的應用[J].數字技術與應用,2010(3):65-67.

[13]夏航.MAYA軟件中使用MEL腳本設計粒子碰撞[J].中國現代教育裝備,2010(17):31-34.

[14]徐冰.數字媒體動畫控制技術研究[J].電子制作,2015(4):109-110.

[15]于海雯.Maya編程技術[J].電腦知識與技術,2013(36):8409-8410.

[16]胡曉輝,萬嵩.基于軟件工程及其模型的課件開發研究[J].高教學刊,2015(23):95-96.

主站蜘蛛池模板: 18黑白丝水手服自慰喷水网站| 91久久夜色精品| 欧美黄网在线| 国内a级毛片| 五月丁香在线视频| 久草国产在线观看| 亚洲精品制服丝袜二区| 亚洲三级色| 亚洲男人天堂网址| 中国一级特黄大片在线观看| 亚洲天堂在线视频| 青青青国产视频手机| 国产自在线播放| 欧美一级一级做性视频| 亚洲天堂网视频| 91人妻日韩人妻无码专区精品| 免费精品一区二区h| 亚洲久悠悠色悠在线播放| 丁香六月综合网| 免费不卡在线观看av| 国产免费怡红院视频| 丝袜久久剧情精品国产| 精品国产91爱| 成人永久免费A∨一级在线播放| 国产精品思思热在线| 午夜久久影院| 午夜欧美理论2019理论| 无码精品一区二区久久久| 国产乱子伦精品视频| 欧美国产成人在线| 久久久精品国产SM调教网站| 丁香婷婷激情网| 国产一二三区在线| 久久人搡人人玩人妻精品| 亚洲欧美国产高清va在线播放| 成人国产精品2021| 漂亮人妻被中出中文字幕久久| 国产精品部在线观看| 人禽伦免费交视频网页播放| 国产精品永久免费嫩草研究院| 中日韩欧亚无码视频| 亚洲aⅴ天堂| 国产福利一区在线| 久久伊人色| 一区二区自拍| 91欧美在线| 天天综合网亚洲网站| 全色黄大色大片免费久久老太| 国产成人综合亚洲网址| 精品国产污污免费网站| 久久久久亚洲精品无码网站| 亚洲男人天堂2018| 99er精品视频| 996免费视频国产在线播放| 人妖无码第一页| 福利视频久久| 成人在线综合| 亚洲日韩每日更新| 亚洲一区二区三区国产精品 | 国产偷倩视频| 日本一区二区三区精品视频| 天堂va亚洲va欧美va国产 | 视频国产精品丝袜第一页| 伊人查蕉在线观看国产精品| 色播五月婷婷| 伊人色综合久久天天| 青青青伊人色综合久久| 国产拍在线| 福利在线不卡一区| 99久久精品国产麻豆婷婷| 亚洲码在线中文在线观看| 成年人免费国产视频| 亚洲欧美不卡中文字幕| 亚洲国产精品成人久久综合影院| 免费一级无码在线网站| 五月天福利视频| 日韩专区欧美| 超碰91免费人妻| 国产乱子伦视频在线播放| 色婷婷综合激情视频免费看| 亚洲日韩国产精品无码专区| 亚洲第一区在线|