以下部分介绍了一些基本概念,有助于您理解在 Maya 中使用脚本时出现的一些情况。
命令架构
Maya 拥有一个基于命令的架构,用于处理所有的操作。所有 Maya 功能命令均通过 Maya 用户界面(菜单、工具、对话框)使用的脚本语言命令来访问;事实上,就是您在 Maya 中进行交互时所使用的一些东西。此外,您还能以 Maya 支持的脚本语言明确地输入
Maya 命令。
每个 Maya 命令都有多个参数,这些参数设定了命令的执行方式。若要让命令能够执行,就需要具备参数及参数的隐式或显式值。
Maya 中的脚本语言使用标志设定参数值。标志将告知脚本语言以什么值设定了 Maya 命令的哪个参数。指定给参数的值将跟随在标志之后。
标志在 MEL 和 Python 中具有短名称和长名称。无论是使用标志的短名称还是长名称,均同样执行命令。长名称通常为描述性且适用于新用户;短名称则为缩写形式的标志名称,适用于高级用户。
Maya 中的脚本语言
Maya 支持两种脚本语言:
- Maya 嵌入式语言 (Maya Embedded Language, MEL) 是依据 Unix Shell 脚本建模的专用脚本语言。
- Python 是 Maya 中最新添加的特性,可以和 MEL 一样用于访问 Maya 命令。Python 是一种广泛运用的现代编程语言。
Maya 的用户界面是使用执行(调用)Maya 命令的脚本而构建的。由于 Python 是最新添加到 Maya 中的,因而通过用户界面访问的大多数脚本都是用 MEL 编写的。
例如,如果单击工具架上的球体图标或从菜单中选择一项,Maya 将调用 MEL 命令以创建球体,或执行与菜单项关联的命令。
在 Maya 中输入命令
有多种方法可用于在 Maya 中明确输入脚本命令。
- 若要输入单行 MEL 和 Python 命令,请使用。若要显示(如果已隐藏),请选择。位于 Maya 界面底部边缘附近。
- 若要输入多行 MEL 和 Python 命令,请使用。显示已执行命令的历史以及命令的结果和输出。若要打开,请选择。
- 在的 MEL 选项卡中输入所有 MEL 命令时,这些 MEL 命令将会亮显。
- 同样,使用 MEL 命令的子集在场景中创建动画。将针对动画中的每个帧对中的 MEL 命令求值。不支持 Python 命令。若要打开,请选择。
也可以加载外部 MEL 和 Python 文件,并使用脚本编辑器运行这些文件。有关详细信息,请参见。
MEL 外观
调用 MEL 命令具有一种基本结构,即命令后跟标志和参数的组合。在 MEL 中,标志前面是连字符。
所有 MEL 命令都区分大小写;SPHERE 和 sphere 是不同的(并返回错误消息)。
如果未提供任何标志,则命令以默认参数作为执行条件。如果未获得所需参数,命令的执行将失败。
注意
MEL 还有一种备用语法,其执行命令和标志的方法类似于 C 编程语言。有关详细信息,请参见《Maya 用户手册》中的。
获取关于 MEL 的帮助
有三种方法可用于获取关于 MEL 的帮助:
- 若要访问关于特定 MEL 命令的帮助信息,请通过选择打开。
- 也可使用 Maya 命令 help,以便从脚本编辑器中访问帮助信息。例如,输入 help sphere 将列表显示一些可与 sphere 命令一起使用的标志。
- 有关 MEL 命令使用的所有方面的详细信息,也可参见手册的“MEL 和表达式”部分,这是“Maya 帮助”(Maya Help) 的部分内容。打开“Maya 帮助”(Maya Help),然后选择“使用 Maya > 常规 > MEL 和表达式”(Using
Maya > General > MEL and Expressions)。
Python 基础知识
Python 和 MEL 都是脚本语言,在 Maya 中具有相同的重要性和功能。Python 可以访问 MEL 能够访问的所有 Maya 命令。
Python 通过 Python 模块 maya.cmds 访问 Maya 命令。Python 中的模块是一组向 Python 中添加了功能的命令,必须在使用模块中的任何命令之前导入。
Python 中的标志通过 Python 的已命名参数执行。您将指定要修改的参数,并使用指定运算符 (=) 将新值指定给参数。
若要运行该命令或任何示例命令,必须先导入 Python 模块。开始输入 Python 命令之前,先输入 import maya.cmds。
所有 Python 命令都区分大小写;maya.cmds.SPHERE 和 maya.cmds.sphere 是不同的(并返回错误消息)。
获取关于 Python 的帮助
有多种方法可用于获取关于 Python 的帮助:
- 若要访问关于特定 Maya (Python) 命令的帮助信息,请通过选择打开。
- 也可使用 Maya 命令 help (),以便从脚本编辑器中访问关于 Maya Python 命令的帮助信息。例如,键入 maya.cmds.help ("sphere") 将列表显示一些可能可与 sphere 命令一起使用的标志。
- 通过键入 help ("command") 可从中访问关于本机 Python 命令的帮助信息,其中 command 是想要访问其帮助信息的 Python 命令。
- 有关 Python 命令使用的详细信息,也可参见手册的“Python”部分,这是“Maya 帮助”(Maya Help) 的部分内容。打开“Maya 帮助”(Maya Help),然后选择“使用 Maya > 常规 > Python”(Using
Maya > General > Python)。
- 在的 Python 选项卡中输入所有 Python 命令时,这些 Python 命令将会亮显。
- Web 上现有一些关于 Python 的参考资料和文档,以及许多可用于向 Python 中添加额外功能的可下载模块。