MAYA 脚本语言 MEL 系列教程

上传人:ji****72 文档编号:37523255 上传时间:2018-04-17 格式:DOC 页数:45 大小:242KB
返回 下载 相关 举报
MAYA 脚本语言 MEL 系列教程_第1页
第1页 / 共45页
MAYA 脚本语言 MEL 系列教程_第2页
第2页 / 共45页
MAYA 脚本语言 MEL 系列教程_第3页
第3页 / 共45页
MAYA 脚本语言 MEL 系列教程_第4页
第4页 / 共45页
MAYA 脚本语言 MEL 系列教程_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《MAYA 脚本语言 MEL 系列教程》由会员分享,可在线阅读,更多相关《MAYA 脚本语言 MEL 系列教程(45页珍藏版)》请在金锄头文库上搜索。

1、1MAYAMAYA 脚本语言脚本语言 MELMEL 系列教程系列教程一、了解 MELMEL (Maya 埋入式语言)为 Maya 提供了基础。Maya 界面的几乎每一个要点都是在 MEL 指令和脚本程序上建立的。由于 Maya 给出了对于 MEL 自身的完全的访问,你可以扩展和定制 Maya。通过 MEL,你可以进一步开发 Maya 使它成为你和你的项目的独特而创新的环境。 为有效地使用 Maya,你并不非得精通 MEL。但是,熟悉 MEL 可以加深你使用 Maya 的专业能力。使用 MEL的许多方面可以由只有很少编程经验或者没有经验者所使用。喜欢 MEL 并不非得喜欢编程。 有一些方法,它们

2、可以使你获得 MEL 的好处而不必考虑编程的细节。一旦当你进行了产生 MEL 脚本语言的尝试,你会发现 MEL 可以给你提供可以想象到的最先进的数字化画图的方法。 为了获得 Maya 的输出,大部分可以使用 MEL 来做。这里是你可以使用 MEL 来工作的一些例子: 使用 MEL 指令脱开 Maya 的用户界面,快速地产生热键,访问更深的要点。 给属性输入准确的值,脱开由界面强制引起的拘谨的限制。 对特定的场景自定义界面,对一个特定的项目改变缺省设置。 产生 MEL 程序和执行用户建模、动画、动态和渲染任务的脚本程序。 如何使用本教程 本教程叙述如何学习和使用 Maya 埋入式语言(MEL)。

3、如果你初次接触 MEL,本教材帮助你在使用 MEL指令和脚本程序方面开始起步。一旦当你开始开发 MEL 程序的时候,本教材将继续帮助你,讲解如何能够使你获得用 MEL 产生的更多的指令、宏、程序和用户界面元素的输出。 本教材假定你对 Maya 已经有了基本的了解。如果你完全是新开始学习 Maya,请看一下学习 Maya 的教材,并对在 Using Maya documentation set 中描述的要点进行开发。 应该熟悉 Maya 的在线文件(见Online documentation)。特别是应该使你自己熟悉 MEL Command Reference 和 DG Node Referen

4、ce。 本教材的各处都有许多有关的 MEL 指令和程序码的例子。要运行例子程序,你可以把它们粘贴到Maya 的脚本语言编辑器(Script Editor)里,并选择 Edit Execute 就可以了。使自己进一步地熟悉脚本语言编辑器的要点,执行脚本程序,并把程序保存到 Maya 的 script 目录中的一个文件中,可以参考Maya 文件和用户指南中的适当章节。 如何学习更多的 MEL 内容 为了学习更多的 MEL 内容,可以通过以下途径: 在线文件 训练课程 网站资源 在线文件 本教材提供了一个使用 MEL 指令、程序和脚本语言的总的概览。有关特定的 MEL 指令的详细信息,请参阅 MEL

5、 Command Reference。 当你学习 MEL 时,你会发现你需要学习更多的有关 Maya 的相关图节点(dependency graph node)的内容。在线的 DG Node Reference 文件详细地描述了 Maya 的相关图节点。 训练课程 为了学习更多的有关 Maya 和 MEL 的内容,请考虑学习 AliasWavefront 的训练课程。这些课程向你介绍 MEL 指令和脚本语言程序,还可以向你提供最主要的内容的深层知识。要学习更多有关 MEL 的内容,可以先从 MEL 基本教程开始。 在 AliasWavefront 的网站 (Express Link to Tr

6、aining)中的课程安排和描述是有效的。关于课程的有效性、价格和登录的最新的信息,可发 Email 给 training-,电话是 416-874-8760 或 1-877-927-7478 (option 4),或 FAX 416-369-6131。 网站资源 2AliasWavefront 的 Assistant Online 提供了许多有关 Maya 的教材,包括含有产生 MEL 脚本程序的教材。 更多信息可以访问 AliasWavefront 网站:。 另外,Highend3D 的 网站介绍了 MEL 脚本程序并连接到更多的有关 MEL 和 Maya 的信息。 为了获得 MEL 和

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

8、: 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 docume

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

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

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

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

13、指令给字符串 sphere 添加 -r 5,并执行完整的指令 sphere -r 5。它产生一个半径为 5 个格子单位的球体。 有关 eval 指令的更多的信息,见掌管指令的在线文件。 、指令模式 MEL 指令选项典型地在以下一种或多种模式中起作用:query、编辑和产生。Query 模式是用于找出一些事件的值;编辑模式是用于改变一些事件的值;产生模式是产生一些事件。在在线 MEL 指令参考中,指令选项的描述包括一个 Q、E 或 C 以指示 query 模式、编辑模式、产生模式。 、指令在表达式中 可以在一个表达式中执行 MEL 指令和序列。但是,如果你执行以下的指令你的场景会产生故障: 断开

14、或连接属性 删除或产生物体或者其他项 在一个表达式中播放你的动画不会撤消 MEL 指令的执行。例如,如果你的表达式执行 MEL 指令产生了一对球体,播放这段动画时并不删除原来的球体。再次播放该场景时会产生另一对球体。 不过你可以通过选择 Edit Undo 撤消 MEL 指令,但是如果你的场景有故障时,它将会不工作。还要注意,你可以只撤消 Queue 尺寸的设置所允许的许多运算。为设立 Queue 尺寸,选择 Options General Preferences。 当你从指令行执行一个指令时,状态信息出现在脚本语言编辑器中和指令行的响应区域里。当在一个表达式中执行指令时,不显示这个信息。 关

15、于表达式的更多的内容,请参考 Using Maya: Expressions。 三、概述 MAYA 脚本语言 本章包括以下内容:1、了解脚本语言;2、设立脚本语言环境。 1、了解脚本语言 4编写脚本语言程序是产生 Maya 埋入式语言(MEL)脚本程序的过程。一个脚本语言程序是一个 MEL指令或者 MEL 序列的集。通过产生脚本语言程序,你可以利用 Maya 的用户界面使执行任务自动化,可以获得“under the hood“访问 Maya 所有的各个部分,还可以对界面进行扩展和自定义。 2、设立脚本语言环境 为了设立脚本语言环境,需要考虑以下内容: 、脚本语言文件 、建立脚本语言路径 、在脚

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

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号