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`;
名前を変更するすべてのハンドルを選択し、コードを実行します。