ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:34.51KB ,
资源ID:2743720      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-2743720.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Maya mel基础理论.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

Maya mel基础理论.docx

1、Maya mel基础理论Maya内容:一、了解 MEL二、MEL要点三、概述MAYA脚本语言四、使用脚本语言编辑器五、使用脚本语言结点六、定义数据 七、编写语句八、定义作用(1) 【 导读 】MEL (Maya埋入式语言)为Maya提供了基础。Maya界面的几乎每一个要点都是在MEL指令和脚本程序上建立的。由于Maya给出了对于MEL自身的完全的访问,你可以扩展和定制Maya。通过MEL,你可以进一步开发Maya使它成为你和你的项目的独特而创新的环境。 一、了解 MEL top MEL (Maya埋入式语言)为Maya提供了基础。Maya界面的几乎每一个要点都是在MEL指令和脚本程序上建立的。

2、由于Maya给出了对于MEL自身的完全的访问,你可以扩展和定制Maya。通过MEL,你可以进一步开发Maya使它成为你和你的项目的独特而创新的环境。 为有效地使用Maya,你并不非得精通MEL。但是,熟悉MEL可以加深你使用Maya的专业能力。使用MEL的许多方面可以由只有很少编程经验或者没有经验者所使用。喜欢MEL并不非得喜欢编程。 有一些方法,它们可以使你获得MEL的好处而不必考虑编程的细节。一旦当你进行了产生MEL脚本语言的尝试,你会发现MEL可以给你提供可以想象到的最先进的数字化画图的方法。 为了获得Maya的输出,大部分可以使用MEL来做。这里是你可以使用MEL来工作的一些例子: 使

3、用MEL指令脱开Maya的用户界面,快速地产生热键,访问更深的要点。 给属性输入准确的值,脱开由界面强制引起的拘谨的限制。 对特定的场景自定义界面,对一个特定的项目改变缺省设置。 产生MEL程序和执行用户建模、动画、动态和渲染任务的脚本程序。 如何使用本教程 本教程叙述如何学习和使用Maya埋入式语言(MEL)。如果你初次接触MEL,本教材帮助你在使用MEL指令和脚本程序方面开始起步。一旦当你开始开发MEL程序的时候,本教材将继续帮助你,讲解如何能够使你获得用MEL产生的更多的指令、宏、程序和用户界面元素的输出。 本教材假定你对Maya已经有了基本的了解。如果你完全是新开始学习Maya,请看一

4、下学习Maya的教材,并对在Using Maya documentation set中描述的要点进行开发。 应该熟悉Maya的在线文件(见Online documentation)。特别是应该使你自己熟悉MEL Command Reference和DG Node Reference。 本教材的各处都有许多有关的MEL指令和程序码的例子。要运行例子程序,你可以把它们粘贴到Maya的脚本语言编辑器(Script Editor)里,并选择Edit Execute就可以了。使自己进一步地熟悉脚本语言编辑器的要点,执行脚本程序,并把程序保存到Maya的script目录中的一个文件中,可以参考Maya文件

5、和用户指南中的适当章节。如何学习更多的MEL内容为了学习更多的MEL内容,可以通过以下途径: 在线文件 训练课程 网站资源 在线文件本教材提供了一个使用MEL指令、程序和脚本语言的总的概览。有关特定的MEL指令的详细信息,请参阅MEL Command Reference。当你学习MEL时,你会发现你需要学习更多的有关Maya的相关图节点(dependency graph node)的内容。在线的DG Node Reference文件详细地描述了Maya的相关图节点。 训练课程为了学习更多的有关Maya和MEL的内容,请考虑学习AliasWavefront的训练课程。这些课程向你介绍MEL指令和

6、脚本语言程序,还可以向你提供最主要的内容的深层知识。要学习更多有关MEL的内容,可以先从MEL基本教程开始。在AliasWavefront的网站(Express Link to Training)中的课程安藕兔枋鍪怯行摹赜诳纬痰挠行 浴鄹窈偷锹嫉淖钚碌男畔 煞 mail给training-info,电话是416-874-8760或1-877-927-7478 (option 4),或FAX 416-369-6131。网站资源AliasWavefront的Assistant Online提供了许多有关Maya的教材,包括含有产生MEL脚本程序的教材。更多信息可以访问AliasWavefront网

