Unreal Engine (UE) は、プロジェクトのコンパイルとこれらをエンジンとリンクさせる複雑な側面をすべて処理する UnrealBuildTool (UBT) を使用したカスタム ビルド手法を使用します。このプロセスは透過的に行われるので、標準の Visual Studio ビルド ワークフローを介してプロジェクトをビルドできます。
UnrealBuildTool は、*.build.cs
と *.target.cs
ファイルを使用してゲーム プロジェクトをビルドします。C++ テンプレートを使用してプロジェクトが作成された場合または CPP クラス ウィザード を使用して、ブループリント専用線プレートから作成されたプロジェクトにコードを追加した場合、これらは自動的に生成されます。
ビルド コンフィギュレーション
Unreal プロジェクトは複数のターゲット (Editor、Client、Game、Server) を *.target.cs
ファイルで記述します。さらに、それぞれのファイルは別のコンフィギュレーションにビルドされます。Visual Studio では、各ターゲットに対して異なるコンフィギュレーションで Visual Studio の *.vcxproj
ファイルとして明示します。ソリューション コンフィギュレーションは [コンフィギュレーション][ターゲット タイプ] と名付けられます (たとえば、デフォルト エディター ターゲットは「DevelopmentEditor」、デフォルト スタンドアローン型ゲーム ターゲットは「Development」)。使用するコンフィギュレーションは、作成するビルドの目的によって決定されます。
各ビルド コンフィギュレーションには、2 つのキーワードがあります。最初のキーワードは、エンジンとゲーム プロジェクトのステートを表します。たとえば、Debug コンフィギュレーションを使用してコンパイルすると、ビルド プロセスの最適化が省かれてデバッグが容易になります。明確に言うと、Visual Studio でビルドした場合、または Unreal Editor の [Project Settings (プロジェクト設定)] > [Project (プロジェクト)] > [Packaging (パッケージ化)] > [Project] > [Include Debug Files (デバッグファイルを含める)] がオンになっている場合、シッピング ビルドでもすべてのコンフィギュレーションでデバッグ用のシンボルを生成します。つまり、Development および Shipping コンフィギュレーションでもデバッグは可能ですが、Debug コンフィギュレーションほどデバッグが容易でない可能性があります。2 つめのキーワードは、ビルドしているターゲットを示します。たとえば、Unreal でプロジェクトを開きたい場合、Editor をターゲット キーワードとしてビルドする必要があります。
ビルド コンフィギュレーション - ステート | 説明 |
---|---|
Debug | このコンフィギュレーションは、最適化せずに Debug コンフィギュレーションでエンジンとゲーム コードの両方をビルドします。処理は遅くなりますが、デバッグが容易になります。Debug コンフィギュレーションを使用してプロジェクトをコンパイルし、Unreal Editor でプロジェクトを開きたい場合、プロジェクトでコード変更が反映されているかを確認するには、-debug フラグを使用しなければなりません。 |
DebugGame | このコンフィギュレーションでは、最適化せずにゲーム コードをビルドします。ゲーム モジュールのみをデバッグする場合に理想的なコンフィギュレーションです。 |
Development | エンジン コードおよびゲーム コードの最適化において、このコンフィギュレーションはすべてを有効にしますが最も時間のかかるコンフィギュレーションです。開発およびパフォーマンスの点では理想です。Unreal Editor ではデフォルトで Development コンフィギュレーションを使用します。Development コンフィギュレーションでプロジェクトをコンパイルすると、エディタでプロジェクトのコード変更が反映されていることを確認できます。 |
Shipping | これは、最適なパフォーマンスを実現する、ゲーム出荷用のコンフィギュレーションです。このコンフィギュレーションはコンソール コマンド、統計情報、プロファイリング ツールを削除します。 |
Test | このコンフィギュレーションは、Shipping コンフィギュレーションですが、一部のコンソール コマンド、統計情報、プロファイリング ツールが有効になっています。 |
ビルド コンフィギュレーション - ターゲット | 説明 |
---|---|
Game | スタンドアロンの実行可能なプロジェクトのバージョンをビルドするコンフィギュレーションですが、プラットフォーム固有のクックされたコンテンツが必要です。クックされたコンテンツに関する詳しい情報については、「プロジェクトをパッケージ化する」リファレンス ページを参照してください。 |
Editor | Unreal Editor でプロジェクトを開き、すべてのコード変更が反映されていることを確認するには、プロジェクトが Editor コンフィギュレーションでビルドしなければなりません。 |
Client | UE のネットワーク構築機能を使ってマルチプレイヤー プロジェクトの作業を行っている場合、このターゲットは指定したプロジェクトを、マルチプレイヤー ゲーム用の UE のクライアント サーバー モデルのクライアントとして指定します。<GAME_NAME>Client.Target.cs ファイルがあれば、Client ビルド コンフィギュレーションが有効になります。 |
Server | UE のネットワーク構築機能を使ってマルチプレイヤー プロジェクトの作業を行っている場合、このターゲットは指定したプロジェクトを、マルチプレイヤー ゲーム用の UE のクライアント サーバー モデルのサーバーとして指定します。<GAME_NAME>Server.Target.cs ファイルがあれば、Server ビルド コンフィギュレーションが有効になります。 |
Visual Studio でビルドする
ビルド コンフィギュレーションを設定する
ビルド コンフィギュレーションは、Visual Studio のツールバーで設定できます。この設定は以下のようになります。

