ゲーム プロジェクトのコンパイル

Windows 上で Visual Studio を使用、または Mac 上でXcodeを使用した個々のゲームプロジェクトのコンパイル

Choose your operating system:

Windows

macOS

Linux

Unreal Engine 4 (UE4) ではUnrealBuildTool を用いたカスタムビルド手法を使用します。 UnrealBuildTool は、プロジェクトのコンパイルとこれらをエンジンとリンクさせる複雑な部分を全て処理します。標準の Visual Studio のビルド ワークフローを使用してプロジェクトのビルドを行うことができる 透過的なプロセスです。

UnrealBuildTool はゲームプロジェクトのビルドに .Build.cs と .Target.cs ファイルを使用します。これらのファイルは、 プロジェクトが C++ テンプレートを使用して作成された、または CPP Class Wizard を使用して、Blueprints Only テンプレートから作成されたプロジェクトに コードを追加する場合に自動的に生成されます。

ビルド コンフィギュレーション

Unreal プロジェクトは複数のターゲット (Editor、Client、Game、Server) を「 *.target.cs 」ファイルで記述します。それぞれのファイルは別のコンフィギュレーションにビルドされます。Visual Studio では、それぞれのファイルを異なるコンフィギュレーションで「Visual Studio *.vcxproj 」ファイルとして明示します。ソリューション コンフィギュレーションは [Configuration][Target Type] と名付けられます (たとえば、デフォルト エディター ターゲットは "DevelopmentEditor"、デフォルト スタンドアローン型ゲーム ターゲットは "Development")。使用するコンフィギュレーションは、作成するビルドの目的によって決定されます。

各ビルド コンフィギュレーションには、2 つのキーワードがあります。最初のキーワードは、エンジンとゲームプロジェクトのステートを表します。例えば、 Debug コンフィギュレーションを使用してコンパイルすると、 ゲームのコードをデバッグすることができます。2 つめのキーワードは、ビルドしているターゲットを示します。例えば、Unreal でプロジェクトを開きたい場合、 Editor をターゲット キーワードとして ビルドする必要があります。

ビルド コンフィギュレーション - ステート

説明

Debug

このコンフィギュレーションはデバッグ作業に使用するシンボルを含みます。デバッグ コンフィギュレーションでエンジンとゲームコードの両方をビルドします。 Debug コンフィギュレーションを使用してプロジェクトをコンパイルし、Unreal Editor でプロジェクトを開きたい場合、プロジェクトでコード変更が反映されているかを確認するには、"-debug" フラグを使用しなければなりません。

DebugGame

このコンフィギュレーションは、エンジンを最適化してビルドしますが、ゲームコードはデバッグ可能な状態のままにします。ゲーム モジュールのみをデバッグする場合に理想的なコンフィギュレーションです。

Development

エンジン コードおよびゲーム コードの最適化において、このコンフィギュレーションはすべてを有効にしますが最も時間のかかるコンフィギュレーションです。開発およびパフォーマンスの点では理想です。Unreal Editor ではデフォルトで Development を使用します。後で Unreal Editor でプロジェクトを開き、プロジェクトのコード変更が反映されているかを見るには、Development コンフィギュレーションでコンパイルしなければなりません。

Shipping

最適なパフォーマンスを実現し、ゲームを出荷するためのコンフィギュレーションです。このコンフィギュレーションはコンソール コマンド、統計情報、プロファイリング ツールを削除します。

Test

このコンフィギュレーションは、 Shipping コンフィギュレーションですが、一部のコンソール コマンド、統計情報、プロファイリング ツールが有効になっています。

ビルド コンフィギュレーション - ターゲット

説明

[empty]

スタンドアローンの実行可能なプロジェクトのバージョンをビルドするコンフィギュレーションですが、プラットフォーム固有のクックされたコンテンツが必要です。クックされたコンテンツに関する詳しい情報については、 プロジェクトをパッケージ化する のリファレンス ページをご覧ください。

Editor

エディタでプロジェクトを開き、すべてのコード変更が反映されていることを確認するには、プロジェクトが Editor コンフィギュレーションでビルドしなければなりません。

Client

UE4 のネットワーク構築機能を使ってマルチプレイヤー プロジェクトの作業を行っている場合、このターゲットは指定したプロジェクトを、マルチプレイヤー ゲーム用の UE4 のクライアント サーバー モデルのクライアントとして指定します。 <Game>Client.Target.cs ファイルがあれば、 Client ビルド コンフィギュレーション ファイルが有効になります。

Server

UE4 のネットワーク構築機能を使ってマルチプレイヤー プロジェクトの作業を行っている場合、このターゲットは指定したプロジェクトを、マルチプレイヤー ゲーム用の UE4 のクライアント サーバー モデルのサーバーとして指定します。 <Game>Server.Target.cs ファイルがあれば Server ビルド コンフィギュレーションは有効になります。.

