ジャンプ先: 概要. 戻り値. 関連. フラグ. 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 フラグを使用して、さらにベース シェイプを編集モードに追加することができます。

戻り値

string[](ブレンド シェイプ ノード名)

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

関連

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 createedit
既存のチェーンに対する挿入やアペンドの既定動作が目的どおりでない場合、新しいジオメトリ シェイプを作成する必要があっても、このフラグを使用して、コマンドによってチェーンの選択したノードの後にデフォーマ ノードを強制的に配置させることができます。作成モード(デフォーマにジオメトリが追加されていない場合は編集モード)で動作します。
afterReference(ar) boolean createedit
-afterReference フラグを使用して、-before と -after のどちらかが自動的に選択されるハイブリッド法でデフォーマの順序を指定します。変形されているジオメトリが参照される場合、新しいデフォーマを追加するときには -after モード が使用され、そうでないときには -before モードが使用されます。-afterReference を使ってデフォーマ チェーンを構築する場合の真の効果は、デフォーマ チェーンの内部シェイプ ノードがリファレンス ファイルの境界でしか表示されないため、デフォーマ ネットワークの負担が軽くなり、リファレンスの入れ替えをより柔軟にできる場合があることです。
automatic(at) boolean createedit
-automatic フラグを使用すると、-frontOfChain と -before のいずれかを自動的に選択する方法でデフォーマの順序を指定できます。変形するジオメトリが可逆的なデフォーマの影響のみを受ける場合は、-frontOfChain モードが使用され、そうでない場合は -before モードが使用されます。
before(bf) boolean createedit
既存のチェーンに対する挿入やアペンドの既定動作が目的どおりでない場合、新しいジオメトリ シェイプを作成する必要があっても、このフラグを使用して、コマンドによってチェーンの選択したノードの前にデフォーマ ノードを強制的に配置させることができます。作成モード(デフォーマにジオメトリが追加されていない場合は編集モード)で動作します。
components(cmp) boolean query
デフォーマで使用されているコンポーネントを返します。
copyDelta(cd) [uint, uint, uint] edit
ベース、ソース、宛先デルタ インデックス値を設定します。
copyInBetweenDelta(cid) [uint, uint, uint, uint] edit
ベース、ターゲット、ソース、宛先デルタ インデックス値を設定します。
deformerTools(dt) boolean query
デフォーマ ツール オブジェクト(ある場合)の名前を string string ... として返します。
envelope(en) float createqueryedit
デフォメーション全体のどの程度を適用するかを制御する、デフォーマのエンベロープ値を設定します。既定は 1.0 です。
exclusive(ex) string createquery
デフォメーション セットを変形パーティションに置きます。
export(ep) string edit
名前の付いたファイル パスにシェイプを書き出します。
exportTarget(et) [int, int] editmultiuse
書き出しのためのベース インデックスとターゲット インデックスのペアを指定します。
flipTarget(ft) [uint, uint] editmultiuse
ベースとターゲットのペアのリストを反転します。
frontOfChain(foc) boolean createedit
このコマンドを使用して、新しいデフォーマ ノードが、シェイプのヒストリで既存のデフォーマとスキン ノードの前(上流、ただし既存の微調整ノードの前ではありません)に配置されるように指定します。デフォーマへの入力は、表示される下流のシェイプではなく上流のシェイプです。したがって、このフラグの動作は、新しいデフォーマが追加されたときに下流のデフォーマがリセット位置(hasNoEffect)にある場合に、最も直感的になります。作成モード(デフォーマにジオメトリが追加されていない場合は編集モード)で動作します。
geometry(g) string queryeditmultiuse
-rm フラグも指定していない限り、指定したオブジェクトは、このデフォーマ オブジェクトによって変形されるオブジェクトのリストに追加されます。照会すると string string string ...を返します。
geometryIndices(gi) boolean query
照会モードで -geometry フラグを補完します。各ジオメトリのマルチ インデックスを返します。
ignoreSelected(ignoreSelected) boolean create
現在のセレクション リスト上のオブジェクトを変形しないようにコマンドに指示します。
ip(ip) string edit
名前の付いたファイル パスからシェイプを読み込みます。
inBetween(ib) boolean createedit
指定したターゲットがインビトウィーンとして機能することを示します。インビトウィーン ターゲットは、ベース シェイプと別のターゲット間の中間的なターゲットとして機能するものです。
inBetweenIndex(ibi) uint edit
このインデックスで定義されたインビトウィーン ターゲット ジオメトリ内でポイントのデルタ値を除去する場合に限り、-rtd/-resetTargetDelta フラグと一緒に使用されます。
inBetweenType(ibt) string createedit
作成するインビトウィーン ターゲットがヒーロー ターゲットに対して相対的であるか、または絶対であるかを指定します。ヒーロー ターゲットに対して相対的である場合、インビトウィーン ターゲットにはヒーロー ターゲットに加えられた変更がすべて反映されます。有効な値は、相対(relative)または絶対(absolute)です。このフラグは、常に -ib/-inBetween と -t/-target フラグと一緒に使用する必要があります。
includeHiddenSelections(ihs) boolean create
セレクション リスト内の任意の表示および非表示オブジェクトにデフォーマを適用します。既定は false です。
mergeSource(mgs) int editmultiuse
マージするソース インデックスのリストです。
mergeTarget(mgt) uint edit
マージするターゲット インデックスです。
mirrorDirection(md) uint edit
ミラー方向です。0 = 負、1 = 正
mirrorTarget(mt) [uint, uint] editmultiuse
ベースとターゲットのペアのリストをミラーします。
name(n) string create
作成されるノードの名前を指定するために使用されます。
normalizationGroups(ng) boolean query
使用した正規化グループ ID のリストを返します。
origin(o) string create
既定では、blendShape はワールド空間に対して実行されます。有効な値は「world」と「local」です。local フラグは、シェイプのローカルの原点に対してブレンド シェイプを実行します。
parallel(par) boolean createedit
オブジェクトのヒストリの既存のデフォーマに平行するチェーンの新規デフォーマを挿入します。blendShape を挿入して、平行の結果とブレンドします。作成モード(デフォーマにジオメトリが追加されていない場合は編集モード)で動作します。
prune(pr) boolean edit
現在の設定のデフォーマによって変形されないポイントをデフォーマ セットから除去します。
remove(rm) boolean editmultiuse
-g フラグの後ろにリストされているオブジェクトをこのデフォーマから除去するように指定します。
resetTargetDelta(rtd) [uint, uint] editmultiuse
ターゲット インデックスによって定義されたすべての連続ターゲットを含む、ターゲット ジオメトリ内のポイントのすべてのデルタ値を除去します。
パラメータ リスト:
  1. uint: ベース オブジェクトのインデックス
  2. uint: ターゲットのインデックス
