5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Godot 4.x】3D脱出ゲームを作ってみる①〜3Dプロジェクト作成とシーン構成〜

5
Posted at

はじめに

この記事は、Godot 4.xでFPS視点の3D脱出ゲーム(寝室に隠されたアイテムを探し、謎を解いて脱出する)を作る連載の第1回です。

環境構築・Claude Code + godot-mcp のセットアップは以下の記事で済んでいる前提で進めます。

この記事でやること

  • 3D用の新規プロジェクト作成(レンダラー選択・スマホ横向き設定)
  • フォルダ構成の準備
  • 使用アセットの紹介・インポート
  • 動作確認用の仮シーン作成

スクリーンショット 2026-07-02 10.46.37.png

想定環境

項目 内容
OS macOS(Apple Silicon)
Godot 4.7 stable
Claude Code 最新版
godot-mcp セットアップ済み

0. Claudeにやりたいことを伝える

プロンプト:
godot で3Dの脱出ゲームを作成したいです

さらにgodotの環境構築の記事は作成済みでしたのでこれを伝えました

プロンプト:
環境構築までは

https://qiita.com/OnuuuumaX/items/9ce7e872a900afd74e06
https://qiita.com/OnuuuumaX/items/44ced73e194fa2031114

を行っています

さらにclaudeから質問されたので回答

プロンプト:
環境構築(①②)は前の記事を参照リンクで済ませる形でOK
2D連載と同じく Claude Code + godot-mcp で開発を進める想定
ゲームの規模感は「1部屋のシンプルな3D脱出ゲーム」

godotのアセットストア(ベータ)から利用したいアセットを探しました

プロンプト:
http://store.godotengine.org/asset/kyle-fuji/low-poly-bedroom-asset-pack/

こちらのgodotのassetを使用したいです

スクリーンショット 2026-07-02 8.28.05.png

godotのアセットストアはベータ版、かつ配布アセットは限定されているようですので、今はまだ規模感が小さいですが今後を期待しましょう!

1. 新規プロジェクトの作成