Visual Studio でビルドする

ビルド コンフィギュレーションを設定する

ビルド コンフィギュレーションは、Visual Studio のツールバーから設定することができます。

プロジェクト / コンフィギュレーション メニュー

Project - Configuration Menu

ソリューション プラットフォームを設定する

このソリューション プラットフォームは、Visual Studio のツールバーから設定することができます。

UE4 は現在、以下のプラットフォームをサポートしています。

  • Windows 32-bit

  • Windows 64-bit

UE4 で作業をする場合、通常 Win64 プラットフォームを使用します。これはプロジェクト ファイルを生成する場合にデフォルトで含まれる唯一のものです。 IDE のプロジェクト ファイル ページには、 他のプラットフォーム向けにプロジェクト ファイルを生成するための指示が記載されています。

プロジェクトのビルド

作業を開始する前に、インストールされている Visual Studio 2015 (以降) for Windows Desktop を実行していることを確認してください。Mac を使用している場合、Xcode 9.0 以降をインストール済みであることを確認してください。

  1. [Solution Configuration] にビルドしたいコンフィギュレーションを設定します。この例では、 Development Editor に設定されています。利用可能な各コンフィギュレーションの詳細は ビルド コンフィギュレーション セクションを参照してください。

    rocket_config_development_menu.png

  2. ゲームプロジェクトで右クリックして、[Rebuild] を選んで再コンパイルします。

    rebuild_project_outside.png

これで、コンパイルしたプロジェクトで

[エンジンを実行](Basics/PIE/RunningUnrealEngine)
することができます。

エンジンを実行する場合、プロジェクトを再ビルドしたビルド コンフィギュレーションと一致する Unreal Engine の実行ファイルを使用することが重要です。例えば、 DebugGame Uncooked ビルド コンフィギュレーションでプロジェクトをコンパイルした場合、 ゲーム情報を引数として、 UE4-Win64-DebugGame.exe 実行ファイルを実行します。バイナリの命名規則に関する詳細は、 Unreal Engine のビルド ページを参照してください。

Unreal を実行する場合、 Uncooked コンフィギュレーションでプロジェクトをリビルドした場合、 -game フラグを付け加えることが重要です。 Debug コンフィギュレーションでプロジェクトをリビルドした場合は、 -debug フラグを付けることが重要です。

Visual Studio の既知の問題

問題

解決法

"Project is out of date" (プロジェクトが無効です) というメッセージが常に表示される

プロジェクトが最新状態であっても Visual Studio がプロジェクトを無効と解釈しています。 [ Do not show this dialog again ] ボックスにチェックを入れて [No] を選択することで、このメッセージが非表示になります。

No Debugging Information (デバッグ情報がありません) と表示したウィンドウが Debug コンフィギュレーション使用時に表示される

「UE4editor.exe」 ファイルを Development コンフィギュレーションでコンパイルしたためこのメッセージが表示されます。警告表示に関係なく、 Debug コンフィギュレーションを使ってゲームプロジェクトを使ってコンパイルした場合、デバッグ可能です。 [ Do not show this dialog again ] ボックスにチェックを入れて [Yes] を選択することでこのメッセージが非表示になります。

Xcode を使用してビルドする

Xcode でビルドする場合、ゲーム プロジェクトだけをコンパイルします。エディタはコンパイルしません。

プロジェクトのコンパイル方法

Unreal Engine の Xcode プロジェクトは、Xcode の Product > Build オプションを使用する場合に Debug コンフィギュレーションをビルドし、 Product > Build For > Profiling を使用する場合は Debug コンフィギュレーションをビルドするように設定されています。ターゲット スキームを編集することで、この挙動を編集できます。

これで、コンパイルしたプロジェクトで

[エンジンを実行](Basics/PIE/RunningUnrealEngine)
することができます。

バイナリ エディタを実行する場合、 Uncooked コンフィギュレーションでプロジェクトをリビルドした場合、 -game フラグを付け加えることが重要です。 Debug コンフィギュレーションでプロジェクトをリビルドした場合は、 -debug フラグを付けることが重要です。

Xcode の既知の問題

問題

解決法

Xcode がブレークポイントで停止しない

Xcode の LLDB デバッガーは、Unreal Engine のプロジェクトでブレークポイントを正しく処理するように設定する必要があります。ホームフォルダで .lldbinit ファイルを作成 (または、既にある場合は、編集) し、以下の行を追加する必要があります。

settings set target.inline-breakpoint-strategy always
Unreal Engine のドキュメントを改善するために協力をお願いします!どのような改善を望んでいるかご意見をお聞かせください。
調査に参加する
閉じる