maya玛雅入门


备注

本文档介绍了Autodesk Maya的编码。它不适用于Maya软件的最终用户。 (要了解如何在Maya中建模或制作动画,请尝试使用Autodesk的介绍性视频CGSociety等最终用户网站。)

语言

Maya支持3种编程语言:MEL,它的内置脚本语言; C ++,用于插件;和Python这是集成作业常见的,但也可以使用C ++ API的包装版本创建插件

你好,世界

在Maya的控制台上打印多种语言的“hello world”(脚本编辑器)。

MEL

在脚本编辑器或命令行栏上的MEL选项卡上,选择MEL:

print ("hello world");
 

并在脚本编辑器上点击播放或在命令行输入密钥。

蟒蛇

在脚本编辑器或命令行栏上的Python选项卡上,选择Python:

print "hello world"
 

并在脚本编辑器上点击播放或在命令行输入密钥。

安装

Maya支持3种主要编程环境。每个都有不同的设置要求。

MEL

MEL脚本语言包含在Maya应用程序中。默认情况下启用,用户可以在运行的Maya副本的脚本侦听器窗口中测试MEL。

MEL文件是扩展名为.mel 文本文件。可以使用侦听器或另一个MEL脚本中的source 命令将它们加载到正在运行的Maya会话中。 Maya维护源目录列表,并在所有目录中搜索请求的MEL脚本,直到找到适当命名的文件。

设置脚本路径的方法有很多种;有关更多详细信息,请参阅Autodesk文档

蟒蛇

Maya包含一个嵌入式Python解释器。 MEL命令可以在maya.cmds Python模块中从Python获得,因此像Python中的polyCube -n "new_cube" 这样的命令可以作为maya.cmds.polyCube(n='new_cube') 。监听器窗口包含一个Python选项卡,允许用户以交互方式输入Python命令。

Maya python可以使用python import 指令导入模块。 Maya将使用环境变量或maya.env 文件在Maya应用程序中配置的多个位置查找Python文件。 Autodesk文档介绍了放置python文件的基础知识,Maya可以在其中查看和导入它们。

C ++

Maya将其API暴露给C ++ 。开发人员可以编译Maya在启动时识别的插件。

为Maya开发C ++插件需要Maya Devkit 。下载适合您平台的版本,并按照附带的说明设置构建环境。

简单的Python示例

使用帮助行右下角的按钮打开Maya侦听器。这将打开脚本侦听器。

从选项卡栏创建Python 选项卡。

这是一个非常基本的脚本,可以打印默认场景中摄像机的位置。在侦听器中输入:

import maya.cmds as cmds          
cameras = cmds.ls(type ='camera')  
for each_camera in cameras:
    parent = cmds.listRelatives(each_camera, parent=True)
    position = cmds.xform(parent, q=True, translation=True)
    print each_camera, "is at", position
 

选择脚本并使用CTRL+enter 执行它;

这是另一个生成随机立方体集合的简单示例。它使用python random 模块生成随机值。

import maya.cmds as cmds
import random
         
for n in range(25):
    cube, cubeShape = cmds.polyCube()
    x = random.randrange(-50, 50)
    y = random.randrange(-50, 50)
    z = random.randrange(-50, 50)
    cmds.xform(cube, t = (x,y,z))