7、站:。另外,Highend3D的网站介绍了MEL 脚本程序并连接到更多的有关MEL和Maya的信息。为了获得MEL和Maya的大部分的输出,请开发和利用这些训练课程和网站资源。二、MEL要点 top使用MEL的要点包括了使用MEL指令和产生MEL程序。本章包括以下内容:指令、程序、Maya Gems共三个部分。本期介绍MAYA脚本语言MEL的指令。分为以下三个部分:1、了解指令;2、MEL指令文件;3、使用指令。1、了解指令MEL包括了涉及使用Maya的所有方面的全范围的指令。使用MEL指令的一些典型的例子包括快速产生物体、精确移动物体和对物体进行更有效的控制。如,可以使用下述的一个MEL指令

8、产生一个半径准确的为27.5 单位的叫做 bigBoy 的一个球体:sphere -radius 27.5 -name bigBoy;随后你还可以再输入一条MEL指令将bigBoy绕Z轴旋转90度:rotate -r 0 0 90 bigBoy; 另一个例子,假定你在用结点工具产生一个结点,你想把这个结点沿着X轴方向移动5个单位。你可以执行以下的MEL指令,而不需要打断结点的产生:move -r 5 0 0。2、MEL指令文件 Maya的在线库(Online Library)描述了每一条指令,提供了用法、格式、返回值和例子的信息。MEL的指令参考在线文件(Command Reference o

9、nline documentation)提供了以字母顺序排列的指令,也以功能方式加以组织。3、使用指令包括内容有:输入指令、使用指令行、获得指令返回值、指令模式和指令在表达式中。、输入指令Maya提供了一些输入MEL指令的方法;使用脚本语言编辑器(Script Editor)或者指令行(Command Line)是最常用的方法。你也可以在脚本程序文件、Maya ASCII(.ma)文件、工具柜图标(shelf icons)、热键以及表达式中执行指令。但是最常用的还是在脚本语言编辑器中输入指令。无论如何输入指令,所有的MEL指令必须用一个分号结束。以下是MEL 指令的一些例子: sphere -

10、name roundy; setAttr roundy.translateX 7; whatIs ls; help ls; ls -typ nurbsSurface; 、使用指令行 可以使用指令行输入MEL指令。如果指令行没有出现,在MAYA主菜单中选择Options Command Line使指令行出现。虽然在指令行和脚本语言编辑器中都可以输入指令,但两者之间有一些重要的区别: 你可以从指令行,使用数字键盘或字符键盘的Enter键输入指令。而脚本语言编辑器只能用数字键盘的Enter键。指令行只有一行,执行一个MEL指令。为了输入更多的MEL指令,指令之间可以?quot;;分开。指令行仅将结果

11、的最后一行显示到右边。而脚本语言编辑器显示所有的结果。、获得指令返回值Many MEL指令返回一个值。为了抓取这个返回值,可以用单引号或者eval指令。使用单引号获得指令返回值,用单引号将指令前后标注出来可以返回指令的输出。随后你可以把这个输出赋给一个变量并在脚本语言编辑器中显示它。例: string $a; $a = particle -p 5 0 5 -name Sun; print($a); 第一条语句定义了一个名为$a的阵列。第二条语句执行引号中的MEL指令,并把指令的输出赋给$a。第三条指令把$a的内容显示给脚本语言编辑器,如下:Sun SunShape 可以对任何一个MEL指令保存

12、和显示其结果。返回值的类型是由你使用的指令决定的。在以上例子中,粒子命令返回一个字符串阵列。所以,等式左边的变量符号也须要是接受这个返回值的字符串阵列的类型。使用eval指令获得指令返回值eval指令执行一个命令,也让你抓取返回值。它比起单引号有一个优点,因为你可以从一个字符串建立一个指令。象单引号方式那样,也可以把输出赋给一个变量并显示它。例 :string $command = sphere; eval($command + -r 5); 第一条语句把字符串sphere标注给变量$command。第二条指令给字符串sphere添加 -r 5,并执行完整的指令sphere -r 5。它产生一

