クリエイター生活!

現役ゲームクリエイターの視点から「クリエイターの生活/仕事」 について毎日発信中!

【解説】アクションゲームにおけるステートとは

本サイトではアフィリエイト広告を利用しております。

【解説】アクションゲームにおけるステートとは
概要:現役ゲームプランナーの視点から「アクションゲームにおけるステート」について紹介!

 

 

 

プロフィール:わたなべ りょう 

f:id:Toaru-GameDesigner:20201026214250p:plain

 

▼略歴
・明治大学政治経済学部卒

・株式会社カプコンに4年半勤務

・ゲームプランナー/アクションプランナー

・フリーランスとして独立

・特技は「テコンドー」「カポエイラ」

 

▼制作実績

・モンスターハンター ライズ

・モンスターハンター エクスプロア

・小説「LANCASTER《ランカスター》」

 

 

アクションゲームにおけるステートとは

 

 結論から言えば、以下の通りです。

 

 

 

ステート(State)とは、プレイヤー/モンスター/オブジェクト等に関する状態のこと

 

 

 

ちょっと分かり辛いので、具体例を交えて説明していきますね。

 

 

ステートがあることでそれぞれの状態に遷移できる

 

例えば、「歩き」「走り」「ダッシュ」3種類の状態を作る場合、それぞれアニメーションが必要になると思います。

 

でも、アニメーションだけでは、それぞれの出し分けまではできないです。

 

なぜなら、プレイヤーの速度状態を監視する処理がないためです。

 

 

ステートがあれば、出し分けできる

 

例えば、以下の通りです。

 

 

 

速度100以下の場合:歩きステート

 

速度101~300:走りステート

 

速度301~:ダッシュステート

 

 

 

こんな感じですね。

 

このように、アクションゲームでは、ステート(状態)に応じて、それぞれのアニメーションに遷移する処理が必要になります。

 

ステートとは「いまどういう状態なのかを判断して、最適なアニメーションに遷移させる処理」とも言えます。

 

 

  

アクションゲームにおけるステートマシーンとは

 

アクションゲームには「ステートマシーン」と呼ばれる用語があります。

 

ステートマシーンとは、簡単に言えば、ステート(状態)の集合体のことです。

 

具体的には、以下の通りです。

 

 

 

歩きステート

 

走りステート

 

ダッシュステート

 

ジャンプステート

 

しゃがみステート

 

匍匐前進ステート

 

 

 

こんな感じですね。

 

ステートからまた別のステートに繋げることで、色々な状態に遷移できるようにしています。

 

 

マリオのステートマシーンの場合

 

マリオで言えば、ダッシュ中にBボタンを押せば、ジャンプできると思います。

 

つまり、ステートマシーン上では、ダッシュステート→ジャンプステートを繋げている感じです。

 

だから、ダッシュ中にBボタンを押すことで、ジャンプに遷移できるわけです。

 

 

逆に言えば、ステートマシーン上にて「ダッシュステート」から「ジャンプステート」に繋がっていなければ、ダッシュからジャンプは出せないですね。

 

 

 

ステートとステートマシーンの違い

 

具体的には、以下の通りです。 

 

 

ゲームにおける「ステート」と「ステートマシーン」って似ているのでややこしいかもしれません。違いとしては、ざっくりこんな感じですかね。

 

ステート:単一の状態のこと

ステートマシーン:ステートをまとめたもの

 

実際にはあまり使い分けて言うことも少ないので、ステートだけ覚えればOKです。

 

 

 

 

 

まとめ:アクションゲームにおけるステートの役割


最後にもう一度まとめておきますね。

 

 

 

ステート(State)とは、プレイヤー/モンスター/オブジェクト等に関する状態のこと

 

状態ごとにアニメーションを切り替えたい場合は、ステートを作る必要がある

 

例. 地上にいる場合は「待機ステート」、空中にいる場合は「空中ステート」

 

ステートからステートへ遷移できるようにまとめたステートの集合体=ステートマシーン

 

 

 

ステートの概念としては、こんな感じですね。

 

ステートについてもう少し勉強したい方は、次の動画が分かりやすいと思います。

 

 

UE4におけるステート処理

引用元:Unreal Engine JP

 

 

アクションゲームを作りたい方へ

 

アクションゲームに関する基礎知識について更に深く学びたい方は、下記いずれかの書籍があるとイイですよ。

 

 

Unreal Engine 4 アクションゲーム ブループリント入門

作って学べる Unity本格入門

 

 

UnrealEngineで作る場合は①、Unityで作る場合は②って感じですね。

 

いずれにしても実際に手を動かしながら作ってみると、ひと通り分かってくると思いますよ。

 

 

 

もし参考書を見ても分からない場合

 

TechAcademy 無料体験 で勉強するのもありですね。

 

ゲーム開発コースがあるので、基礎だけ教えてもらえば、参考書の理解も捗るかと思います。

 

 

今回はこんな感じで終わりたいと思います。