selectedComponents(cms) boolean query
現在選択されているデフォーマで使用されているコンポーネントを返します。これは、現在の選択項目とデフォーマの影響を受けるコンポーネントを交差させます。
split(sp) boolean createedit
デフォーマを既存のチェーンに挿入/アペンドする代わりに、ディペンデンシー グラフで新しいチェーンを分岐させます。作成モード(デフォーマにジオメトリが追加されていない場合は編集モード)で動作します。
suppressDialog(sd) boolean createedit
ダイアログ ボックスを表示しないで、ユーザが定義したとおりにコマンドを実行します。
symmetryAxis(sa) string queryedit
対称の軸です。有効な値は「X」、「Y」、「Z」です。
symmetryEdge(se) string queryeditmultiuse
「.」で区切られた 1 つまたは 2 つの対称エッジの名前です。有効な値については、blendShape ノードの symmetryEdge アトリビュートを参照してください。
symmetrySpace(ss) uint queryedit
対称のスペースです。0 = トポロジ、1 = オブジェクト、2 = UV
tangentSpace(ts) boolean createedit
指定したターゲットのデルタが、サーフェスの接線空間に対して相対的になるべきであることを示します。
target(t) [string, uint, string, float] createqueryeditmultiuse
ベース シェイプ ベース オブジェクトのインデックス ターゲット シェイプとしてターゲット オブジェクトを設定します。シェイプのウェイトが targetValue の場合、ターゲット シェイプの影響を 100%受けます。
パラメータ リスト:
  1. string: ベース オブジェクト
  2. int:インデックス
  3. string: ターゲット オブジェクト
  4. double:ターゲット値
topologyCheck(tc) boolean create
ブレンドするシェイプ間のトポロジ一致のチェック状態を設定します。既定はオンです。
transform(tr) string queryedit
ターゲットのトランスフォームを設定します。デルタはポスト トランスフォームに対して相対的になります。通常、このオプションに最適なワークフローは、導入した修正に関連するジョイントを選択することです。このフラグは、blendShape ノードの「変形順序」が「前」である場合のみ使用する必要があります。
useComponentTags(uct) boolean create
このフラグを指定すると、componentTags を使用した設定が作成されます。つまり、groupId、groupParts、tweak、または objectSet ノードは作成されず、新しいデフォーマに接続されません。
weight(w) [uint, float] createqueryeditmultiuse
インデックス(最初のパラメータ)のウェイト値(2 番目のパラメータ)を設定します。
weightCount(wc) uint createqueryedit
シェイプのウェイト値を数値で設定します。

フラグはコマンドの作成モードで表示できます フラグはコマンドの編集モードで表示できます
フラグはコマンドの照会モードで表示できます フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。

Python 例

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) )