ゲームがほぼ完成し、いよいよプレイヤーに届けよう——その最後のステップ「エクスポート(ビルド)」で、多くの人が予期せぬ壁にぶつかります。「エディタでは完璧に動いたのに、書き出したら真っ黒」「特定のプラットフォームだけエラーになる」。この最後のつまずきは、 エクスポートの仕組みと 、プラットフォームごとの癖 を知っておくだけで、ほとんど防げます。
この記事では、GodotプロジェクトをWindows・macOS・Android・Webへ確実に書き出すために、エクスポートテンプレートとPCKの仕組みから、初めてのエクスポート手順、陥りやすい罠(ケースセンシティブ・Webのヘッダー)、ビルドサイズの最適化、そして出荷前の最終チェックリストまでを解説します。
この記事でわかること
- エクスポートテンプレート と PCK の仕組み(分離/埋め込み)
- 初めてのエクスポート手順(デスクトップ → Web)
- 最大の罠 ケースセンシティブ と、Webの ヘッダー設定
- ビルドサイズの最適化と 出荷前チェックリスト
エクスポートの仕組み:テンプレートとPCK
エクスポートを理解する鍵は2つ、 エクスポートテンプレート と PCK です。

エクスポートテンプレート は、Godotエンジン本体を各プラットフォーム向けにコンパイルしたバイナリ群です。あなたのプロジェクト(シーンやスクリプト)を、このテンプレートに載せて実行可能な形にします。
- バージョンの一致が必須 :Godot本体とテンプレートのバージョンは 完全に一致 させます(食い違うとエクスポートできません)
- デバッグ版とリリース版 :テンプレートには両方が含まれ、エクスポート時に選びます。出荷は リリース版 です
PCK は、プロジェクトのシーン・スクリ プト・アセットを1つにまとめたファイルです。実行ファイルと 分離 するか、埋め込む かを選べます。

