ActionSource

Object Hierarchy | 関連する C++クラス:ActionSource

継承

SIObject

ProjectItem

Source

ActionSource

導入

v1.5

詳細

ActionSource オブジェクトはSourceオブジェクトの特化したタイプで、アクションとシェープアニメーションクリップのソースを表します。このタイプのアクションソースは、ActionSource.SourceItemsプロパティを使用してAnimationSourceItemとしてアクセスできる、DataSource 項目(FCurveExpressionなど)から構成されます。サポートされているアニメーションのソースタイプのリストについては、siAnimationSourceItemType列挙子を参照してください。

アクションはパラメータの変更に基づきます。これは、パラメータベースであるため、一般的に「ローレベルのアニメーション」と呼ばれます。一般に、アクション コンポーネントは FCurveConstraintStaticSource (スタティック ポーズ) および ShapeKey です。Model.AddActionSource メソッドを使用して、これらのコンポーネントをアクション ソースとしてバンドルできます。

シェイプアニメーションはポイントの位置の変更に基づいています。したがって、ジオメトリの全体的なシェイプの変更はリファレンスシェイプから成ります(リファレンス シェイプは、モデリング オペレータ スタックの結果を構成します。)クラスタへのこれらの変更は、UI のオブジェクトのジオメトリのクラスタ ノードの下に ShapeKey として保存されます。Mixerでは、ShapeClipとして ShapeKey はとしてインスタンス化されます。

注:アクションソースでは、デフォルトによって適用されるパラメータのパスは常にRelative Nameとして保存されます。そのため、ソースは接続マップテンプレートがない場合でもその他のモデル下においてインスタンス化されます。

クリップとミキサがインタラクトにやり取りするため、アクションソースは多くの場合、ミキサに関連付けられています。ただし、インスタンス化されないアクション、またはSimulationEnvironmentオブジェクトにキャッシュすることを示すアクションは、ミキサまたはモデルには関連付けられません。[Sources]コンテナまたは[Scene]>[Environments]>[Environment]>[Caches]コンテナにのみ関連付けられます。このような場合、機能の一部は制限されます(たとえば、ベースプロパティSIObject.ParentまたはProjectItem.Modelの呼び出しは、これらのソースを含むモデルがないため動作しません)。

そのクリップから既存のアクションソースのポインタを取得する場合は、Clip.Sourceプロパティを使用できます。すべてのアクションソースは、インスタンス化されていない場合でも、Model.Sourcesプロパティを介して、所属するModelからDataSourceCollectionとして使用できます。

重要: これらのソースは DataSourceCollection として使用できますが、繰り返し使用すると、FCurveExpression などの個別 DataSource オブジェクトではなく、実際の ActionSource オブジェクトを取得します。このことを認識しておくのが重要なのは、ActionSource オブジェクトにより、特定のメソッドやプロパティにアクセスできるためです。

オブジェクトモデルを使用して ActionSource オブジェクトを作成する場合は、Model.AddActionSourceメソッドを使用できます。また、プリセットをロードするコマンド(LoadActionPreset)、現在のローレベルのアニメーションを格納するコマンド(SIStoreActionおよびStoreAction)、プロットするコマンド(PlotToActionsおよびPlotAndApplyActions)など、ActionSource オブジェクトを作成するさまざまなスクリプトコマンドも用意されています。

注:v4.0 よりも古いバージョンの Softimage を使用している場合、ActionSource オブジェクトではSourceインターフェイスを使用できません。つまり、Clip.Sourceからはソースの内容にアクセスすることはできません。ActionSource のベースプロパティSIObject.Parentの呼び出しは、Modelを戻します。ActionSource が環境キャッシュの場合、戻される親はSimulationEnvironmentです。

メソッド

AddCustomOp AddICEAttribute AddProperty AddScriptedOp
AddScriptedOpFromFile AddSourceItem AnimatedParameters2 BelongsToオペレータ
EvaluateAt GetICEAttributeFromName IsA IsAnimated2
IsClassOfオペレータ IsEqualToオペレータ IsKindOf IsLockedオペレータ
IsSelectedオペレータ LockOwners Offload PartialOffload
Reload RemoveICEAttribute SetAsSelectedオペレータ SetCapabilityFlagオペレータ
SetLock TaggedParameters UnSetLock  
       

プロパティ

Application BranchFlagオペレータ Capabilitiesオペレータ Categories
EvaluationID Familiesオペレータ FullNameオペレータ Help
HierarchicalEvaluationID ICEAttributes LockLevelオペレータ LockMastersオペレータ
LockTypeオペレータ Model Nameオペレータ NestedObjects
ObjectID Origin OriginPath Owners
PPGLayoutオペレータ Parametersオペレータ Parent Parent3DObject
Properties Selectedオペレータ SourceItems Typeオペレータ

VBScript の例

'

' This example illustrates how to create a simple actionsource from position animation. The 

' AnimationSourceItem.Source property will be used to get the fcurve source and modify the keys.

'

NewScene , false

set oRoot = Application.ActiveProject.ActiveScene.Root

' These commands were cut and pasted from scripting history and modified to work in a script.

' They create a simple actionsource from animation on the null's position

set oNull = GetPrim( "Null" )

strPosParams = oNull & ".kine.local.posx," & oNull & ".kine.local.posy," & oNull & ".kine.local.posz"

Translate oNull, -8.153, 7.015, -0.702, siRelative, siView, siObj, siXYZ

SaveKey strPosParams, 1.000

Translate oNull, 8.350, -8.935, 0.894, siRelative, siView, siObj, siXYZ

SaveKey strPosParams, 50.000

Translate oNull, 9.413, 8.935, -0.894, siRelative, siView, siObj, siXYZ

SaveKey strPosParams, 100.000

StoreAction oRoot, strPosParams, 2, "StoredFcvAction", True, 1, 100

' Get the actionsource from the model

set oActionSource = oRoot.Sources("StoredFcvAction")

' Find animation source item with posx and mute it

for each oSourceItem in oActionSource.SourceItems

	if instr(1,CStr(oSourceItem.Target),"posx",vbTextCompare)<>0 then

		logmessage "muting " & oSourceItem.Target

		oSourceItem.Active = False

		exit for

	end if

next

' Apply actionsource with muted posx

ApplyAction oActionSource, oNull

' Output of above script:

'INFO : muting null.kine.local.posx

関連項目

Clip.Source Model.Sources Model.AddActionSource ImportAction LoadActionPreset SIStoreAction StoreAction PlotToActions PlotAndApplyActions CreateEnvironmentCache StoreEnvironmentCacheToMixer