开发Maya插件,有两种执行脚本的方法:

(1)直接在 Maya的脚本编辑器,直接写代码或者加载代码并运行,缺点是没有自动提示;

(2)基于 PyCharm 进行编码,然后通过 MayaCharm 在 Maya 中执行代码;


第一种方法,直接执行

python和maya的 python maya_自动提示

python和maya的 python maya_python和maya的_02



第二种方法,借助 MayaCharm 插件

(1)下载并安装PyCharm

下载地址:https://www.jetbrains.com/pycharm/download/#section=windows

文本使用的版本:PyCharm Community Edition 2021.3.2


(2)为Maya安装devkit

下载页面:https://www.autodesk.com/developer-network/platform-technologies/maya,网页向下拉,找到自己Maya的版本并下载指定的 DevKit

文本使用的版本:Maya 2018,对应下载的是 Maya 2018 Update 7 win64 DevKit

python和maya的 python maya_自动提示_03


将下载的 zip 文件中的 devkit 目录下的文件,全部复制到 Maya安装路径的 devkit 目录(目录默认为空,上面截图是因为已经复制过文件了)


(3)为PyCharm安装 MayaCharm 插件

python和maya的 python maya_python和maya的_04

python和maya的 python maya_自动提示_05

根据提示,我们找到 Maya 的 userSetup.py 文件,将下面代码复制进去。(本示例中用 Everythins 搜索该文件)

python和maya的 python maya_python和maya的_06

重新启动 Maya,可以在输出窗口看到上述的打印日志

python和maya的 python maya_python和maya的_07


(4)配置Python 解释器,添加 Maya 的 devkit 扩展包进去,这个写代码时就能有自动提示了

python和maya的 python maya_自动提示_08

python和maya的 python maya_Python_09

python和maya的 python maya_用户名_10

python和maya的 python maya_Python_11

python和maya的 python maya_自动提示_12

(5)编码环境测试

python和maya的 python maya_用户名_13

 

python和maya的 python maya_Python_14

在场景中创建10个立方体,按 alt + A 运行代码

python和maya的 python maya_Python_15


至此,开发环境已经全部搭建完成了,剩下就是按自己实际的需求开发工具了


本文参考链接:

(1)Python编写Maya插件,从0到1

(2)PyCharm关联Maya

(3)https://help.autodesk.com/view/MAYAUL/2018/CHS/?guid=GUID-55B63946-CDC9-42E5-9B6E-45EE45CFC7FC

=======================================

代码是写完了,也调试OK了,如果快速在项目各个美术的电脑上安装好呢?我通过查资料和自己本地模拟测试,最终形成如下思路:

(1)先创建一个自定义的“工具选项卡”

假设以 Meteoric 为例,那么对应的就是 shelf_Meteoric.mel 文件,通过 Everythins 可以找到对应的存放路径为:C:\Users\你电脑的用户名\Documents\maya\2018\zh_CN\prefs\shelves


(2)编写脚本,通过脚本编辑器的“将脚本保存至工具架”

python和maya的 python maya_python和maya的_16

python和maya的 python maya_python和maya的_17

图标、tips啥的自己可以修改然后更新一下。提供一个“检查更新”的功能,就是请求一个 url 获取版本号,然后对比看有没有最新的,另外一种方法就是由上而下广播通知大家更新插件;


(3)缩写一个 exe 程序,一键安装插件

其实就是双击后,可以将包含在exe中的 shelf_Meteoric.mel 资源,复制到用户本地的 shelves 目录(这里测试的路径是 C:\Users\你电脑的用户名\Documents\maya\2018\zh_CN\prefs\shelves)


双击自动 copy 文件的应用程序,我没有写,只是理论上觉得可行。用什么语言写,我觉得 C++、C#都可以,当然你用其它脚本也是木有问题的。

查询目录有很多种方法,比如遍历注册表,然后选Maya版本,再找到指定的 shelves 目录


祝大家都能顺利完成Maya的插件开发

python和maya的 python maya_python和maya的_18