BoltではState Machineを記述することができます。
State Machine とは?
- State Machine は 1つ以上の状態(State)と 状態間の遷移(Transition)で構成されます。
- 状態は、特定のアクションを実行し続けます。
- 状態は、特定のセンサーからのイベントを検知した際に、別の状態へ遷移します。
参考:状態機械
BoltにおけるStateMachineの作成
Projectタブで、右クリック >
Create
>Bolt
>State Macro
で作成できます。初期状態ではStateGraphには何もありません。
右クリック >Create Flow State
で最初のStateを作成します。
ダブルクリックすると、Stateの中身を記述できます。
- On Enter State (Stateが開始されたとき)
- Update (そのState中に毎フレーム呼ばれる)
- On Exit State (Stateが終了する時)
のUnitを起点として、それぞれの記述ができます。
別のStateはまた、右クリック > 'Create Flow State' で作成できます。 最初のStateをCtrlを押しながら選択し、2つ目のStateへカーソルを動かすと、Transition を作成できます。
Transition の矢印をダブルクリックすると Transitionの記述ができます。
最初はTrigger Transition
のUnitがあるだけです。
例えば以下のような記述を行うことでSpaceキーが押されたら遷移するという記述を行うことができます。
AnyState
- AnyStateのUnitを利用すると、どのStateであっても、遷移のトリガー条件を満たせば、他の状態を呼び出すことができます。
- これらを利用して複数のStateを同時に実行することも可能です。
呼び出し順番
また、On Enter State の呼び出し順番などは、以下のブログの方が調査結果をまとめているので参考になると思います。