| 网站首页 | 文章中心 | 电子书下载 | 矢量图库 | 视频教程 | 素材下载 | 程序代码下载 | JS代码 | 论坛 | 
常用软件类:
|杀毒安全 |联络聊天 |网络软件 |多媒体类 |系统工具 |图形图像 |系统工具 |应用软件 |行业软件
开发设计类:
|动画制作 |图像处理 |3D设计 |操作系统 |站长学院 |网络相关 |WEB设计 |数据库类 |程序开发
Maya Mel基础教程
作者:未知    文章来源:网络    点击数:    更新时间:2006-7-6
  了解 MEL

MEL (Maya埋入式语言)为Maya提供了基础。Maya界面的几乎每一个要点都是在MEL指令和脚本程序上建立的。由于Maya给出了对于MEL自身的完全的访问,你可以扩展和定制Maya。通过MEL,你可以进一步开发Maya使它成为你和你的项目的独特而创新的环境。
为有效地使用Maya,你并不非得精通MEL。但是,熟悉MEL可以加深你使用Maya的专业能力。使用MEL的许多方面可以由只有很少编程经验或者没有经验者所使用。喜欢MEL并不非得喜欢编程。有一些方法,它们可以使你获得MEL的好处而不必考虑编程的细节。一旦当你进行了产生MEL脚本语言的尝试,你会发现MEL可以给你提供可以想象到的最先进的数字化画图的方法。

为了获得Maya的输出,大部分可以使用MEL来做。这里是你可以使用MEL来工作的一些例子:

·使用MEL指令脱开Maya的用户界面,快速地产生热键,访问更深的要点。
·给属性输入准确的值,脱开由界面强制引起的拘谨的限制。
·对特定的场景自定义界面,对一个特定的项目改变缺省设置。
·产生MEL程序和执行用户建模、动画、动态和渲染任务的脚本程序。

如何使用本教程
本教程叙述如何学习和使用Maya埋入式语言(MEL)。如果你初次接触MEL,本教材帮助你在使用MEL指令和脚本程序方面开始起步。一旦当你开始开发MEL程序的时候,本教材将继续帮助你,讲解如何能够使你获得用MEL产生的更多的指令、宏、程序和用户界面元素的输出。

本教材假定你对Maya已经有了基本的了解。如果你完全是新开始学习Maya,请看一下学习Maya的教材,并对在Using Maya documentation set中描述的要点进行开发。 应该熟悉Maya的在线文件(见Online documentation)。特别是应该使你自己熟悉MEL Command Reference和DG Node Reference。

本教材的各处都有许多有关的MEL指令和程序码的例子。要运行例子程序,你可以把它们粘贴到Maya的脚本语言编辑器(Script Editor)里,并选择Edit > Execute就可以了。使自己进一步地熟悉脚本语言编辑器的要点,执行脚本程序,并把程序保存到Maya的script目录中的一个文件中,可以参考Maya文件和用户指南中的适当章节。

MEL要点

使用 MEL的要点包括了使用MEL指令和产生MEL程序。

本章包括以下内容:指令、程序、Maya Gems共三个部分。本期介绍MAYA脚本语言MEL的指令。

分为以下三个部分:1、了解指令;2、MEL指令文件;3、使用指令。

1、了解指令

MEL包括了涉及使用Maya的所有方面的全范围的指令。使用MEL指令的一些典型的例子包括快速产生物体、精确移动物体和对物体进行更有效的控制。如,可以使用下述的一个MEL指令产生一个半径准确的为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 online documentation)提供了以字母顺序排列的指令,也以**能方式加以组织。

3、使用指令

包括内容有:输入指令、使用指令行、获得指令返回值、指令模式和指令在表达式中。

⑴、输入指令

Maya提供了一些输入MEL指令的方法;使用脚本语言编辑器(Script Editor)或者指令行(Command Line)是最常用的方法。你也可以在脚本程序文件、Maya ASCII(.ma)文件、工具柜图标(shelf icons)、热键以及表达式中执行指令。但是最常用的还是在脚本语言编辑器中输入指令。

无论如何输入指令,所有的MEL指令必须用一个分号结束。以下是MEL 指令的一些例子:

sphere -name roundy;
setAttr roundy.translateX 7;
whatIs ls;
help ls;
ls -typ nurbsSurface;

⑵、使用指令行

可以使用指令行输入MEL指令。如果指令行没有出现,在MAYA主菜单中选择Options > Command Line使指令行出现。

虽然在指令行和脚本语言编辑器中都可以输入指令,但两者之间有一些重要的区别:

你可以从指令行,使用数字键盘或字符键盘的Enter键输入指令。而脚本语言编辑器只能用数字键盘的Enter键。

指令行只有一行,执行一个MEL指令。为了输入更多的MEL指令,指令之间可以?quot;;"分开。

指令行仅将结果的最后一行显示到右边。而脚本语言编辑器显示所有的结果。

⑶、获得指令返回值

Many MEL指令返回一个值。为了抓取这个返回值,可以用单引号或者eval指令。

使用单引号获得指令返回值

用单引号"`"将指令前后标注出来可以返回指令的输出。随后你可以把这个输出赋给一个变量并在脚本语言编辑器中显示它。



string $a[];
$a = `particle -p 5 0 5 -name Sun`;

print($a);

第一条语句定义了一个名为$a的阵列。第二条语句执行引号中的MEL指令,并把指令的输出赋给$a。第三条指令把$a的内容显示给脚本语言编辑器,如下:

Sun

SunShape

可以对任何一个MEL指令保存和显示其结果。返回值的类型是由你使用的指令决定的。在以上例子中,粒子命令返回一个字符串阵列。所以,等式左边的变量符号也须要是接受这个返回值的字符串阵列的类型。

使用eval指令获得指令返回值

eval指令执行一个命令,也让你抓取返回值。它比起单引号有一个优点,因为你可以从一

[1] [2] [3] [4] [5] [6] [7] [8] 下一页


  • 上一篇文章: 没有了

  • 下一篇文章:
  • 相关文章