ジャンプ先: 概要. 戻り値. 関連. フラグ. Python 例.
blendShape(
[objects]
, [after=boolean], [afterReference=boolean], [automatic=boolean], [before=boolean], [components=boolean], [copyDelta=[uint, uint, uint]], [copyInBetweenDelta=[uint, uint, uint, uint]], [deformerTools=boolean], [envelope=float], [exclusive=string], [export=string], [exportTarget=[int, int]], [flipTarget=[uint, uint]], [frontOfChain=boolean], [geometry=string], [geometryIndices=boolean], [ignoreSelected=boolean], [inBetween=boolean], [inBetweenIndex=uint], [inBetweenType=string], [includeHiddenSelections=boolean], [ip=string], [mergeSource=int], [mergeTarget=uint], [mirrorDirection=uint], [mirrorTarget=[uint, uint]], [name=string], [normalizationGroups=boolean], [origin=string], [parallel=boolean], [prune=boolean], [remove=boolean], [resetTargetDelta=[uint, uint]], [selectedComponents=boolean], [split=boolean], [suppressDialog=boolean], [symmetryAxis=string], [symmetryEdge=string], [symmetrySpace=uint], [tangentSpace=boolean], [target=[string, uint, string, float]], [topologyCheck=boolean], [transform=string], [useComponentTags=boolean], [weight=[uint, float]], [weightCount=uint])
注: オブジェクトの名前と引数を表す文字列は、カンマで区切る必要があります。これはシノプシスに示されていません。
blendShape は、取り消し可能、照会可能、および編集可能です。
このコマンドは、ブレンド シェイプ デフォーマで、初期のベースシェイプに対して各ターゲットシェイプの指定量だけブレンドするブレンド シェイプ デフォーマを作成します。ベース シェイプはそれぞれ、固有のターゲット シェイプのセットで変形されます。ターゲット シェイプには、シェイプのウェイト値の 1 つに関連付けるインデックスがあります。
作成モードの場合、セレクション リストの最初の項目はベース シェイプとして、その他の入力はターゲット シェイプとして扱われます。リストの最初の項目に複数のシェイプがグループ化されている場合、ターゲットにも同じシェイプの階層がある必要があります。デフォーマの -g フラグを使用して、さらにベース シェイプを編集モードに追加することができます。
照会モードでは、戻り値のタイプは照会されたフラグに基づきます。
bindSkin, boneLattice, copyFlexor, copySkinWeights, flexor, skinCluster, skinPercent, wire, wrinkle
after, afterReference, automatic, before, components, copyDelta, copyInBetweenDelta, deformerTools, envelope, exclusive, export, exportTarget, flipTarget, frontOfChain, geometry, geometryIndices, ignoreSelected, inBetween, inBetweenIndex, inBetweenType, includeHiddenSelections, ip, mergeSource, mergeTarget, mirrorDirection, mirrorTarget, name, normalizationGroups, origin, parallel, prune, remove, resetTargetDelta, selectedComponents, split, suppressDialog, symmetryAxis, symmetryEdge, symmetrySpace, tangentSpace, target, topologyCheck, transform, useComponentTags, weight, weightCount
ロング ネーム(ショート ネーム) |
引数タイプ |
プロパティ |
|
after(af)
|
boolean
|
|
|
既存のチェーンに対する挿入やアペンドの既定動作が目的どおりでない場合、新しいジオメトリ シェイプを作成する必要があっても、このフラグを使用して、コマンドによってチェーンの選択したノードの後にデフォーマ ノードを強制的に配置させることができます。作成モード(デフォーマにジオメトリが追加されていない場合は編集モード)で動作します。
|
|
afterReference(ar)
|
boolean
|
|
|
-afterReference フラグを使用して、-before と -after のどちらかが自動的に選択されるハイブリッド法でデフォーマの順序を指定します。変形されているジオメトリが参照される場合、新しいデフォーマを追加するときには -after モード が使用され、そうでないときには -before モードが使用されます。-afterReference を使ってデフォーマ チェーンを構築する場合の真の効果は、デフォーマ チェーンの内部シェイプ ノードがリファレンス ファイルの境界でしか表示されないため、デフォーマ ネットワークの負担が軽くなり、リファレンスの入れ替えをより柔軟にできる場合があることです。
|
|
automatic(at)
|
boolean
|
|
|
-automatic フラグを使用すると、-frontOfChain と -before のいずれかを自動的に選択する方法でデフォーマの順序を指定できます。変形するジオメトリが可逆的なデフォーマの影響のみを受ける場合は、-frontOfChain モードが使用され、そうでない場合は -before モードが使用されます。
|
|
before(bf)
|
boolean
|
|
|
既存のチェーンに対する挿入やアペンドの既定動作が目的どおりでない場合、新しいジオメトリ シェイプを作成する必要があっても、このフラグを使用して、コマンドによってチェーンの選択したノードの前にデフォーマ ノードを強制的に配置させることができます。作成モード(デフォーマにジオメトリが追加されていない場合は編集モード)で動作します。
|
|
components(cmp)
|
boolean
|
|
|
デフォーマで使用されているコンポーネントを返します。
|
|
copyDelta(cd)
|
[uint, uint, uint]
|
|
|
ベース、ソース、宛先デルタ インデックス値を設定します。
|
|
copyInBetweenDelta(cid)
|
[uint, uint, uint, uint]
|
|
|
ベース、ターゲット、ソース、宛先デルタ インデックス値を設定します。
|
|
deformerTools(dt)
|
boolean
|
|
|
デフォーマ ツール オブジェクト(ある場合)の名前を string string ... として返します。
|
|
envelope(en)
|
float
|
|
|
デフォメーション全体のどの程度を適用するかを制御する、デフォーマのエンベロープ値を設定します。既定は 1.0 です。
|
|
exclusive(ex)
|
string
|
|
|
デフォメーション セットを変形パーティションに置きます。
|
|
export(ep)
|
string
|
|
|
名前の付いたファイル パスにシェイプを書き出します。
|
|
exportTarget(et)
|
[int, int]
|
|
|
書き出しのためのベース インデックスとターゲット インデックスのペアを指定します。
|
|
flipTarget(ft)
|
[uint, uint]
|
|
|
frontOfChain(foc)
|
boolean
|
|
|
このコマンドを使用して、新しいデフォーマ ノードが、シェイプのヒストリで既存のデフォーマとスキン ノードの前(上流、ただし既存の微調整ノードの前ではありません)に配置されるように指定します。デフォーマへの入力は、表示される下流のシェイプではなく上流のシェイプです。したがって、このフラグの動作は、新しいデフォーマが追加されたときに下流のデフォーマがリセット位置(hasNoEffect)にある場合に、最も直感的になります。作成モード(デフォーマにジオメトリが追加されていない場合は編集モード)で動作します。
|
|
geometry(g)
|
string
|
|
|
-rm フラグも指定していない限り、指定したオブジェクトは、このデフォーマ オブジェクトによって変形されるオブジェクトのリストに追加されます。照会すると string string string ...を返します。
|
|
geometryIndices(gi)
|
boolean
|
|
|
照会モードで -geometry フラグを補完します。各ジオメトリのマルチ インデックスを返します。
|
|
ignoreSelected(ignoreSelected)
|
boolean
|
|
|
現在のセレクション リスト上のオブジェクトを変形しないようにコマンドに指示します。
|
|
ip(ip)
|
string
|
|
|
名前の付いたファイル パスからシェイプを読み込みます。
|
|
inBetween(ib)
|
boolean
|
|
|
指定したターゲットがインビトウィーンとして機能することを示します。インビトウィーン ターゲットは、ベース シェイプと別のターゲット間の中間的なターゲットとして機能するものです。
|
|
inBetweenIndex(ibi)
|
uint
|
|
|
このインデックスで定義されたインビトウィーン ターゲット ジオメトリ内でポイントのデルタ値を除去する場合に限り、-rtd/-resetTargetDelta フラグと一緒に使用されます。
|
|
inBetweenType(ibt)
|
string
|
|
|
作成するインビトウィーン ターゲットがヒーロー ターゲットに対して相対的であるか、または絶対であるかを指定します。ヒーロー ターゲットに対して相対的である場合、インビトウィーン ターゲットにはヒーロー ターゲットに加えられた変更がすべて反映されます。有効な値は、相対(relative)または絶対(absolute)です。このフラグは、常に -ib/-inBetween と -t/-target フラグと一緒に使用する必要があります。
|
|
includeHiddenSelections(ihs)
|
boolean
|
|
|
セレクション リスト内の任意の表示および非表示オブジェクトにデフォーマを適用します。既定は false です。
|
|
mergeSource(mgs)
|
int
|
|
|
mergeTarget(mgt)
|
uint
|
|
|
mirrorDirection(md)
|
uint
|
|
|
mirrorTarget(mt)
|
[uint, uint]
|
|
|
name(n)
|
string
|
|
|
作成されるノードの名前を指定するために使用されます。
|
|
normalizationGroups(ng)
|
boolean
|
|
|
使用した正規化グループ ID のリストを返します。
|
|
origin(o)
|
string
|
|
|
既定では、blendShape はワールド空間に対して実行されます。有効な値は「world」と「local」です。local フラグは、シェイプのローカルの原点に対してブレンド シェイプを実行します。
|
|
parallel(par)
|
boolean
|
|
|
オブジェクトのヒストリの既存のデフォーマに平行するチェーンの新規デフォーマを挿入します。blendShape を挿入して、平行の結果とブレンドします。作成モード(デフォーマにジオメトリが追加されていない場合は編集モード)で動作します。
|
|
prune(pr)
|
boolean
|
|
|
現在の設定のデフォーマによって変形されないポイントをデフォーマ セットから除去します。
|
|
remove(rm)
|
boolean
|
|
|
-g フラグの後ろにリストされているオブジェクトをこのデフォーマから除去するように指定します。
|
|
resetTargetDelta(rtd)
|
[uint, uint]
|
|
|
ターゲット インデックスによって定義されたすべての連続ターゲットを含む、ターゲット ジオメトリ内のポイントのすべてのデルタ値を除去します。 パラメータ リスト:
- uint: ベース オブジェクトのインデックス
- uint: ターゲットのインデックス
|
|
selectedComponents(cms)
|
boolean
|
|
|
現在選択されているデフォーマで使用されているコンポーネントを返します。これは、現在の選択項目とデフォーマの影響を受けるコンポーネントを交差させます。
|
|
split(sp)
|
boolean
|
|
|
デフォーマを既存のチェーンに挿入/アペンドする代わりに、ディペンデンシー グラフで新しいチェーンを分岐させます。作成モード(デフォーマにジオメトリが追加されていない場合は編集モード)で動作します。
|
|
suppressDialog(sd)
|
boolean
|
|
|
ダイアログ ボックスを表示しないで、ユーザが定義したとおりにコマンドを実行します。
|
|
symmetryAxis(sa)
|
string
|
|
|
対称の軸です。有効な値は「X」、「Y」、「Z」です。
|
|
symmetryEdge(se)
|
string
|
|
|
「.」で区切られた 1 つまたは 2 つの対称エッジの名前です。有効な値については、blendShape ノードの symmetryEdge アトリビュートを参照してください。
|
|
symmetrySpace(ss)
|
uint
|
|
|
対称のスペースです。0 = トポロジ、1 = オブジェクト、2 = UV
|
|
tangentSpace(ts)
|
boolean
|
|
|
指定したターゲットのデルタが、サーフェスの接線空間に対して相対的になるべきであることを示します。
|
|
target(t)
|
[string, uint, string, float]
|
|
|
ベース シェイプ ベース オブジェクトのインデックス ターゲット シェイプとしてターゲット オブジェクトを設定します。シェイプのウェイトが targetValue の場合、ターゲット シェイプの影響を 100%受けます。 パラメータ リスト:
- string: ベース オブジェクト
- int:インデックス
- string: ターゲット オブジェクト
- double:ターゲット値
|
|
topologyCheck(tc)
|
boolean
|
|
|
ブレンドするシェイプ間のトポロジ一致のチェック状態を設定します。既定はオンです。
|
|
transform(tr)
|
string
|
|
|
ターゲットのトランスフォームを設定します。デルタはポスト トランスフォームに対して相対的になります。通常、このオプションに最適なワークフローは、導入した修正に関連するジョイントを選択することです。このフラグは、blendShape ノードの「変形順序」が「前」である場合のみ使用する必要があります。
|
|
useComponentTags(uct)
|
boolean
|
|
|
このフラグを指定すると、componentTags を使用した設定が作成されます。つまり、groupId、groupParts、tweak、または objectSet ノードは作成されず、新しいデフォーマに接続されません。
|
|
weight(w)
|
[uint, float]
|
|
|
インデックス(最初のパラメータ)のウェイト値(2 番目のパラメータ)を設定します。
|
|
weightCount(wc)
|
uint
|
|
|
フラグはコマンドの作成モードで表示できます
|
フラグはコマンドの編集モードで表示できます
|
フラグはコマンドの照会モードで表示できます
|
フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。
|
import maya.cmds as cmds
#
# Perform a blendShape using the currently-selected objects.
# The lead (last-selected) object will be the base shape, and each
# of the others become targets.
#
cmds.blendShape()
#
# Create a blendShape that starts with curve3 as the base, and blends
# in curve1 and curve2 as targets.
cmds.blendShape( 'curve1', 'curve2', 'curve3' )
#
# Apply 80% of the total blendShape deformation, by setting
# the envelope parameter to 0.8
cmds.blendShape( 'blendShape1', edit=True, en=0.8 )
#
# Set the weights for the first two target shapes to 0.6
# and 0.1 respecxtively
cmds.blendShape( 'blendShape1', edit=True, w=[(0, 0.6), (1, 0.1)] )
#
# Add a third target (target3) to the blendShape on curve3
cmds.blendShape( 'blendShape1', edit=True, t=('curve3', 1, 'target3', 1.0) )
#
# Add an inbetween (smirk) on target3 for base shape curve3
# The inbetween will take effect at a weight of 0.2
cmds.blendShape( 'blendShape2', edit=True, ib=True, t=('curve3', 2, 'smirk', 0.2) )