ACTION GAME MAKERでは、メニュー画面を作成するための専用システムが用意されています。
メニューは他の要素の上に自動的に描画され、カメラの影響を受けません。
これにより、ステータス画面、インベントリウィンドウ、および同様のUI要素の表示に最適です。
MenuScene ノード
MenuScene ノードは、ルートノード作成画面から作成できます。
これにより、自動的に CanvasLayer タイプの子ノードが生成されます。
この CanvasLayer 内に配置されたすべてのノードは、メニュー表示時に最前面に描画されます(デフォルトでは、右下方向に暗い青い線で囲まれた領域内)。
![]()
CanvasLayerのサイズは、プロジェクト設定(ウィンドウ > サイズ)で定義されたビューポートサイズに合わせて自動的に調整されます。
実行アクション:OpenMenu / CloseMenu
これらのアクションは、MenuScene をルートとするシーンの表示/非表示を制御します。
-
OpenMenuを使用してメニューを開くと、開かれた順序で 0 から始まるメニュー IDが割り当てられます。 -
その後、この ID を指定して
CloseMenuアクションでメニューを非表示にできます。
MenuScene と UI Layer の使い分け
ACTION GAME MAKER では、GameScene を作成する際にUI Layerも提供されており、同様の目的で利用できます。
この UI Layer も CanvasLayer であり、その領域内に配置されたノードは最前面に描画されます。
しかし、重要な違いがあります。
| 機能 | UI Layer | MenuScene |
|---|---|---|
| 表示管理 | 組み込みの制御なし | OpenMenu / CloseMenu を使用 |
| 推奨用途 | **HUD(例:HP バー)**などの常時表示要素 | インベントリ、ステータス画面などの切り替え可能なメニュー |
| レヤータイプ | GameScene 内の静的な CanvasLayer | 切り替えアクションを備えた専用シーン |
要約すると:
-
UI Layerは、恒久的な HUD 要素に使用します。
-
MenuSceneは、動的に開閉するメニューに使用します。