UE5:列挙型(Enum)で状態管理!?ゲーム開発

列挙型(Enum)の正式名称
・Enumeration(列挙型)
役割と目的
列挙型(Enum)は、特定の値の集合を定義するデータ型です。
主に状態の管理、選択肢の制限、可続性の向上などに使用されます。
✅主な用途
・プレイヤーの状態管理(例:Idle/Running/Jumping)
・武器やアイテムの種類管理(例:Sword/Bow/Staff)
・UIの状態(例:MainMenu/Settings/PauseMenu)
・ダメージの属性(例:Fire/Water/Electric)
列挙型の作成方法
1.「コンテンツブラウザで右クリック」→「Blueprint」→「Enumration」を選択
2.Enumを開いて、必要なエントリー(要素)を追加
・例:EcharacterState
・Idle
・Running
・Jumping
・Attacking
3.Saveして完了
列挙型の詳細
🔵Enumのプロパティ
設定項目 | 説明 |
Display Name | UI上で表示される名前 |
Tooltip | 説明(マウスオーバー時に表示) |
Value | 各エントリーの値(内部的にはintで扱われる) |
🔵列挙型の内部的な動作
・Enumは整数(int)として処理され、最初のエントリーが0となる
・Switch on Enumを使用すると、Enumの各エントリーに対応した処理が可能
関連ノード
ノード名 | 説明 |
Switch on Enum | 列挙型の値ごとに処理を分岐 |
Select(Enum) | 列挙型の値に応じて異なる値を選択 |
Make(Enum) | 新しい列挙型を作成 |
To String(Enum) | 列挙型を「String」に変換 |
To Name(Enum) | 列挙型を「Name」に変換 |
補足情報
✅ゲーム開発では、状態管理の最適化が重要
・Switch on Enumを使えば、状態ごとの処理が整理しやすい
・Enumを使うことで、マジックナンバー(意味不明な数値)を排除し、可読性が向上
・DLCや拡張に対応しやすくするため、EnumをBlueprint Enumではなく、C++ Enumで作成することもある
・複雑な状態管理はState Machineと組み合わせると最適化しやすい
💡実際の開発では、プレイヤーの状態管理、UIの切り替え、アイテムの種類管理などで必ず使われるそうです!
Enumを変数として使用する方法

列挙型を作成しておくことが前提になります
変数を追加→型を変更→検索まどで「作成した列挙型を検索」→適応→
Switch on Enum

上記の画像のようにSwitch on Enumを利用することによって、列挙型に設定した項目ごとに実行処理を分岐させることができるようになります。