ジャンプ先: 概要. 戻り値.
キーワード. 関連項目.
フラグ. Python 例.
retarget([endFrame=int], [lowerBody=string], [lowerScale=string], [lowerScaleFactor=float],
[maintainOffset=boolean],
[restPoseFrame=int],
[scaleHandsFrom=string],
[startFrame=int], [upperBody=string], [upperScale=string], [upperScaleFactor=float],
[useExistingKeys=boolean])
注意:
オブジェクト名や引数を表す文字列はカンマで区切ります。これは概要には示されていません。
retarget は 「元に戻す」が可能、「照会」が不可能、「編集」が不可能 です。
このコマンドを使用して、キャラクタのモーションを、サイズの異なるキャラクタへとリターゲットします。
なし
character, clip, animation, joint
character, characterMap, joint
endFrame, lowerBody, lowerScale, lowerScaleFactor, maintainOffset, restPoseFrame, scaleHandsFrom, startFrame, upperBody, upperScale, upperScaleFactor, useExistingKeys
ロング ネーム(ショート ネーム) |
引数型 |
プロパティ |
lowerBody(lb) |
string |
|
|
下半身へのリターゲット方法を指定します。有効なオプションは、「jointRotationsOnly」、「scaledFootPlacement」、「absoluteFootPlacement」で、デフォルトは
scaledFootPlacement です。 |
|
lowerScale(ls) |
string |
|
|
下半身のスケールを計算する方法を指定します。有効な方法は、「hipToFoot」、「hipToToe」、「overallHeight」、「other」です。このオプションは、lowerBody
フラグを「jointRotationsOnly」以外に設定した場合に使用します。デフォルトは hipToFoot
です。「other」を使用する場合は、lowerScaleFactor フラグを使用してスケール係数を指定します。 |
|
lowerScaleFactor(lsf) |
float |
|
|
下半身のスケール係数を指定します。このオプションは、lowerScale
が「other」に設定されている場合のみに使用します。 |
|
upperBody(ub) |
string |
|
|
上半身へのリターゲット方法を指定します。有効な方法は、「jointRotationsOnly」、「scaledHandPlacement」、「absoluteHandPlacement」、「maintainHandDistance」で、デフォルトは
jointRotationsOnly です。 |
|
upperScale(us) |
string |
|
|
上半身のスケールを計算する方法を指定します。有効な方法は、「shoulderToWrist」、「shoulderToHand」、「followLower」、「other」です。このオプションは、upperBody
フラグを「jointRotationsOnly」以外に設定した場合に使用します。デフォルトは shoulderToHand
です。「other」を使用する場合は、upperScaleFactor
フラグを使用してスケール係数を指定する必要があります。 |
|
upperScaleFactor(usf) |
float |
|
|
上半身のスケール係数を指定します。このオプションは、upperScale
が「other」に設定されている場合に使用します。 |
|
scaleHandsFrom(shf) |
string |
|
|
腕をスケールする起点を指定します。有効な引数は、「shoulder」、「root」、「origin」です。このオプションは、upperBody
フラグを「scaledHandPlacement」に設定した場合のみに使用します。デフォルトは shoulder です。 |
|
startFrame(s) |
int |
|
|
リターゲットの開始フレームを指定します。デフォルトは 0 です。 |
|
endFrame(end) |
int |
|
|
リターゲットの終了フレームを指定します。デフォルトは 10 です。 |
|
maintainOffset(mo) |
boolean |
|
|
このフラグを使用すると、ターゲット キャラクタのルートのソースからの距離が、レスト ポーズと同じになります。 |
|
useExistingKeys(uek) |
boolean |
|
|
このフラグを使用すると、ターゲット上の既存のキーがリターゲッティングの解の手がかりとして使用されます。このオプションによって、ソルバがより正確な解を絞り込むことができます。 |
|
restPoseFrame(rpf) |
int |
|
|
リターゲッティングの解がキャラクタのレスト ポーズを考慮します。たとえば、レスト ポーズが O
脚のキャラクタと、そうではないキャラクタがあると仮定します。O
脚のキャラクタからそうではないキャラクタへ、歩行のアニメーションをリターゲッティングすると、解はターゲット キャラクタのレスト
ポーズを考慮し、ターゲットは O 脚ではない歩行アニメーションを受け取ります。 restPose を指定する場合、次の 2
つのオプションがあります。レスト ポーズが定義されているフレーム番号を指定するか、またはリターゲッティング >
SetRestPose(Retargeting > SetRestPose)メニュー項目を使用してリターゲッティングするレスト
ポーズを定義します。 レスト
ポーズのフレーム番号を使用する場合は、リターゲッティングするフレーム範囲にないフレームを使用する方法が最良です。レスト
ポーズに影響することなく、リターゲットを実行することができます。 |
|
: コマンドの作成モードで使用可能なフラグ |
: コマンドの編集モードで使用可能なフラグ |
: コマンドの照会モードで使用可能なフラグ |
: タプルまたはリストとして渡された複数の引数を持てるフラグ |
import maya.cmds as cmds
# retarget the motion of bob onto joe using the scaled foot placement solver
#
cmds.retarget( 'bob', 'joe', startFrame=0, endFrame=30, lowerBody='scaledFootPlacement' )
# Retarget the motion of birdman onto splinterFace using the scaled foot placement
# solver (default), using the hip-to-toe measurement to compute the scale.
# Use the hierarchy location at frame -5 as the rest pose.
#
cmds.select( 'splinterFace', 'birdman', r=True )
cmds.retarget( startFrame=0, endFrame=30, lowerScale='hipToToe', restPoseFrame=-5 )