13、个半径为5个格子单位的球体。 有关eval指令的更多的信息,见掌管指令的在线文件。、指令模式MEL指令选项典型地在以下一种或多种模式中起作用:query、编辑和产生。Query模式是用于找出一些事件的值;编辑模式是用于改变一些事件的值;产生模式是产生一些事件。在在线MEL指令参考中,指令选项的描述包括一个Q、E或C以指示query模式、编辑模式、产生模式。、指令在表达式中可以在一个表达式中执行MEL指令和序列。但是,如果你执行以下的指令你的场景会产生故障:断开或连接属性删除或产生物体或者其他项,在一个表达式中播放你的动画不会撤消MEL指令的执行。例如,如果你的表达式执行MEL指令产生了一对球体

14、,播放这段动画时并不删除原来的球体。再次播放该场景时会产生另一对球体。不过你可以通过选择Edit Undo撤消MEL指令,但是如果你的场景有故障时,它将会不工作。还要注意,你可以只撤消Queue尺寸的设置所允许的许多运算。为设立Queue 尺寸,选择Options General Preferences。当你从指令行执行一个指令时,状态信息出现在脚本语言编辑器中和指令行的响应区域里。当在一个表达式中执行指令时,不显示这个信息。 关于表达式的更多的内容,请参考Using Maya: Expressions。三、概述MAYA脚本语言 top本章包括以下内容:1、了解脚本语言;2、设立脚本语言环境。

15、1、了解脚本语言编写脚本语言程序是产生Maya埋入式语言(MEL)脚本程序的过程。一个脚本语言程序是一个MEL指令或者MEL序列的集。通过产生脚本语言程序,你可以利用Maya的用户界面使执行任务自动化,可以获得under the hood访问Maya所有的各个部分,还可以对界面进行扩展和自定义。2、设立脚本语言环境为了设立脚本语言环境,需要考虑以下内容: 、脚本语言文件 、建立脚本语言路径 、在脚本语言程序中使用程序 、脚本语言文件一个MEL脚本文件(*.mel)是一个包含MEL指令、MEL程序或者二者都有的文件。典型地,是用一个MEL脚本文件执行一系列的指令。如,可以写一个脚本程序以产生一个

16、墙形状的物体,然后再给它施加一个砖的纹理。可以用一个文字编辑器写一个MEL脚本文件然后把它保存到磁盘的一个文件中。MEL脚本文件使用文件扩展名 .mel。可以把脚本文件用于不同的场景中和不同的工作期间中。当执行一个MEL脚本文件时,它并不变成为场景的一个部分,因此如果你要想重复它的作用时,应该每次都执行该脚本程序。、建立脚本文件路径在缺省状态下,Maya在你的scripts目录中查找MEL脚本文件。在缺省状态下,这个目录定义在你的login名下。例子如下: (IRIX) elvis/maya/scripts,(Windows NT) C:AwElvismayascripts。使你的脚本文件可以

17、运行的最简单的方法是把它们放在上述路径里。注意你的scripts目录缺省地包含了一些脚本文件。它们以menu_作为名字的开始,用于Maya内部。你可以给MAYA用于查找脚本文件的缺省路径增加目录。为脚本文件路径增加一个目录(在IRIX中):1-在一个IRIX shell中,设立环境变量MAYA_SCRIPT_PATH给附加目录的路径。2-从这个shell启动MAYA。为脚本文件路径增加一个目录(在Windows NT中):1-使用Windows NT Explorer或者My Computer,显示Maya NT bin目录的内容。缺省时是C:AwMayaX.Xbin。 2-双击MayaEnv

18、ironment.exe启动该程序。这样显示出了你的home、project、plug-in、script和bitmap目录的路径。该路径包括在安装期间产生的缺省路径和你后来定义的任何路径。不能改变缺省路径。对于plug-in、script和bitmap路径,用分号(;)分离路径,这些项可以定位。在这个窗口中禁止编辑路径。但你可以用以下的步骤代替。重要事项:如果你的计算机上安装了Maya NT的多个版本,你会看到一个版本的路径。版本号是在窗口的标题栏里。为了看另外的版本的路径,点击Previous或Next。为了保存一个版本的路径,点击Save。如果你的计算机只装了一个版本,这些键会变暗。3-

