メカニムのアニメーションカーブでの作業(Unity Proのみ)
アニメーション レイヤー

サブステートマシン

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Sumbission failed

For some reason your suggested change could not be submitted. Please try again in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

キャラクターに複数のステップからなる複雑なアクションを持たせたいケースが良くあります。全体のアクションをひとつのステートでハンドリングするかわりに,ステップ別に分けて,それぞれにひとつのステートを使用すべきです。例えば,キャラクターに,しゃがんで狙いを定め,撃って,再び立ち上がらせる, “Trickshot” というアクションを持たせたいとします。

 Trickshot アクションにおけるステートの順序
“Trickshot” アクションにおけるステートの順序

これは便利な場面もありますが,短所としては,ステートマシンが大きくなり,複雑なアクションがさらに追加されると扱いが難しくなります。エディターの空いたスペースで,ステートのグループを視覚的に分けることでシンプルにすることが出来ます。しかし,メカニムはさらに一歩進んで,ステートマシン図でステートのグループをひとつのアイテムに折りたたむことが出来るようにしています。これらの折りたたまれたグループは Sub-State Machine と呼びます。

サブステートマシンを作成するには Animator Controller ウィンドウの空いたところで右クリックして,コンテキストメニューから Create Sub-State Machine を選びます。サブステートマシンはエディター上で引き伸ばされた六角形のマークによって,他の通常のステートとは区別して表示されます。

サブステートマシン
サブステートマシン

六角形のマークをダブルクリックすると,エディターがクリアされてサブステートマシンがあたかも別のステートマシンのように編集できるようになります。ウィンドウの上にあるバーは “BreadCrumb Trail” (軌跡) で,どのサブステートマシンが現在編集されているか示します(そして,サブステートマシンの中に別のサブステートマシンを作成するなどネストができることに留意して下さい)。Trail上でアイテムをクリックすることでエディタが特定のサブステートマシンにフォーカスします。

パンくずリスト
パンくずリスト

サブステートマシンとその外部との遷移

前述のとおり,サブステートマシンは単にエディターでステートのグループを折りたたむ方法なので,サブステートマシンへ遷移するときは,その中のどのステートに接続したいかを選択する必要があります。

Trickshot サブステートマシンの中からターゲットとするステートを選択
“Trickshot” サブステートマシンの中からターゲットとするステートを選択

サブステートマシンに“Up”で名前が始まる追加のステートが出来たことに気づきます。

Up ステート
“Up” ステート

Up ステートは “サブステートマシンの外部” を表し,ビューで表示されるサブステートマシンの上位にあるステートマシンです。サブステートマシンのひとつのステートから Up ステートへの遷移を追加すると,上位にあるステートマシンの中から接続させたいステートを選ぶプロンプトが表示されます。

上位のステートマシンのステートに接続する
上位のステートマシンのステートに接続する
メカニムのアニメーションカーブでの作業(Unity Proのみ)
アニメーション レイヤー