【Godot】Godotプロジェクトを各プラットフォームへビルドする

作成: 2025-12-10

GodotプロジェクトをWindows/macOS/Android/Webへエクスポートする手順とよくあるエラーの解決法。

概要

Godot Engineで素晴らしいゲームを開発しても、それをプレイヤーに届ける「エクスポート(ビルド)」のプロセスでつまずいてしまう開発者は少なくありません。エディタ内では完璧に動作していたのに、エクスポートした途端に動かなくなる、特定のプラットフォームでエラーが出る、といった問題は、Godot開発者が必ず直面する壁の一つです。

この記事では、GodotプロジェクトをWindows、macOS、Linux、Web、Androidといった主要なプラットフォームへ確実にエクスポートするための設定手順と、初心者が陥りがちなつまずきポイントを解説します。

Godotエクスポートの基本概念

エクスポート設定に入る前に、Godotのエクスポートがどのように機能しているかを理解しておきましょう。

エクスポートテンプレートとは

Godotプロジェクトを特定のプラットフォーム(例:Windows)で実行可能な形式にするためには、そのプラットフォーム固有のエクスポートテンプレートが必要です。これは、Godotエンジン本体のコードを、各プラットフォーム向けにコンパイルしたバイナリファイル群です。

  1. テンプレートのダウンロード: Godotエディタの「エディタ」メニュー→「エクスポートテンプレートの管理」から、必要なテンプレートをダウンロードします。
  2. プリセットの追加: プロジェクトの「プロジェクト」→「エクスポート...」から、エクスポートしたいプラットフォーム(例:Windows Desktop)のエクスポートプリセットを追加します。
  3. 設定の保存: エクスポート設定は、プロジェクトフォルダ内の非表示ファイルである export_presets.cfg に保存されます。

PCKファイルと埋め込み

Godotがエクスポートする実行ファイル(例:game.exe)は、通常、ゲームのデータ(シーン、スクリプト、アセットなど)を格納した PCKファイル(パックファイル) とセットになっています。

  • PCKファイルの分離: デフォルトでは、PCKファイルは実行ファイルとは別に生成されます。これにより、実行ファイルは小さく保たれ、データのみを更新することが容易になります。
  • PCKの埋め込み: Webやモバイルプラットフォームなど、単一ファイルでの配布が望ましい場合、PCKファイルを実行ファイルに埋め込む設定が可能です。

よくあるつまずきポイント

ここでは、特に初心者がエクスポートで失敗しやすい、代表的な3つのポイントを紹介します。

ケースセンシティブ(大文字・小文字の区別)の問題

Windowsで開発しているユーザーが最も陥りやすいエラーです。

Windowsのファイルシステム(NTFS)は、ファイル名の大文字・小文字を区別しません。例えば、res://Assets/Player.pngres://assets/player.png は同じファイルとして扱われます。

しかし、LinuxやmacOS、Androidなどのファイルシステムは大文字・小文字を厳密に区別します。

問題の例: エディタ上では res://assets/player.png と記述しているが、実際のファイル名は res://Assets/Player.png である場合、Windowsでは動作しますが、Linuxやエクスポートされたゲームではリソースの読み込みに失敗し、クラッシュの原因となります。

解決策: スクリプトやシーンでリソースを参照する際は、実際のファイル名と完全に一致するように記述することを徹底してください。また、プロジェクト全体でファイル名に大文字を使わない(すべて小文字とアンダースコアで統一する)などの命名規則を設けるのがベストプラクティスです。

必要な外部ツールの設定漏れ(特にAndroid)

Androidや一部のプラットフォームへのエクスポートには、Godot本体以外に外部ツールが必要です。

  • Android: Android SDK、Java Development Kit (JDK)
  • Windows (カスタムアイコン): rcedit ツール

これらのツールをインストールしただけでは不十分で、Godotエディタの「エディタ設定」→「エクスポート」セクションで、ツールの実行ファイルやSDKのルートフォルダへのパスを正確に設定する必要があります。パスが間違っていると、エクスポート時に「apksignerが見つかりません」といったエラーが発生します。

PCKファイルの暗号化と埋め込み設定の誤解

エクスポート設定の「リソース」セクションにある「PCKファイルの暗号化」や「組み込みPCK」の設定は、特に理由がない限り、デフォルトのままにしておくのが安全です。

  • 暗号化: PCKファイルを暗号化すると、セキュリティは向上しますが、設定を誤ると「PCKファイルの読み込みに失敗しました」というエラーでゲームが起動しなくなります。初心者はまず暗号化をオフにしてエクスポートを成功させるべきです。
  • 組み込みPCK: Webやモバイル以外で「組み込みPCK」をONにすると、実行ファイルが非常に大きくなります。デスクトップ向けでは、通常はOFF(PCKファイルを分離)で問題ありません。

ベストプラクティスと実践例

確実なエクスポートを実現するための具体的な手順と推奨設定を紹介します。

ステップ1: エクスポートテンプレートの準備