19、点击Maya Script Path框旁边的Change键。注意,如果你改变了Home路径,这就按照新的home路径改变了project、plug-in、 script和bitmap路径。会询问你是否想这样做。点击Cancel可以放弃这个改变。4-在Change Setting窗口中输入(或者编辑)一个路径。一般地,可以增加缺省路径,但是不能重置它们。当你定义路径时使用左斜线或者右斜线。为了定义一个远程路径,可以将一个隐含目录与你的计算机上的一个驱动器字符对应起来。细节请看你的Windows NT文件。如果需要输入多个路径,使用分号把这些路径分离开。 如果要使用一个文件浏览器从别的文件系统查找

20、和选择一个路径,点击Browse。 为了返回到你原来的缺省路径中,点击Restore Default。这对于当你定义了一个不正确的路径或者想删除废弃的路径是非常有用的。5-点击OK。例子(IRIX): 为了给scripts路径增加/maya/scripts/clipFX and remote/X/scripts目录,在启动MAYA之前给IRIX增加以下目录: setenv MAYA_SCRIPT_PATH /maya/scripts/clipFX:/remote/X/scripts, 随后Maya将能够在/maya/scripts, /maya/scripts/clipFX, 或者/remot

21、e/X/scripts中找到你的脚本文件。、在脚本文件中使用程序你可以在MEL脚本文件中使用全局和局部程序。全局程序在它们的文件外边是可见的;局部程序仅在它们的文件内部是可见的。如果Maya遇到一个没有定义的指令,它会为找到一个与该指令有相同基名的MEL脚本文件搜索脚本路径。当它找到该文件之后,它在该文件中会声明所有的全局MEL程序。任何具有与该指令有相同基名的全局程序会被执行。假定你在运行一个sayWhat指令。因为没有这样的一个sayWhat指令,Maya会在它的所有的script路径中对一个叫做sayWhat或者sayWhat.mel的文件进行搜索。如果在一个script目录中,它找到了

22、有以下内容的sayWhat.mel脚本文件:proc red5() print(red5 standing by.n); global proc sayWhat() print(sayWhat onlinen); global proc GoGo() print(GoGo onlinen); 然后全局程序sayWhat和GoGo被声明,并执行sayWhat程序。结果是:sayWhat online。因为GoGo全局程序已经声明过了;现在就可以在指令行中或者在脚本语言编辑器中输入GoGo运行它。使用MAYA内部脚本文件 Maya有一些用于它的用户界面和其他运算细节的MEL脚本文件。你可以在Ali

23、asWavefront中查找这些脚本文件,学习专业脚本程序作者的这些技术。这些脚本文件是在由缺省定义的以下述目录开始的目录中:(IRIX) /usr/aw/mayaX.X/scripts (Windows NT) C:AwMayaX.Xscripts 其中X.X是Maya的版本号。注意:不要在这个目录中修改或者插入脚本文件;该目录是保留Maya用户界面工作用的脚本文件的。改变这些文件可能会影响Maya的操作。如果你想在这个目录中修改脚本程序以改变Maya的界面,先要把它们拷贝到你的局部scripts目录中。如果你的局部scripts目录中有与Maya内部script文件目录中相同名字的脚本文件

24、,那你的局部scripts目录中的文件会被运行。四、使用脚本语言编辑器 top 本章包括以下内容:1、打开脚本编辑器;2、打开一个脚本程序;3、把一个MEL脚本程序文件作为源文件;4、保存脚本文字;5、执行一个脚本程序;6、清除状态信息;7、清除指令输入;8、响应一个指令;9、显示程序中的语句行号;10、显示堆栈跟踪。 1、打开脚本编辑器 可以通过选择Window General Editors Script Editor或者点击Maya窗口右下部的Script Editor图标打开脚本编辑器。脚本编辑器提供以下菜单选项:Open Script-打开脚本程序 Source Script-把一个

