ジャンプ先: 概要. 戻り値. 関連. フラグ. MEL 例.

概要

skinPercent [-ignoreBelow float] [-normalize boolean] [-pruneWeights float] [-relative boolean] [-resetToDefault] [-transform string] [-transformMoveWeights string] [-transformValue string float] [-value] [-zeroRemainingInfluences boolean] [object] [selectionList]

skinPercent は、取り消し可能、照会可能、および編集不可能です。

このコマンドは、1 番目の引数として指定された skinCluster ノードのメンバーのウェイト値を編集、照会します。コマンド ラインでオブジェクトのコンポーネントが明示的に指定されていない場合、現在のセレクション リストが使用されます。

このコマンドの 1 回の使用で複数のウェイトを設定する方が、ウェイトをかけた頂点 1 つについて 1 回コールするより、はるかに効率的です。

戻り値

なし

照会モードでは、戻り値のタイプは照会されたフラグに基づきます。

関連

copySkinWeights, skinCluster

フラグ

ignoreBelow, normalize, pruneWeights, relative, resetToDefault, transform, transformMoveWeights, transformValue, value, zeroRemainingInfluences
ロング ネーム(ショート ネーム) 引数タイプ プロパティ
-ignoreBelow(-ib) float query
-value と -transform による照会で、指定した限度以上のウェイト値を持つエントリだけが出力されるようにします。このフラグは、-query フラグの前に使用する必要があります。

照会モードでは、このフラグに値が必要になります。

-normalize(-nrm) boolean create
設定されている場合、-transformValue フラグによって値が割り当てられていないウェイトを正規化して、選択したオブジェクト コンポーネントのすべてのウェイトの合計が 1 になるようにします。既定はオンです。注: skinCluster には normalizeWeights アトリビュートがあり、これをオフにするとアトリビュートがオーバーライドされます。skinCluster.normalizeWeights アトリビュートがオフの場合、skinPercent コマンドでウェイトを正規化するには、このアトリビュートをインタラクティブ(Interactive)に設定する必要があります。
-pruneWeights(-prw) float create
選択したすべてのコンポーネントのうち、指定した値より小さいウェイトを持つコンポーネントのウェイトを 0 に設定します。このコマンドを使用してすべてのウェイトを 0 に設定するには、-normalize フラグを「オフ」にする必要があります。そうでないと、すべてのウェイトを 0 にした後で、ウェイトの合計が 1 になるように skinCluster ノードによってウェイトが正規化されます。ウェイトを保持(Hold Weights)アトリビュートに true が設定されているウェイトは 0 になりません。
-relative(-r) boolean create
-transformValue と一緒に使用して、値の相対設定を指定します。-relative が true の場合、-tv に渡された値は前の値に追加されます。false の場合は、渡された値が前の値と置き換えられます。
-resetToDefault(-rtd) create
選択したコンポーネントのウェイトを既定値に設定し、カスタム ウェイトを上書きします。
-transform(-t) string query
MEL で(引数を指定せずに) -query フラグの後ろで使用する場合、コマンドは、選択したオブジェクト コンポーネントに作用するトランスフォームの名前に対応する文字列の配列を返します。 (トランスフォームの名前を指定して) -query フラグの前で使用する場合、コマンドは、指定したトランスフォームに対応する選択したオブジェクト コンポーネントのウェイトを返します。複数コンポーネントが選択されている場合は、平均ウェイトが戻されます。 Python で、トランスフォームの名前でなく、なし(None)と組み合わせて使用した場合、このコマンドは、選択したオブジェクト コンポーネントに影響するトランスフォームの名前に対応する文字列の配列を返します。トランスフォームの名前と組み合わせて使用した場合は、選択したオブジェクトのウェイトを返します。複数コンポーネントが選択されている場合は、平均ウェイトが戻されます。

照会モードでは、このフラグは値を受け入れることができます。

-transformMoveWeights(-tmw) string createmultiuse
このフラグを使用して、ウェイトをソース インフルエンスから 1 つ以上のターゲット インフルエンスへ転送します。このフラグは選択された頂点で作用します。有効なコマンドを生成するには、このフラグを 2 回以上使用する必要があります。最初のフラグはウェイトのコピー元となるソース インフルエンスを示すために使用します。後続のフラグはターゲット インフルエンスを示すために使用します。
-transformValue(-tv) string float createmultiuse
トランスフォーム名と値からなるペアを受け取り、指定したトランスフォームに対応する選択したオブジェクト コンポーネントのウェイトとしてその値を割り当てます。
-value(-v) query
選択したオブジェクト コンポーネントのジョイントのウェイトに対応する double の配列を返します。
-zeroRemainingInfluences(-zri) boolean create
設定すると、-transformValue フラグによって割り当てられていないウェイトは 0 に設定されます。既定はオフです。

フラグはコマンドの作成モードで表示できます フラグはコマンドの編集モードで表示できます
フラグはコマンドの照会モードで表示できます コマンド内でフラグを複数回使用できます。

MEL 例

// Create a joint chain and a polygonal plane and bind the plane as skin
//
select -d;
joint -p -3 0 -12;
joint -p -3 0 -5;
joint -p 1 0 5.5;
joint -p 6 0 10;
polyPlane -w 20.0 -h 20.0 -sx 25 -sy 25;
skinCluster joint1 pPlane1;

// For vtx[100], set the weight wrt joint1 to 0.2, the weight
// wrt joint3 to 0.8 and adjust the remaining weights to keep
// the overall weight normalized (i.e. set all other joints to zero,
// since the weights we are setting sum to 1.0)
//
skinPercent -transformValue joint1 0.2 -transformValue joint3 0.8 skinCluster1 pPlane1.vtx[100];

// Get the weight values of all the influences for this point
//
skinPercent -query -value skinCluster1 pPlane1.vtx[100];

// Get the weight values that are above 0.5
//
skinPercent -ignoreBelow 0.5 -query -value skinCluster1 pPlane1.vtx[100];

// Get the weight of vtx[100] corresponding to joint3
//
skinPercent -transform joint3 -query skinCluster1 pPlane1.vtx[100];

// Get the names of the joints influencing vtx[100]
//
skinPercent -query -transform skinCluster1 pPlane1.vtx[100];

// Normalize the existing weights for vtx[100]
//
skinPercent -normalize on skinCluster1 pPlane1.vtx[100];

// Reset the weights for vtx[100] to their default values
//
skinPercent -resetToDefault skinCluster1 pPlane1.vtx[100];

// Zero all the weights that are below 0.1
//
skinPercent -pruneWeights 0.1 skinCluster1 pPlane1;

// Zero all the weights
//
skinPercent -pruneWeights 100 -normalize off skinCluster1 pPlane1;

// Assign weights to a large number of vertices, several at a time to
// reduce the number of calls to the skinPercent command.
//
for ( $i = 0; $i <= 675; $i +=10 ) {
    skinPercent -transformValue joint1 0.5
        -transformValue joint2 0.5 skinCluster1 pPlane1.vtx[$i] pPlane1.vtx[$i+1] pPlane1.vtx[$i+2]
        pPlane1.vtx[$i+3] pPlane1.vtx[$i+4] pPlane1.vtx[$i+5]
        pPlane1.vtx[$i+6] pPlane1.vtx[$i+7] pPlane1.vtx[$i+8]
        pPlane1.vtx[$i+9];
}