MakeFoot

導入

v4.0

詳細

3 ボーンの足のリグを作成します。足のリグは 6 つまたはそれ以上のガイド オブジェクトのコレクションから作成されます(ガイドの要件は、下記の GuideObjectCollection パラメータを参照してください)。

MakeFoot で作成したリグには、足コントロールと回転コントロールが含まれます。 必要に応じて分散コントロールを作成でき、通常、ドッグ レッグに IK を分散する際に使用します。 IK 分散コントロールは、デフォルトではMakeDogLegによって作成されます。

必要に応じて、足にシャドウ リグをアタッチすることができます。 シャドウ オブジェクトは足の各チェイン エレメントに対して作成され、シャドウ ボーンは実際の足のボーンにポーズで拘束されます。 シャドウ リグはリグのアニメーションをプロットする際に使用できます。

スクリプト構文

oFoot = MakeFoot( Model, Parent, [ShortPrefix], [FullPrefix], GuideObjectCollection, Sliders, [Extension], [ShadowType], [ShadowParent], [ThreeBoneToe] );

戻り値

Foot JScript オブジェクトを戻します。

パラメータ

パラメータ タイプ 説明
Model 文字列 足が所属するモデル。
Parent 文字列 足のコントロールの親。
ShortPrefix 文字列 新しいリグに使用する短い名前(通常は「L」または「R」)。 プリフィックスが指定されない場合は、その入力を求めるダイアログ ボックスが表示されます。
FullPrefix 文字列 新しいリグに使用する長い名前(通常は「Left」または「Right」)。 プリフィックスが指定されない場合は、その入力を求めるダイアログ ボックスが表示されます。
GuideObjectCollection 文字列 足を作成する際に検索される最低 6 つのオブジェクトのリスト。Middle Pivot、Right Pivot、Left Pivot に加えて、足の開始位置からつま先までつながっているオブジェクトが 3 つ以上必要です(すなわち、足には少なくとも 2 ボーンのチェインが必要です)。 その他のアイテムを脚全体の長さに加えることができます。
Sliders 文字列 足のパラメータのスライダ PPG。 何も指定しないと、スライダ ページが作成されます。
Extension Boolean ドッグレッグの IK 分散をコントロールするために、Extension オブジェクトを作成するかどうかを指定します。 True の場合は、Extension アイコンが作成されます。

デフォルト値: False

ShadowType Integer 足にアタッチするシャドウ リグのタイプ。 シャドウ リグは、アニメーションを転送または再マップするために使用します。

デフォルト値: 0

指定可能な値:

説明:

0 影無し
1 SI|3Dスケルトンのシャドウリグ
2 XSIスケルトンのシャドウリグ
3 ヌルのシャドウリグ
4 ボックスのシャドウリグ
ShadowParent 文字列 シャドウ リグ階層の親。 空の場合には、シャドウ リグは作成されません。
ThreeBoneToe Boolean True の場合、3 ボーンのつま先が作成されます。

デフォルト値: True

JScript の例

/*

	This script creates a three bone foot. 

*/

var guidecoll = new ActiveXObject("XSI.Collection");

guidecoll.Add( GetPrim("Null", "Guide_MiddlePivot") ); 

guidecoll.Add( GetPrim("Null", "Guide_RightPivot") ); 

guidecoll.Add( GetPrim("Null", "Guide_LeftPivot") ); 

guidecoll.Add( GetPrim("Null", "Guide_Ankle") ); 

guidecoll.Add( GetPrim("Null", "Guide_Foot") ); 

guidecoll.Add( GetPrim("Null", "Guide_Toe") ); 

guidecoll.Add( GetPrim("Null", "Guide_Toe2") ); 

var lXfm = guidecoll(0).Kinematics.Global.Transform

var lNull = GetPrim("Null", "Feet");

/*

	Left Leg

*/

//Pivots

lXfm.SetTranslationFromValues(2,0,-0.5);

guidecoll(0).Kinematics.Global.Transform = lXfm;

lXfm.SetTranslationFromValues(2.5,0,-0.5);

guidecoll(1).Kinematics.Global.Transform = lXfm;

lXfm.SetTranslationFromValues(1.5,0,-0.5);

guidecoll(2).Kinematics.Global.Transform = lXfm;

//Foot

lXfm.SetTranslationFromValues(2,4 ,0.25);

guidecoll(3).Kinematics.Global.Transform = lXfm;

lXfm.SetTranslationFromValues(2,1,2);

guidecoll(4).Kinematics.Global.Transform = lXfm;

lXfm.SetTranslationFromValues(2,0.25,5);

guidecoll(5).Kinematics.Global.Transform = lXfm;

lXfm.SetTranslationFromValues(2,0,8);

guidecoll(6).Kinematics.Global.Transform = lXfm;

var threeFoot = MakeFoot(lNull, GetPrim("Null", "ThreeBone"), "ABC", "ABCDE", guidecoll, null, null, null, null, true);

var twoFoot = MakeFoot(lNull, GetPrim("Null", "TwoBone"), "ABC", "ABCDE", guidecoll, null, null, null, null, false);

SelectObj("ThreeBone", "BRANCH", null);

Translate(null, -8.93099040438492, 0, 0, siRelative, siLocal, siObj, siXYZ, null, null, null, null, null, null, null, null, null, 0, null);

DumpFoot(twoFoot);

DumpFoot(threeFoot);

function DumpFoot(inFoot)

{

	logmessage ("------------------------");

	logmessage ("Data in the returned foot [" + inFoot.Parent + "]:");

	logmessage ("------------------------");

	logmessage ("Root        : " + inFoot.Root);

	logmessage ("Parent      : " + inFoot.Parent);

	logmessage ("BaseGuide   : " + inFoot.BaseGuide);

	logmessage ("FootGuides  : " + inFoot.FootGuides);

	logmessage ("Foot        : " + inFoot.Foot);

	logmessage ("Roll        : " + inFoot.Roll);

	logmessage ("Hidden      : " + inFoot.Hidden);

	logmessage ("Envelope    : " + inFoot.Envelope);

	logmessage ("Shadows     : " + inFoot.Shadows);

	logmessage ("ShadowsEnds : " + inFoot.ShadowEnds);

	logmessage ("Shadows     : " + inFoot.Shadows);

}

//results from running this script:

//INFO : Data in the returned foot:

//INFO : ------------------------

//INFO : Root        : ABCFootRoot

//INFO : Parent      : Parent

//INFO : BaseGuide   : ABCFootGuide4

//INFO : FootGuides  : ABCFootGuide1,ABCFootGuide2,ABCFootGuide3,ABCFootGuide4

//INFO : Foot        : ABCDEFoot

//INFO : Roll        : ABCDERoll

//INFO : Hidden      : ABCFootRoot,ABCFootEff,ABCFootBind1,ABCFootBind2,ABCFootBind3,ABCPivotBase,ABCPlacePivot,ABCPivotLeft,ABCPivotRight,ABCFootGuide1,ABCFootGuide2,ABCFootGuide3,ABCFootGuide4,ABCFootUpV1,ABCFootUpV2,ABCFootUpV3

//INFO : Envelope    : ABCFootBone1,ABCFootBone2,ABCFootBone3

//INFO : ShadowsStart: undefined

//INFO : ShadowsEnds : undefined

//INFO : Shadows     : undefined

関連項目

MakeLeg MakeDogLeg