25、脚本程序文件作为源文件 Save Selected-保存脚本程序 Execute-执行脚本程序 Clear History-清除历史 Clear Input-清除输入 Echo All Commands-返回所有指令的返回值 Show Line Numbers-显示行号 Show Stack Trace-显示堆栈跟踪 编辑命令: 下表列出了在脚本编辑器中有效的键盘命令。(在表达式编辑器和一些输入框中它们也是有效的。) 命令 定义 平台 Ctrl+c Copy IRIX、Windows Ctrl+x Cut IRIX、Windows Ctrl+v Paste IRIX、Windows Ctrl+

26、k 删除到本行末 IRIX Ctrl+d 删除下一个字符 IRIX Ctrl+a 移动光标到行首 IRIX Ctrl+e 移动光标到行末 IRIX Ctrl+a 选择编辑框中的所有文字 Windows 2、打开一个脚本程序我们可以打开一个脚本程序以便检查、执行或找出它的问题。打开一个脚本程序时并不执行它。只是在脚本编辑器的输入栏里简单地把它显示出来。要执行显示在脚本编辑器的输入栏里的一些或者全部脚本程序,可以用鼠标选择它,然后按键盘的数字Enter键。当你想把一些或者全部内容拖拉到柜架上并在那里产生一个图标时,打开一个脚本程序就是非常有用的。可以点击该图标执行这个程序。为了打开一个脚本文件:1

27、-从脚本语言编辑器中选择File Open Script。出现一个文件浏览器。2-选择要打开的脚本文件。 3.把一个脚本程序作为源文件把一个MEL脚本程序文件作为源文件,执行所有的MEL指令并声明包含在该脚本程序文件中的所有的全局过程。如果你在一个脚本程序文件中修改了一个程序,Maya 并不把这个改变登记给该程序,直到你把它的程序文件作为源文件。这是因为Maya把执行了的程序保存到了存储器中。当你把一个脚本程序文件作为源文件时,Maya再次读该脚本程序文件里的那个程序。 为了把一个脚本程序作为源文件: 1-从脚本语言编辑器中选择File Open Script。出现一个文件浏览器。 2-选择要

28、打开的脚本文件。 把一个脚本程序作为源文件之后,该文件里的所有MEL指令会执行。该脚本程序中的所有全局过程会被声明,但并不被执行。MEL指令是按照它们出现在文件中的顺序执行的,并且应当没有错误。如果产生了一个错误,执行会中断并不再装载更多的程序。 当你把一个MEL脚本程序作为源文件之后,不声明或者不执行局部过程。但是,如果你是通过在脚本编辑器或指令行里输入而声明了一个局部过程,该过程会被声明为全局过程,你可以在任何时候执行它。 执行一个程序可以通过执行一个MEL指令实现。当你想把一个脚本程序作为源文件,并具有执行该文件中的程序的作用时,这是很有用的。 为了这样做,要首先声明该程序,然后声明通过

29、一个文件浏览器执行该程序的指令。4、保存脚本文字 使用File Save Selected指令从脚本编辑器保存脚本文字。可以从指令输入(底部)将文字高亮化,也可以通过脚本编辑器的状态信息(顶部)部分。Maya 将会把高亮的文字部分保存到你说明的目录里的一个.mel 文件中。5、执行一个脚本程序 当你想执行一个预先已经源化了的脚本程序时,可以在脚本编辑器的指令输入栏(底部)输入该程序的名字,然后进行下面工作中的一种:Ctrl + Enter 键;或者按数字键盘的 Enter 键;或者从脚本编辑器里选择 Edit Execute。也可以使用这些指令执行一个在脚本编辑器里已经打开了的脚本程序的定义。如果MEL脚本定义没有出现失败,则该定义是从脚本编辑器的底部移到顶部。否则该定义不会移动,并且在顶部会显示出一个错误信息。提示: 可以首先选取MEL script的一部分然后只执行这一部分(Ctrl+Enter)。 它不会删除其它部分。6、清除状态信息要清除状态信息(脚本编辑器的顶部),从脚本编辑器里选择Edit Clear History。这将会删除掉所有的状态信息文字。使用这个指令时应当小心一些,因为没有办法撤消它。7、清除指令输入 要清除指令输入文字(脚本编辑器的顶部), 从脚本编辑器里选择Edit Clear Input。这

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2