まず、エクスポートに必要なテンプレートをダウンロードします。

  1. Godotエディタを開き、「エディタ」メニューから「エクスポートテンプレートの管理」を選択します。
  2. 「ダウンロードしてインストール」ボタンをクリックし、使用しているGodotのバージョンに対応したテンプレートをダウンロードします。
  3. ダウンロードが完了すると、各プラットフォーム向けのテンプレートが利用可能になります。

注意: テンプレートはGodotのバージョンごとに異なります。Godotをアップデートした場合は、新しいバージョンのテンプレートを再ダウンロードする必要があります。

ステップ2: エクスポートプリセットの設定

次に、プラットフォームごとの設定を行います。

  1. 「プロジェクト」メニューから「エクスポート...」を選択します。
  2. ウィンドウ上部の「追加」ボタンを押し、エクスポートしたいプラットフォーム(例:Windows Desktop)を選択します。

Windows Desktop 向け設定

設定項目推奨値備考
Custom Templateデフォルト通常は変更不要
Application > Icon任意の .ico ファイルWindowsの実行ファイルアイコンを設定。設定しないとGodotのデフォルトアイコンになる。
Options > Embed PCKOFFPCKファイルを分離して配布。実行ファイルが小さくなる。
Resources > Export ModeExport All Resourcesデフォルト設定。

Android 向け設定

Androidエクスポートは最も複雑です。以下の手順を必ず踏んでください。

  1. SDK/JDKのインストール: Android Studioをインストールし、Android SDKとJDK(Java Development Kit)を準備します。
  2. パスの設定:
    • 「エディタ設定」→「エクスポート」→「Android」を開きます。
    • Android SDK Path: Android SDKのルートフォルダ(例:C:\Users\User\AppData\Local\Android\Sdk)を指定します。
    • Java SDK Path: JDKのルートフォルダを指定します。
      • Godot 4.x: JDK 17 または JDK 21 が推奨されます。
      • Godot 3.x: JDK 11 (または JDK 8)が推奨されます。
      • バージョンが合わないとビルドエラーになるため注意してください。
  3. キーの生成: アプリをGoogle Playストアに公開する場合、署名キーが必要です。
    • 「エクスポート」ウィンドウのAndroidプリセット設定で、「Keystore」セクションを開きます。
    • デバッグ用であれば、Godotが自動生成したデバッグキーを使用できます。
    • リリース用であれば、keytool コマンドなどで生成したカスタムキーのパスとパスワードを設定します。

注意: 初めてAndroidビルドを行う場合や「デバッグキーが見つからない」エラーが出る場合は、「エディタ設定」→「エクスポート」→「Android」の 「デバッグキーストアの生成」ボタン を押してキーを作成してください。

よくあるエラー例

  • No Android SDK found … Android SDK Pathが未設定、もしくは間違っている
  • apksigner not found … SDKのbuild-toolsがインストールされていない、またはパスが古いバージョンを指している

Web 向け設定

Webエクスポートは比較的簡単ですが、いくつか注意点があります。

Godot 3系では HTML5 プリセットでしたが、Godot 4では Web プリセットに名称が変わっています。

  1. プリセットの追加: Web プリセットを追加します。
  2. Options > Head Include:カスタムのHTMLヘッダー(SEOタグや外部スクリプトなど)を追加できます。
  3. Export Path: エクスポート先フォルダを指定します。エクスポート後、指定したフォルダ内の index.html.js.wasm.pck ファイルをサーバーにアップロードします。

【重要】Godot 4.xを使用する場合の注意 Godot 4.xのWebエクスポートは「SharedArrayBuffer」という機能に依存しているため、アップロード先のサーバーでCOOP/COEPヘッダーの設定が必須です。

  • itch.io: アップロード設定で「SharedArrayBuffer support」のチェックボックスをONにする必要があります。
  • GitHub Pages等: そのままでは動作しないことが多いため、専用の回避策プラグイン(coi-serviceworkerなど)の導入が必要です。

ステップ3: エクスポート前の最終チェックリスト

エクスポートを実行する前に、以下の項目を必ず確認してください。

チェック項目詳細
ケースセンシティブスクリプト内のリソースパス(res://)が、実際のファイル名と大文字・小文字含め完全に一致しているか。
外部ツールのパスAndroid SDKやJDK、rceditなどのパスが「エディタ設定」で正しく設定されているか。
デバッグの無効化リリースビルドの場合、「デバッグ」セクションの「デバッグを有効にする」がOFFになっているか。
PCKの暗号化意図しない限り、暗号化はOFFになっているか。
メインシーン「プロジェクト設定」→「アプリケーション」→「実行」で、ゲームの起動シーンが正しく設定されているか。

まとめ

Godotのエクスポートは、単なるボタンクリックではなく、プラットフォームごとの特性を理解した上で行うべき設定作業です。

この記事で解説した基本概念、つまずきポイント、そしてベストプラクティスを実践することで、エクスポートの失敗は劇的に減るはずです。特に、ケースセンシティブの問題外部ツールのパス設定は、エクスポート成功の鍵となります。

エクスポートが成功したら、次は各プラットフォームのストア(Google Play Store, Steam, itch.ioなど)への申請と配布に挑戦しましょう。あなたのゲームが多くの人々にプレイされることを願っています!