Maya基本操作
建立Object,Maya漫游 Alt+
Maya最下面有Mel最右边,有小按钮
Maya 脚本编辑器,Maya右键操作滑动
切换到点模式:右键切换定点模式 按F切换物体的中心 对象模式?
Maya脚本编写
功能
Maya程序运行是串行结构,和Unity一致;UI按钮执行脚本;操作都会现实在脚本编辑器中
脚本编辑器显示的日志是mel语句。
查maya 的帮助,命令当中勾选快捷提示,都勾上mel看起来像linux命令
select -r select -add 的mel脚本执行
在写脚本的时候,如果遇到命令,先在界面上完成,然后根据mel脚本的提示,根据mel脚本编写python。 脚本编辑器 直接点击运行会清空下面的代码,点击》》来执行并不清空内容
操作tranform修改属性,maya当中用的最多的是setAttr 创建摄影机,修改摄影机焦距,
Object的名称的唯一性,
中间拖拽到形成父子关系, 通过路径的方式找到唯一对象 问题:同级不能出现同名,maya内部会自动改名字
mel转python
有规律可循,Maya像linux的命令或函数,
import maya
#import maya.cmds as cmds
values = maya.cmds.ls()
maya.cmds.setAttr(...)
# mel转python可能的两种形式
# select -tgl xxx
maya.cmds.select('xxx', tgl=True)
#maya.cmds.select(tgl='xxx') # 有可能的形式,但是不一定正确
单步执行不一定有选择部分执行的效率高
基本流程
1.操作一遍 2.看mel 3.mel转python
UI 改的内容
问题:子节点
import maya
maya.cmds.setAttr("pShere2.vtx[251]", 10,10,10)
有可能mel里面有,
问题:
select_object = maya.cmds.ls(sl=True)
根节点,
插件会提供更深层次的接口
节点图
Maya DAG,通过窗口的某哥来查看 mesh节点根据属性,传给法线节点,传给
我们的插件需要写节点,有了一定的输入,下一步给输出,有协议定义好的 当前面的节点设置为脏时,才进行计算;写插件如何控制计算。
速度问题
如何屏蔽无用节点, 编辑-》按类型删除全部-》删除历史,没办法对他做更改 不能删除历史?
Maya的帧数可以设置
PyCharm配置Maya开发环境
Maya Python
Maya 2018默认使用的是Python 2.7,Python 2.7所支持的功能,Maya通过Python开发一样能够支持
在PyCharm中,进行如下设置
Settings->Project Interpreter->齿轮->Add local
System Interpreter->选择目录
C:\Program Files\Autodesk\Maya2018\bin\mayapy.exe
首先把项目路径添加到python path下面,如本项目路径C:\Workspace\Maya\maya-hello
PYTHONPATH=C:\Workspace\Maya\maya-hello
重启Maya,能够import包名称
例如工工具架的 文档/maya/2015-x/zh-cn/prefs/shelves
project inteprot
pycharm systemEnv = mayapy.exe
Maya API智能提示
当我们配置完成mayapy后,我们在PyCharm当中输入并没有智能的代码提示功能。
下载devkit
首先,根据如下连接下载Maya Developer Kit,需要登陆Autodesk,并且在搜索框输入Maya Developer Kit
设置devkit
Setting->Project Interpreter->齿轮->Show All...
打开Project Interpreters窗口,点击右侧最下面的图标,弹出Interpreter Paths窗口,点击+。
# 由于devkit放到build目录的配置如下
C:\build\maya-devkit\Maya2018-DEVKIT_Windows\devkitBase\devkit\other\pymel\extras\extras\completion\py\
移除原始提示
在Interpreter Paths窗口下,找到C:\Program Files\Autodesk\Maya2018\Python\Lib\site-packages
点选,点击删除。保存所有设置就可以弹出代码提示
下载后解压缩到任意目录,
Debug插件MayaCharm
MayaCharm
PyCharm安装MayaCharm
在PyCharm中进行设置
File->Settings->Plugins
在搜索框输入MayaCharm,点击网络搜索,点击安装并重启PyCharm
Maya安装服务端口
在项目中创建文件userSetup.py
,在环境变量当中key为PYTHONPATH,value为项目目录
import logging
logging.info('Maya`s userSetup.py')
# MayaCharm Plugin
import maya.cmds as cmds
if not cmds.commandPort(':4434', q=True):
cmds.commandPort(n=':4434')
# do something before maya run
重新启动Maya,能够看到Maya Output Window输入内容如下
root : INFO : Maya`s userSetup.py
...
说明userSetup.py初始化成功
MayaCharm调试
Warning:由于编者使用的是PyCharm Professional版本才会具有MayaCharm Debugger
PyCharm中,Run->Run/Debug Configurations->Add->MayaCharm Debugger
创建后,必须选择Attach Debug and execute file并且选择要执行的Python文件,然后就能够运行了
Debug必须先打断点,然后点击运行debug,注意:这里并不会直接执行py文件,会先跳到服务器请求,然后才会跳转到后续断点
如何写工具架
最左边右键新建工具架,能够编辑工具架,能够选择图标的标签,点击保存所有工具架,能够看到工具架的路径
QTUI?
Maya界面提供的mel
独立
import maya
maya.cmd.window('test2')
maya.cmds.showWindow(test)
新版本可以通过python,老版本只能使用mel