| PCKの扱い | メリット | デメリット | 主な用途 |
|---|---|---|---|
| 分離(デフォルト) | 実行ファイルが小さい・パッチ配布が容易 | 配布ファイルが複数 | PC |
| 埋め込み | 単一ファイルで配布できる | 実行ファイルが大きい | Web・モバイル |
実践:はじめてのエクスポート(デスクトップ→Web)
インディーゲームをitch.ioで公開する、フリーゲームをWindows向けに配る、スマホアプリをストアに出す——最初の一歩は同じです。まずは デスクトップ(Windows) で書き出し、次に Web(itch.io) へ、という順で進めるのが定番です。手順はどのプラットフォームでも共通の流れになります。
- テンプレートを用意 :「エディタ」→「 エクスポートテンプレートの管理」で、使用中のGodotバージョンのテンプレートをダウンロード
- プリセットを追加 :「プロジェクト」→「エクスポート」→「追加」で、書き出したいプラットフォーム(例: Windows Desktop)を選ぶ
- 設定を確認 :メインシーン、アイコン、リリース/デバッグの別を確認する
- 書き出す :「プロジェクトをエクスポート」で保存先を指定して出力
最初のデスクトップ版が動いたら、同じプロジェクトに Web のプリセットを足して書き出し、itch.ioにアップすればブラウザで遊べます。まず1プラットフォームを通しで成功させると、他も同じ流れで応用できます。
ポイントは2つです。
- 必ず実機(書き出したビルド)で動作確認する :エディタで動くこととエクスポート版で動くことは別です。特に セーブ(
user://) はエクスポート版で挙動が変わることがあるので、セーブ/ロード は書き出したビルドで必ず確かめます。 - 1つ成功させてから増やす :いきなり全プラットフォームを狙わず、まずWindowsなど手近な1つを通す。エラーの切り分けが楽になります。
プラットフォーム別の要点と罠
最大の罠:ケースセンシティブ
Windowsで開発している人が最もハマるエラー です。Windowsはファイル名の大文字・小文字を区別しませんが、 LinuxやAndroidは厳密に区別 します。

コードで res://Assets/Player.png と書いているのに、実ファイルが res://assets/player.png だと、Windowsのエディタでは動くのに、 エクスポートすると読み込みに失敗 します。対策はシンプルで、 ファイル名を小文字+スネークケースに統一 することです。
Windows / macOS
デスクトップは最もシンプルです。Windowsは rcedit でアイコンやバージョン情報を埋め込めます。macOSは、配布時にAppleの 公証(notarization) が必要になることがあります。
Android
Androidは設定が最も多いプラットフォームです。
- SDK/JDKの設定 :「エディタ設定」→「エクスポート」→「Android」でパスを設定。 Godot 4.xはJDK 17(または21) が必要(3.xはJDK 11)
- AAB vs APK :Google PlayストアはAAB形式を推奨。テストや直接配布はAPKが手軽
- エラーの目印 :
No Android SDK found=SDKパス未設定、apksigner not found=build-tools未インストール
Web
Webは手軽ですが、 サーバー環境に依存する罠 があります。スレッド機能を使ってエクスポートすると、ブラウザの SharedArrayBuffer が必要になり、サーバー側で COOP/COEPヘッダー の設定が要ります。

Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Embedder-Policy: require-corp
- itch.io :SharedArrayBufferのチェックボックス1つで有効化できます
- 自前サーバー :上記ヘッダーを設定に追加します
- スレッドを無効にする :エクスポート設定でスレッドをオフにすれば、ヘッダーなしでも動きます(パフォーマンスに影響する場合あり)
ビルドサイズの最適化
配布サイズが大きいと、ダウンロードもWebの初回読み込みも遅くなります。効き目の大きい順に手を打ちます。
| 手法 | アクション | 効果 |
|---|---|---|
| リソースのフィルタリング | エクスポートの「リソース」タブで、必要なファイルだけを含める | 大 |
| テクスチャ圧縮 | .import 設定でVRAM圧縮を有効にする | 大 |
| オーディオ品質の調整 | BGM/SEのビットレートを下げる | 中 |
特に 使っていないアセットの除外 は効果が大きいです。試作で入れた素材がプロジェクトに残っていないか、出荷前に見直しましょう。
出荷前の最終チェックリスト
書き出す前に、この4点だけは必ず確認します。ここを押さえると「出したのに動かない」の大半を防げます。

| チェック項目 | 詳細 |
|---|---|
| ケースセンシティブ | リソースパスが実際のファイル名と大小まで一致しているか |
| 外部ツールのパス | Android SDK・JDK・rceditのパスが正しいか |
| デバッグの無効化 | リリ ースビルドで「デバッグを有効にする」がOFFか |
| メインシーン | 起動シーンが正しく設定されているか |
おまけ:先に知っておくと良いこと
- エクスポートは早めに一度試す :完成間際に初めて書き出すと、ケースの不一致などがまとめて噴き出します。開発の早い段階で 一度エクスポートを通しておく と、後が楽です。
.resと暗号化 :リリースでは、テキストの.tresよりバイナリの.res、必要なら暗号化を検討します(カスタムリソース 参照)。- プラットフォームごとに操作を見直す :Web/モバイルはキーボードが無い・画面が縦・タッチ操作、など前提が変わります。入力まわりは書き出し先に合わせて確認しましょう。
まとめ
- エクスポートは テンプレート(バージョン一致) に プロジェクト を載せて書き出す作業。出荷は リリース版
- PCK は分離(PC)か埋め込み(Web・モバイル)を用途で選ぶ
- 最大の罠は ケースセンシティブ 。ファイル名は小文字+スネークケースで統一する
- Android はJDK 17+SDK/build-tools、Web はスレッド利用時にCOOP/COEPヘッダーが要る
- 出荷前は ケース/外部ツールパス/デバッグOFF/メインシーン の4点を確認し、必ず 書き出したビルドで動作確認 する
まずはWindows向けに一度 エクスポートを通し、書き出した .exe が単体で起動することを確かめてみてください。「配れる形になった」瞬間、あなたのプロジェクトは"ゲーム"から"作品"になります。
さらに学ぶために
- セーブ/ロードシステムの実装 ——
user://はエクスポート版で必ず確認する - GodotのFPSを安定させるフレームレート管理と最適化 ——出荷前のパフォーマンス調整
- カスタムリソースの作成と活用 ——リリース時の
.resと暗号化 - Godot公式ドキュメント:Exporting projects ——エクスポートの一次情報