每次我通过 MEL 在 Maya 中创建新的 IK 手柄时,它都会创建一个名为“effector1”或“effector2”的末端效应器,具体取决于我的场景中的内容。我不想依赖末端执行器的自动名称,所以我想知道是否有办法:
a) 在创建 IK 手柄时命名效应器,或者
b) 为 MEL 中的特定 IK 控制柄选择效应器。
任何帮助将不胜感激 - 谢谢!
以下是获取和重命名名为 ikHandle1 的特定句柄的末端执行器的方法:
string $ee = `ikHandle -q -endEffector ikHandle1`;
// Result: effector1 //
rename $ee "mynewname";
// Result: mynewname //
我知道这真的很晚了,但是我在 kb 的回答的帮助下制作了一个新脚本,以根据已经命名的内容对其进行重命名。以防万一将来有人遇到这种情况。
//selects all IKHandles
select `ls -type ikHandle`;
//stores them in an array
string $handles[] = `ls -sl`;
//for each item in the array,
for($handle in $handles)
{
//create a new name by adding "_effector" to the end
string $newName = ($handle + "_effector");
//find the effector and store that name in a variable
string $efName = `ikHandle -q -endEffector $handle`;
//rename the effector
rename $efName $newName;
}
如果您不想重命名所有IK 手柄,只需注释掉第一行代码,
select `ls -type ikHandle`;
选择要重命名的所有句柄并运行代码。