ソリューション プラットフォームを設定する
このソリューション プラットフォームは、Visual Studio のツールバーから設定することができます。
Unreal Engine で作業する場合、通常 Win64 プラットフォームを使用します。これはプロジェクト ファイルを生成する場合にデフォルトで含まれる唯一のものです。IDE のプロジェクト ファイル ページには、他のプラットフォーム向けにプロジェクト ファイルを生成するための指示が記載されています。

プロジェクトをビルドする
作業を開始する前に、インストールされている Visual Studio 2019 (以降) for Windows Desktop を実行していることを確認してください。Mac を使用している場合、Xcode 9.0 以降がインストール済みであることを確認してください。
-
[Solution Configuration (ソリューション コンフィギュレーション)] にビルドしたいコンフィギュレーションを設定します。この例では、[Development Editor (開発エディタ)] に設定されています。使用可能な各コンフィギュレーションの詳細については、「ビルド コンフィギュレーション」セクションを参照してください。
-
ゲーム プロジェクトで右クリックして、[Rebuild (再ビルド)] を選んで再コンパイルします。
これで、コンパイルしたプロジェクトで エンジンを実行する ことができるようになりました。
UE を実行する場合、プロジェクトを再ビルドしたビルド コンフィギュレーションと一致する Unreal Engine の実行ファイルを使用することが重要です。たとえば、DebugGame Uncooked ビルド コンフィギュレーションでプロジェクトをコンパイルした場合、
ゲーム情報を引数として、UnrealEditor-Win64-DebugGame.exe
実行ファイルを実行します。バイナリ命名規則の詳細については、「ソースから Unreal Engine をビルドする」ページを参照してください。
Unreal Engine を実行する場合、Uncooked コンフィギュレーションでプロジェクトを再ビルドした場合、-game
フラグを付け加えることが重要です。Debug コンフィギュレーションでプロジェクトを再ビルドした場合は、-debug
フラグを付け加えることが重要です。
Visual Studio の既知の問題
問題 | 解決法 |
---|---|
「Project is out of date (プロジェクトが無効です)」というメッセージが常に表示される | プロジェクトが最新であっても Visual Studio がプロジェクトが期限切れであると解釈しています。[今後このダイアログを表示しない] ボックスにチェックを入れて [No (いいえ)] を選択することで、このメッセージが非表示になります。 |
No Debugging Information (デバッグ情報がありません) と表示したウィンドウが Debug コンフィギュレーション使用時に表示される | 「UnrealEditor.exe 」ファイルを Development コンフィギュレーションでコンパイルしたためこのメッセージが表示されます。この警告にもかかわらず、Debug コンフィギュレーションを使用してコンパイルすると、ゲーム プロジェクトはデバッグ可能なままです。[今後このダイアログを表示しない] ボックスにチェックを入れて [Yes (はい)] を選択することで、このメッセージが非表示になります。 |