學(xué)習(xí)啦 > 論文大全 > 技術(shù)論文 > 網(wǎng)絡(luò)編程技術(shù)論文(2)

網(wǎng)絡(luò)編程技術(shù)論文(2)

時(shí)間: 家文952 分享

網(wǎng)絡(luò)編程技術(shù)論文

  網(wǎng)絡(luò)編程技術(shù)論文篇二

  Maya編程技術(shù)

  摘要:對Maya中表達(dá)式和腳本這2種動畫編程技術(shù)分別作了介紹,最后比較了這2種編程技術(shù)。

  關(guān)鍵詞:動畫編程;表達(dá)式;腳本;MEL

  中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2013)36-8409-02

  Rendering properties on Maya Particles

  YU Hai-wen

  (College of Information Engineering NanChang University ,Nanchang 330000,China)

  Abstract:The expression of Maya and script in the 2 animated programming technology are introduced;In the end ,Comparison between the 2 kinds of programming technology.

  Key words:Animated programming; Expression; Script; MEL(Maya Embedded Language)

  本文主要介紹Maya表達(dá)式和腳本的一般用法。

  1 表達(dá)式

  表達(dá)式動畫是一種建立在數(shù)學(xué)模型基礎(chǔ)上的動畫控制方式,即將動畫的運(yùn)動軌跡、與時(shí)間的關(guān)系、與某個(gè)屬性的關(guān)系轉(zhuǎn)化為數(shù)學(xué)運(yùn)算的模型關(guān)系,來達(dá)到控制物體產(chǎn)生動畫的目的。

  1.1 動畫方式

  所有的三維軟件控制動畫的方式有3種:關(guān)鍵幀動畫、關(guān)聯(lián)動畫、表達(dá)式動畫。

  1)關(guān)鍵幀動畫直接記錄物體參數(shù)隨時(shí)間的變化關(guān)系;

  2)關(guān)聯(lián)動畫記錄兩個(gè)屬性之間的變化關(guān)系;

  3)表達(dá)式動畫則將動畫中的相關(guān)參數(shù)、時(shí)間屬性、運(yùn)動軌跡等用數(shù)學(xué)公式模擬表示出來;

  1.2 控制物體運(yùn)動的基本方式

  1)Keyframe(關(guān)鍵幀動畫)

  2)Set Driven Key(驅(qū)動關(guān)鍵幀)

  3)Constraint(約束)

  4)Motion Path(路徑動畫)

  5)Expression(表達(dá)式動畫)

  6)Direct Connection(屬性關(guān)聯(lián))

  在這6種方式中,Set Driven Key(驅(qū)動關(guān)鍵幀)、Constraint(約束)、Direct Connection(屬性關(guān)聯(lián))都是標(biāo)準(zhǔn)的關(guān)聯(lián)動畫,而Motion Path(路徑動畫)則將關(guān)鍵幀動畫與關(guān)聯(lián)動畫的優(yōu)勢結(jié)合起來,顯得對運(yùn)動中軌跡的控制和屬性的關(guān)聯(lián)更加靈活。

  1.3 表達(dá)式動畫

  在3DMax、Maya等3D軟件中,一般首先通過建模建立所需要的場景、角色、等,而表達(dá)式動畫的實(shí)質(zhì)是將這些建模中所定義的場景物體、角色等定義為對象,結(jié)合采用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,在表達(dá)式編程中利用參數(shù)來控制這些對象,這些參數(shù)可以是時(shí)間參數(shù),也可以是對象的一個(gè)參數(shù)受控于另一個(gè)參數(shù)來產(chǎn)生某種數(shù)學(xué)運(yùn)算下的動畫軌跡,最終實(shí)現(xiàn)建立與改變模型與動畫的設(shè)計(jì)。故通過表達(dá)式創(chuàng)建出的三維動畫就稱為表達(dá)式動畫。

  除了特別加以說明,一般情況下,表達(dá)式動畫對物體運(yùn)動的控制是全程的,而且只要表達(dá)式中關(guān)聯(lián)的數(shù)學(xué)模型描述是對的,那么動畫中受控物體屬性值一般就不會出現(xiàn)錯(cuò)誤動作。

  例如,九大行星運(yùn)動軌跡都是橢圓,顯然這種動畫用軌跡動畫很難實(shí)現(xiàn),但用表達(dá)式動畫結(jié)合數(shù)學(xué)中橢圓公式的應(yīng)用,就很易于實(shí)現(xiàn);而且,表達(dá)式動畫實(shí)現(xiàn)中,通過修改幾個(gè)簡單的參數(shù)就可以很輕松地調(diào)整橢圓軌跡、形狀等,相比于關(guān)鍵幀動畫需要修改大量參數(shù)而言,方便得多。

  2 腳本

  2.1 MEL

  MEL(Maya Embedded Language),意思就是“Maya內(nèi)嵌語言”,是Maya自帶的高級編程語言,由于涉及到對Maya中建模得到的物體對象的操作,建議必須具備有面向?qū)ο缶幊陶Z言的基礎(chǔ)的用戶學(xué)習(xí)它。

  Maya中所有的用戶界面,包括菜單、視窗、各種工具都是MEL語言編寫而成的。用戶在Maya中進(jìn)行的所有操作,無論是通過菜單還是通過命令行,或者是采用其他方式對場景或場景中的物體進(jìn)行的操作,實(shí)際上都是通過調(diào)用MEL命令實(shí)現(xiàn)的。

  Maya的MEL命令對用戶是完全開放的,即給出了一個(gè)開放的拓展空間,用戶可以自己擴(kuò)展和定制Maya。比如,用戶可以編寫自己的界面而不必用類似C++這種較為底層的外部開發(fā)工具,用戶可以像搭積木一樣隨意拼裝自己的工具,可以自己開發(fā)Maya默認(rèn)狀態(tài)下不能提供的功能,或重新組織Maya的功能等,即通過MEL,可以按照自己的喜好在Maya下創(chuàng)建出特定的項(xiàng)目環(huán)境。

  2.2 腳本使用

  在腳本中有三種運(yùn)行MEL命令的方法:

  如果返回值在以后不需要保留引用,則可以作為獨(dú)立語句運(yùn)行;

  如果返回值在以后需要保留引用,比如想將返回值存入某變量,則可以考慮將其放入反引號中;

  如果想在字符串中構(gòu)造某命令并執(zhí)行它,則使用eval函數(shù)命令。

  MEL腳本使用的情況無非是如下幾種需求:

  在Script editor窗口或純文本編輯器下產(chǎn)生MEL程序;

  執(zhí)行用戶建模、動畫、渲染等的腳本程序;

  可以按項(xiàng)目特定的場景自定義UI,則用戶使用MEL指令時(shí)可以脫離Maya的UI,直接使用熱鍵,訪問快速而方便;

  直接給某屬性輸入準(zhǔn)確的值;

  比如用MEL腳本建立一個(gè)球:

  1)打開記事本;

  2)在記事本中輸入:

  Global proc mysp()

  {

  sphere -p 0 0 0 -ax 0.5 1 0 -ssw 0 -esw 300 -r 1.5 -d 3 -ut 0 -tol 0.01 -s 16 -nsp 16 -ch 1;

  }

  3)保存該文件,文件名:mysp.mel(注意后綴!);

  4)之后運(yùn)行該文件,就可以在Maya按mysp.mel腳本文件中的制定參數(shù)中建立一個(gè)球。

  當(dāng)然,腳本運(yùn)行的環(huán)境設(shè)置、腳本書寫的基本規(guī)則、變量的定義、MEL中的數(shù)學(xué)邏輯運(yùn)算等,因篇幅原因,不再詳細(xì)解釋。

  3 MEL和表達(dá)式的區(qū)別

  1) MEL是間接控制物體屬性,是Maya編程的核心,也是利用Maya在3D世界自由創(chuàng)作的必需的語言工具;而表達(dá)式是直接控制物體屬性;

  2) 在屬性賦值或取值方面:在表達(dá)式編程中可以直接用“=”;而MEL腳本中則通過函數(shù)getAttr和setAttr來實(shí)現(xiàn);

  3) 表達(dá)式里有time和frame這兩個(gè)變量可以調(diào)用,而MEL無法直接使用(通過其他方法使用,比如currentTime -q);等。

  參考文獻(xiàn):

  [1] “火星時(shí)代”網(wǎng)站資源.Autodesk Maya培訓(xùn)系列[Z].

  [2] 張寶榮.Maya總動員—動畫編程篇[M].北京:清華大學(xué)出版社,2011.

  
看了“網(wǎng)絡(luò)編程技術(shù)論文”的人還看:

1.計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)論文的范文

2.淺談網(wǎng)絡(luò)技術(shù)的論文3篇

3.網(wǎng)絡(luò)技術(shù)論文三篇

4.計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)類論文范文

5.網(wǎng)絡(luò)技術(shù)應(yīng)用論文三篇

2786718