Godot入門:ゲームの初期設定・基本設定(画面サイズと入力編)

ゲーム開発

対象読者:Godotの基本操作を少し触ったことがある初級者の方

はじめに

Godotでゲームを作り始めると、まずは個々のノードの使い方に目が行きがちですが、実際にゲームとして遊べる形にするには「画面をどのサイズで表示するか」「プレイヤーの操作をどう受け付けるか」といった土台の設定も欠かせません。この記事では、PC向け・スマホ向けそれぞれに適した画面サイズの考え方と、キーボードやコントローラーからの入力を受け付けるための基本設定をまとめて解説します。

画面サイズ・解像度の設定

Godotではプロジェクト設定の「表示 > ウィンドウ」から、ゲームの基準となる解像度と、その解像度をどう引き伸ばして表示するかを設定します。ここで指定した数値が土台となり、実際の画面サイズに応じて自動的に拡大縮小されます。

PC向けの画面サイズ

PC向けのゲームでは横長のモニターを想定し、Viewport Width / Heightを1920×1080(フルHD)に設定するのが一般的な出発点です。動作を軽くしたい場合は1280×720を基準にすることもあります。Stretch ModeはCanvas Items、AspectはExpandを選んでおくと、ウィンドウサイズが変わっても表示が大きく崩れにくくなります。

スマホ向けの画面サイズ

スマートフォンは縦持ちで遊ばれることが多いため、Viewportを720×1280のような縦長サイズで設定します。端末ごとに画面比率が異なるので、AspectをKeepやExpandにして、余白ができても崩れないレイアウトを意識しておくと安心です。またノッチや丸みを帯びた角に隠れやすい部分を避けるため、UIは画面の端から少し余白を取って配置するのが定石です。

入力受付処理の設定

Godotではキーボードやコントローラーなど複数の入力デバイスを、プロジェクト設定の「Input Map(インプットマップ)」で1つの「アクション」としてまとめて管理します。コード側では個別のキーを直接判定するのではなく、アクション名を使って判定するのが基本です。

入力マップでアクションを作る

例えば「move_left」というアクションに、キーボードの矢印キー左、コントローラーの十字キー左、左スティックの傾きをまとめて割り当てておけば、コード側は1つの命令だけで全デバイスに対応できます。

 if Input.is_action_pressed("move_left"):
    velocity.x = -speed

キーボードでの入力設定

移動には矢印キーやWASDキーを割り当てるのが一般的です。決定・キャンセルにはEnterキーやEscキーを割り当てておくと、他の多くのゲームと操作感が揃い、プレイヤーが迷いにくくなります。

コントローラーでの入力設定

Godotは主要なゲームパッドを自動的に認識するため、入力マップに「ジョイパッドボタン」や「ジョイパッド軸」を追加するだけで対応できます。スティックの入力はInput.get_axis()やInput.get_vector()を使うと、傾きの強さに応じた滑らかな移動を実装できます。スティックの遊び(デッドゾーン)も設定しておくと、意図しない誤入力を防げます。

画面の向きとウィンドウ表示の設定

画面サイズを決めたら、次は「どの向きで固定するか」「ウィンドウをどう表示するか」といった周辺の設定も整えておくと、プレイヤーが快適に遊べるようになります。

画面の向きを固定する

スマートフォン向けのゲームでは、意図せず横向きになって表示が崩れることを防ぐため、画面の向きを固定しておくのが基本です。プロジェクト設定の「表示 > ウィンドウ > ハンドヘルド」にある向きの項目で、縦持ち専用にするか横持ち専用にするかを指定できます。

フルスクリーン・ウィンドウモードの切り替え

PC向けのゲームでは、起動時にウィンドウ表示にするかフルスクリーンにするかも重要な設定です。プロジェクト設定の「表示 > ウィンドウ」にあるモードの項目で初期状態を選べるほか、設定画面側でプレイヤー自身が切り替えられるようにしておくと親切です。

描画方式とパフォーマンス設定

Godotには複数の描画方式(レンダラー)が用意されており、高品質な表現向けの方式と、スマートフォンなど非力な端末でも動作しやすい軽量な方式を選べます。あわせて画面のちらつきを押さえる同期処理や、動作の上限を決めるフレームレートの設定も、最初に決めておきたい基本項目です。

タッチ操作とポーズ処理

スマートフォン向けにゲームを作る場合、キーボードやコントローラーだけでなく、指で画面に触れる操作への対応も欠かせません。またゲームを一時的に止めたときの入力の扱いも、初期設定として決めておく必要があります。

タッチ操作の入力設定

Godotでは、画面に触れた・指を動かしたといった操作を専用のイベントとして受け取れます。タップした位置や、指をスライドさせた量を取得できるため、仮想パッドやスワイプ操作といったスマートフォン特有の操作方法を実装できます。

一時停止(ポーズ)中の入力の扱い

メニューを開いてゲームを一時停止したとき、背景のキャラクターまで動き続けてしまっては困ります。各ノードには一時停止中も処理を続けるかどうかを切り替える設定があり、これを使うことで「メニューだけは操作できるが、ゲーム本編は止まっている」という状態を作れます。

その他の初期設定

メインシーンの設定

ゲームを起動したときに最初に読み込まれるシーンは、プロジェクト設定であらかじめ指定しておきます。タイトル画面やロード画面を最初のシーンにしておくと、そこから他のシーンへと処理をつなげていく作りにしやすくなります。

設定を保存する(永続化)

音量設定やキー割り当てといった項目は、ゲームを閉じても次回起動時に覚えていてほしい情報です。こうした設定値はファイルに書き出しておき、起動時に読み込むことで、プレイヤーごとの設定を保持できます。

まとめ

画面サイズと入力設定は、一度基準を決めてしまえば以後の開発をスムーズに進められる「ゲームの土台」です。PC向け・スマホ向けでの解像度の違いや、キーボード・コントローラーを同じアクションでまとめて扱う入力マップの考え方を押さえておきましょう。さらに、画面の向きやウィンドウ表示、タッチ操作やポーズ中の入力処理、メインシーンや設定の保存といった細かな初期設定を整えておくことで、どの端末でも安心して遊べるゲームに近づきます。

コメント