1-1. プロジェクトマネージャーでの作成手順

  1. Godotを起動し、プロジェクトマネージャーで「新規プロジェクトを作成」をクリック
  2. プロジェクト名を入力(例:EscapeGame3D
  3. 保存先フォルダを指定
  4. レンダラーを選択して「作成」

1-2. レンダラーの選択

3Dゲームではレンダラー選択が重要です。

レンダラー 特徴 用途
Forward+ 高品質。影・反射・ポストエフェクトが豊富 PC向け3Dゲーム ← 今回はこれ
モバイル 軽量。モバイル・Web向け スマホ・ブラウザ向け
Compatibility 互換性重視 低スペック端末対応

今回はスマホ横向き向けのFPS脱出ゲームのため、Forward+ を選択します。

2Dゲームでは「モバイル」を推奨しましたが、3Dではポストエフェクト(SSAO・SSILなど)を活用できる Forward+ が適しています。

1-3. プロジェクトの画面設定(スマホ横向き対応)

スクリーンショット 2026-07-02 9.28.05.png

プロジェクト作成後、メニューから プロジェクト > プロジェクト設定 を開き、以下を設定します。

表示 > ウィンドウ タブ:

項目 理由
サイズ > ビューポートの幅 1870 スマホ横向きの基準解像度より少し大きめ
サイズ > ビューポートの高さ 840 スマホ横向きの基準解像度より少し大きめ
ストレッチ > モード canvas_items UIも含めて拡大縮小される
ストレッチ > アスペクト expand 余白を作らず画面幅いっぱいに広げる
ポータブル > 方向 landscape スマホを横向きに固定する

方向 の設定は landscape(横向き固定)のほか、portrait(縦向き固定)や sensor(端末の傾きに追従)も選べます。脱出ゲームはFPS視点で横長の画角が必要なため、landscape に固定するのが無難です。

スクリーンショット 2026-07-02 9.32.51.png


2. フォルダ構成の準備

エディタが起動したら、FileSystemパネルで以下のフォルダ構成を作成します。

res://
├── scenes/        # 各シーンファイル(.tscn)
├── scripts/       # GDScriptファイル(.gd)
├── assets/
│   ├── models/    # 3Dモデル・アセット(.glb / .fbx)
│   ├── textures/  # テクスチャ画像
│   └── fonts/     # フォントファイル
└── autoload/      # シーンをまたぐ状態管理用スクリプト

2D連載のフォルダ構成と似ていますが、assets/images/ の代わりに assets/models/assets/textures/ を分けています。3Dアセットはファイル数が増えやすいため、最初から整理しておくと後が楽です。

claude code + MCP に、「これらのフォルダを作成してください」と命令すれば作成してくれますが、クレジット・セッションの消費を抑えたければ自身で作成してしまいましょう


3. 使用アセットの紹介

今回の寝室シーンには、Godot Asset Storeで公開されているフリーアセットを使用します。

Low Poly Bedroom Asset Pack by Kyle Fuji
https://store.godotengine.org/asset/kyle-fuji/low-poly-bedroom-asset-pack/

項目 内容
ライセンス CC0 1.0(クレジット不要・商用利用可)
対応バージョン Godot 4.x / 3.x
容量 1.94 MB
内容 ベッド、ベッドサイドテーブル×3種、ドレッサー×4種、ランプ×6種
特徴 引き出しの開閉アニメーション付き、素材カスタマイズ可

CC0ライセンスのため、そのまま記事やゲームに使用できます。

3-1. アセットのダウンロード

  1. 上記URLにアクセスし「Download」をクリック(1.94MB)
  2. ダウンロードしたZIPを展開

3-2. プロジェクトへのインポート

  1. 展開したフォルダの中身(addons/models/ フォルダなど)を確認
  2. assets/models/bedroom/ フォルダを作成し、展開した中身をそこにコピー
  3. Godotエディタに戻ると自動インポートが始まります
  4. インポート完了後、FileSystemパネルに .glb.tscn ファイルが表示されれば成功

スクリーンショット 2026-07-02 10.35.54.png

FBXファイルを使う場合、Godot 4.xではインポート設定で「FBX2glTF」が必要になることがあります。アセットに .glb 形式も含まれている場合はそちらを優先して使うとスムーズです。


4. 動作確認用の仮シーン作成

アセットのインポートが確認できたら、3Dシーンが正常に動作するか確かめる仮シーンを作ります。

4-1. 3Dシーンの新規作成

  1. メニューから シーン > 新規シーン
  2. 「3Dシーン」を選択(ルートノードが Node3D になります)
  3. ルートノードの名前を Main にリネーム
  4. シーンを保存

スクリーンショット 2026-07-02 10.37.24.png

スクリーンショット 2026-07-02 10.38.12.png

スクリーンショット 2026-07-02 10.40.22.png

4-2. 最低限のノード構成を追加

以下のノードを追加します。

Main (Node3D)
├── DirectionalLight3D   # 太陽光相当の平行光源
├── Camera3D             # 動作確認用カメラ
└── WorldEnvironment     # 背景・環境光の設定

DirectionalLight3D の追加

  • Node3D を右クリック → 「子ノードを追加」 → DirectionalLight3D
  • Inspectorで Shadow > EnabledOn にしておく

Camera3D の追加

  • 同様に Camera3D を追加
  • Transformで Position を (0, 1.7, 3) 程度に設定(人の目線の高さ)

WorldEnvironment の追加

  • WorldEnvironment を追加
  • Inspectorの Environment プロパティ右の「新規Environment」をクリックして生成
  • Background > ModeSky に設定するとデフォルトの空が表示されます

上記の設定手順をclaude code + mcp に伝えると、実際に設定してもらえます

4-3. アセットを仮配置

インポートしたアセットのいずれか(例:ベッド)をFileSystemパネルからシーンにドラッグ&ドロップして配置してみます。

スクリーンショット 2026-07-02 10.45.09.png

4-4. シーンを保存して実行

  1. scenes/main.tscn として保存
  2. 再生ボタン隣の「現在のシーンを実行」
  3. アセットが表示された3D空間が起動すれば成功

スクリーンショット 2026-07-02 10.46.37.png

この時点ではカメラは固定で、操作はできません。FPS移動の実装は次回行います。


まとめ

今回は以下を行いました。

  • Forward+ レンダラーで3Dプロジェクトを新規作成、スマホ横向き(landscape)に設定
  • 3D開発向けのフォルダ構成を整備
  • CC0フリーアセット「Low Poly Bedroom Asset Pack」をインポート
  • 動作確認用の仮シーンでアセット表示を確認

連載リンク

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?