概要
Godot Engineでゲーム開発の大部分を終え、いよいよプレイヤーに届けようとした瞬間、多くの開発者が予期せぬ壁にぶつかります。「エディタ上では完璧に動いたのに、エクスポートしたら動かない」「特定のプラットフォームでだけエラーが出る」。
この記事では、GodotプロジェクトをWindows、macOS、Web、Androidへ確実にエクスポートするための設定手順と、初心者が陥りがちなつまずきポイントを解説します。
Godotエクスポートの基本概念
エクスポートテンプレート
Godotプロジェクトを特定のプラットフォームで実行可能な形式にするには、エクスポートテンプレートが必要です。これは、Godotエンジン本体を各プラットフォーム向けにコンパイルしたバイナリファイル群です。
- バージョンの一致が必須: Godotのバージョンとテンプレートのバージョンは完全に一致する必要があります
- デバッグ版とリリース版: テンプレートには両方が含まれており、エクスポート時に選択します
PCKファイル
プロジェクトのシーン、スクリプト、アセットはPCKファ イルにまとめられます。
| PCKファイルの扱い | メリット | デメリット | 主な用途 |
|---|---|---|---|
| 分離(デフォルト) | 実行ファイルが小さい、パッチ配布が容易 | 配布ファイルが複数 | PC |
| 埋め込み | 単一ファイルで配布可能 | 実行ファイルが大きくなる | Web, モバイル |
よくある間違いとベストプラクティス
| カテゴリ | よくある間違い | ベストプラクティス |
|---|---|---|
| ファイルパス | 大文字・小文字を混在させている | すべてのファイル名を小文字とスネークケースに統一する |
| 外部ツール | Android SDK/JDKのパスが間違っている | Godotの要求バージョンを確認し、正確なパスを設定する |
| リソース管理 | 不要なアセットがプロジェクトに残っている | エクスポートプリセットでファイルを選択・除外する |
| シェーダー | 起動時にカクつく | シェーダーのプリコンパイルを有効 にする |
ケースセンシティブの問題
Windowsで開発しているユーザーが最も陥りやすいエラーです。
Windowsのファイルシステムは大文字・小文字を区別しませんが、LinuxやAndroidは厳密に区別します。res://Assets/Player.pngと記述しているが、実際のファイル名がres://assets/player.pngである場合、エクスポート後に読み込みに失敗します。
プラットフォーム別設定
Windows / macOS / Linux
デスクトップ向けのエクスポートは最もシンプルです。
- アイコンとバージョン情報:
rcedit(Windows)を使い、アプリケーションのアイコンを設定できます - macOSの公証: 配布する場合、Appleによる公証が必要になることがあります
Android
Androidは設定項目が多く最も複雑です。
- SDK/JDKの設定: 「エディタ設定」→「エクスポート」→「Android」でパスを設定
- Godot 4.x: JDK 17または21が推奨
- Godot 3.x: JDK 11が推奨
- AAB vs APK: Google PlayストアはAAB形式を推奨。エクスポート設定で切り替え可能
- パーミッション: 必要に応じてAndroidManifest.xmlで設定
よくあるエラー
No Android SDK found… Android SDK Pathが未設定apksigner not found… build-tools がインストールされていない
Web
Webビルドは手軽ですが、サーバー環境に依存する問題があります。
SharedArrayBuffer問題の解決(Godot 4.x、スレッド有効時):
Godot 4.xでスレッド機能(マルチスレッドレンダリングなど)を有効にしてエクスポートする場合、ブラウザのSharedArrayBufferが必要になります。これにはサーバー側で以下のHTTPヘッダーを設定する必要があります:
Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Embedder-Policy: require-corp
- itch.io: チェックボックス一つで有効化可能
- 自前のサーバー: 上記HTTPヘッダーを設定ファイルに追加
スレッドを無効にする選択肢: エクスポート設定で「Thread Support」を無効にすれば、これらのヘッダーなしでも動作します。ただし、パフォーマンスに影響する場合があります。
ビルドサイズの最適化
| 手法 | 具体的なアクション | 効果 |
|---|---|---|
| リソースのフィルタリング | 「リソース」タブで必要なファイルだけを指定 | 大 |
| テクスチャ圧縮 | .importでVRAM圧縮を設定 | 大 |
| オーディオ品質の調整 | ビットレートを下げる | 中 |
エクスポート前の最終チェックリスト
| チェック項目 | 詳細 |
|---|---|
| ケースセンシティブ | リソースパスが実際のファイル名と一致しているか |
| 外部ツールのパス | Android SDK、JDK、rceditのパスが正しいか |
| デバッグの無効化 | リリースビルドで「デバッグを有効にする」がOFFか |
| メインシーン | 起動シーンが正しく設定されているか |
まとめ
Godotのエクスポートは、プラットフォームごとの特性を理解した上で行うべき設定作業です。
特に重要なポイント:
- ケースセンシティブの問題: ファイル名は小文字で統一
- 外部ツールのパス設定: Android SDK/JDKは正確に設定
- プラットフォーム固有の要件: Webのヘッダー設定など
エクスポートが成功したら、各プラットフォームのストアへの申請と配布に挑戦しましょう。