macos - 每次 Maya 启动时,我可以将 MEL 文件放在哪里以显示自定义 HUD?
问题描述
我写了一个 MEL 脚本,在 ScriptEditor 中它工作正常。我想将此 MEL 脚本保存在.mel
用于自定义平视显示器的文件中,该文件显示所选几何体的三个平移参数,并且我希望每次加载 Maya 时此 HUD 都出现在视口中。我在 Mac 上运行 Maya。
我怎样才能做到这一点?
headsUpDisplay -removePosition 0 1;
global proc float[] objectPosition() {
string $selectedNodes[] = `selectedNodes`;
float $position[3];
if (size($selectedNodes) > 0) {
string $mainObject = $selectedNodes[ (size($selectedNodes)-1) ];
$position[0] = `getAttr $mainObject.translateX`;
$position[1] = `getAttr $mainObject.translateY`;
$position[2] = `getAttr $mainObject.translateZ`;
} else {
$position[0] = 0;
$position[1] = 0;
$position[2] = 0;
}
return $position;
}
headsUpDisplay
-section 0
-block 1
-label "Position:"
-command "objectPosition()"
-event "SelectionChanged"
-nodeChanges "attributeChange"
BrandNewHUD;
解决方案
第一种方法
我所要做的就是userSetup.mel
在以下目录中创建一个名为的文件:
- Mac OS:~/Library/Preferences/Autodesk/maya/scripts
- Windows:\我的文档\maya\scripts
- Linux:~/maya/scripts
我把我的 MEL 脚本放在那里。每当 Maya 启动时,它都会显示我的自定义 HUD。
第二种方法
或者,我可以将我的脚本插入initHUD.mel
位于 MacOS 目录中:
- /Applications/Autodesk/maya2020/Maya.app/Contents/scripts/startup/
但小心点!不要在那里犯错!
推荐阅读
- java - 无法构建 Hibernate SessionFactory 没有明显的原因
- php - 带有主键的 Laravel 迁移删除列(错误)
- bash - 从白名单和管道读取环境变量到 sed
- r - 在 RETICULATE_PYTHON 环境变量中指定网状 python 路径
- c# - 是否可以使用 JSON 作为值而不是 JSON 字符串来创建自定义声明?
- sql-scripts - 如何使用绑定变量执行 SQL 脚本
- sql - 是否有检查宏变量中是否存在元素的功能?
- rxjs - RXjs 在将另一个值传递给同一个订阅者之前向订阅者发出一个值
- oauth - Microsoft Graph - 使用 client_credentials 流访问 /me 或 /user/{id}/ 端点 - 请求的用户无效
- laravel-backpack - 如何使用背包为 laravel 创建补丁动作