Maya 常用环境变量详解
前言:
Maya 的环境变量让用户可以很方便的自定义 Maya 的功能。
在 Maya 的 Help 帮助文档中有专门的一个章节《 Environment Variables 》描述 Maya 的各种环境变量,在这里只记录和讲解常用的变量。
讲解的设置都是基于 windows7 - 10 系统。
注意:maya 的很多环境变量是需要在启动 maya 前就设置好的,所以如果你想在 userSetup.py 中设置,可能会不生效
Mel 中获取 getenv 和设置 putenv 环境变量
例子:
getenv PATH
putenv PATH (`getenv PATH` + ";E:/Program Files (x86)")
注意:putenv 会把原来的环境变量值覆盖掉,所以要通过以上的方式在原来的基础上添加。
MAYA_APP_DIR
该环境变量的默认值是 %USERPROFILE%\Documents\maya,如果要设置自定义的 MAYA_APP_DIR,那么在启动 Maya 前就要设置好,所以不能在 Maya.env 中设置,也不能在 Maya 启动后设置,请参阅:(待更新)
PYTHONPATH 和 userSetup.py 以及 MAYA_SCRIPT_PATH 和 userSetup.mel
userSetup.py 和 userSetup.mel:
在 MAYA_APP_DIR 下的文件夹 scripts 或者 (maya版本)\scripts 下的 userSetup.py 和 userSetup.mel 都会在 Maya 的启动过程(startup)中被自动执行,但是如果我们不同的工作会使用到不同的 userSetup,把这些文件放到 script 中会变得很麻烦。接下来看看如何用PYTHONPATH 和 MAYA_SCRIPT_PATH 来解决。
PYTHONPATH 和 userSetup.py:
1. 在该变量中路径下的 python 模块可以直接被 import。
2. 在该变量中路径下所有的 userSetup.py 都会在 Maya 启动过程中自动执行。
3. 在 userSetup.py 中 print 的信息会显示在启动maya后的那个 Output Window 中:
一些在userSetup中运行的命令,有时候并不会成功,因为一些命令要在maya完全启动后运行才会生效,所以需要使用 evalDeferred() 来在能运行的时候运行
MAYA_SCRIPT_PATH 和 userSetup.py:
1. 在该变量中路径下的 .mel 文件中的 procedures 都可以通过 Mel 来调用
2. 在该变量中路径下所有的 userSetup.mel 都会在 Maya 启动过程中自动执行。
2. 在 userSetup.mel 中 print 的信息会显示在启动maya后的 Script Editor 中:
MAYA_PLUG_IN_PATH
在该变量下的插件可以在 Maya 的插件管理器中找到 Windows -> Settings/Preferences -> Plugin-Manager。
在启动maya后去设置这个环境变量也是可以的,可以立即在 Plugin-Manager 中找到新的插件
MAYA_SHELF_PATH
Maya 工具架 Shelf ,在该变量下的路径中的 shelf_xxx.mel 会被添加到工具架中,以 maya2017 为例,可以在 MAYA_APP_DIR 下的 2017\prefs\shelves 中找到默认的 Shelves。
XBMLANGPATH
Icon 路径,在该变量下的路径中的图片文件可以直接用来当作界面控件的图标。
其它一些非 file path 常用的环境变量
MAYA_ENABLE_LEGACY_VIEWPORT=1
设置后就可以设置高版本的 Maya 视图的 Renderer 为 Legacy Viewport,可以在视图的右上角显示视图导航器(viewcube),方法(如果没显示):Display -> heads up display -> viewcube。
1:启用
0:关闭
MAYA_UI_LANGUAGE
en_US:英文界面
zh_CN:中文界面
注意:官方文档有提到在 Maya.env 中设置不会改变 Maya 的语言,应该也是要在 Maya 启动前就设置好的,虽然官方有说要在系统环境变量中设置,但是我想不管使用何种方式(例如 .bat),只要在 Maya 启动去设置好就行了。
结语:
更多的环境变量使用请阅读官方文档。