Files
UnrealEngine/Engine/Documentation/Source/Shared/GraphNodes/AnimationStateMachine/StateNodes.JPN.udn
2025-05-18 13:04:45 +08:00

102 lines
5.7 KiB
Plaintext

INTSourceChangelist:3108692
Availability:NoPublish
Title:ステートマシーン
Crumbs:
Description:ステートマシーンは、ステートの変化過程で発生するブレンドを完全制御しながら、スケルタル アニメーションをさまざまなステートへ分割します
[EXCERPT:DummyExcerpt]
[/EXCERPT:DummyExcerpt]
[EXCERPT:UAnimStateNode]
概念上、ステートはキャラクターまたはスケルタルメッシュが定期的にブレンドインしたり、ブレンドアウトするとわかっている AnimGraph のまとまった部分と考えると良いでしょう。その後、グラフのこの部分へ遷移することができます。例えばキャラクターのアニメーションに Idle ステートが含まれていて、このステートに単一アニメーションのみが格納されていることがあります。
Idle ステートをステートマシーンから見るとこのようになります。
![](State.png)
ダブルクリック すると、 Idle ステート内にはこのようなシンプルなグラフがあります。
![](IdleStateInside.png)
キャラクターが動作を開始すると、Movement ステートへ遷移します。歩いたり走る動作のように、表面上の横方向の移動を定義します。
![](MoveState.png)
このステートはキャラクターの速度と動作方向で定義されている [ブレンドスペース](Engine/Animation/Blendspaces) を格納している場合があります。
![](MovementInside.png)
自由にレイアウトできるように、ステートへの入力ピンやステート自体にピンがありません。ステートを別のステートと接続するには枠線からワイヤーを単にドラッグしてください。新ステートの作成も同様の操作で行います。ブループリントで新ノードを作成する操作と同じです。
![](DragWire.png)
[/EXCERPT:UAnimStateNode]
[EXCERPT:UAnimStateConduitNode]
Conduits (コンジット) は、より高度で共有可能な遷移リソースとしての機能を果たします。遷移ルールはあるステートから別のステートへ変形する単純な 1 対 1 の関係であるのに対して、コンジットは 1 対多数、多数対 1 、または多数対多数の関係になることが可能です。
![](ConduitNode.png)
例えば、キャラクターが消滅する (キルされる) と再生を開始する複数のアニメーションがあるとします。キャラクターのヘルス値が 0 以下となったら、 Death ステートへ移行するようなシンプルな遷移ルールから始めます。しかし State の代わりに遷移が Conduit に入ると、プレイヤーの一連の殺され方 (打たれ方、刺され方、爆発、車による轢かれ方など) をチェックできます。そこから分岐して、様々な独立したデス (機能停止) ステートに進みます。
若干簡素化されていますが、そのようなグラフは以下のようになる場合があります。
![](ConduitGraph.png)
コンジット グラフの内部はまるでTransition Rule (遷移ルール) のように見えます。
![](ConduitInside.png)
コンジット ノードを出る実際の遷移ルールは、その後、デスのタイプを決定して適切なステートへブレンドします。
[/EXCERPT:UAnimStateConduitNode]
[EXCERPT:UAnimStateTransitionNode]
ステートを定義したら、スケルタルメッシュのあるステートから別のステートへの遷移方法を制御する必要があります。ここで遷移ルールが関わってきます。遷移ルールはステートを接続するワイヤーと一緒に自動的に作成されます。
![](TransitionRule.png)
変数の値に対していくつでもチェックやテストを遷移ルールで実行することができます。全て True または False を出力することを目的とします。この Boolean 出力は遷移でアニメーションが動くことが可能か否かを決定します。
![](TransitionRuleInside.png)
これは、キャラクターの速度の値をテストしている例です。値が 10 を超えると遷移を有効にします。この場合、キャラクターは Idle ステートから Movement ステートへ移行します。その後完全に異なるルールを使用して Idle ステートへ再度戻ることができます。例えば、ここでは Movement から Idle へ移動する遷移ルールを使用しています。
![](TransitionRuleReturn.png)
内部では、 Movement ステートへの遷移に使用した同値がもはや True ではないことをチェックします。
![](TransitionRuleReturnInside.png)
遷移ルールとそのプロパティに関する詳細は、 [遷移ルールのドキュメント](Engine/Animation/StateMachines\TransitionRules) を参照してください。
[/EXCERPT:UAnimStateTransitionNode]
[EXCERPT:UAnimGraphNode_Root]
AnimGraph でアニメーションを処理した後に、メッシュへ適用するために、最終アニメーションポーズの結果をこのノードに接続します。
[/EXCERPT:UAnimGraphNode_Root]
[EXCERPT:UAnimGraphNode_StateMachine]
ステートマシーンはステート、遷移、そしてコンジットのコレクションです。ステートマシーンは、ステート遷移で定義したルールに基づいてステートを変更します。各ステートは、概念的に自己完結型の AnimGraph でアニメーションポーズを出力します。その後ステートは、ステートマシーンを含む AnimGraph でさらに操作することができます。
[/EXCERPT:UAnimGraphNode_StateMachine]