今回はかなり実践的な内容で、プログラマーな方で更にUE4のエンジン部分を触りたいというような人向けの内容です。
UE4はWindows環境だとVisualStudioを使ってデバッグすることができます。MacだとXcodeを使うことになりますが、今回はあくまでもVisualStudioを使っての解説ですので、ご了承ください。
VisualStudioのインストール
まず何はともあれ、VisualStudioをインストールしてください。Expressであれば無料で使用することができます。下記のリンクから直接ダウンロードすることができます。
Download Microsoft Visual Studio Express 2013 for Windows Desktop from Official Microsoft Download Center
インストール方法もリンク先を参考にインストールしてください。UE4では2013以外のVisualStudioには対応していませんので、それ以前のVisualStudioをお使いの方は2013をインストールしてください。
2014/09/15 追記: ダウンロードリンクが変わったので、以下よりVisual Studio Express 2013 for Windows Desktopを選んでインストールしてください。
GitHubからソースコードをダウンロード
下記のリンク先から最新のソースコードをダウンロードしてきてください。またEpicGamesのGitHubアカウントにアクセスするには、UE4契約したアカウントでGitHubに登録する必要があります。アクセス無効のアカウントでリンクを選択しても404エラーになりますので注意してください。
https://github.com/EpicGames/UnrealEngine
GitHubへ登録する際には以下の情報も参考にしてください。
ダウンロードしたら任意の場所でソースファイルを展開させてください。
必要ファイルを更にダウンロード
必要なファイルが更にありますので、UE4リポジトリーの中のREADME.mdを参考にダウンロードしてください。ファイル名は"Required_1of2.zip"と"Required_2of2.zip"です。
それぞれ既にダウンロードしていたUE4エンジンソースの中の"Engine"フォルダーのあるフォルダーと同じ場所で解凍します。これで必要なものは整いました。
最後にプロジェクトファイルを作るために、ダウンロードしてきたソースファイルの中のトップにある"GenerateProjectFiles.bat"ファイルを実行します。
これでVisualStudio用のプロジェクトソリューションファイルが生成されます。以下のようなフォルダー構成になっていればOKです。隠しファイル".git"ファイルはあってもなくても構いません。
ソリューションファイルを開いてビルド
"UE4.sln"ファイルを開いてください。VisualStudioが起動します。UE4プロジェクトが開きます。今回はあくまでもデバッグするというのが目的です。ソリューション構成のクリックして開き、"Debug Editor"を選択します。
この状態でソリューションをビルドします。F7キーなりでビルドしてください。ビルドにはPCの性能にもよりますが、性能が比較的良いPCでも1時間から2時間の間くらいはかかります。その間は別のことでもして待っていましょう。
ビルドが完了したらそのままF5なりで実行すると、ランチャーが立ち上がりますので、そのまま新規プロジェクトを作成してください。ここで作られたプロジェクトは今ビルドしているエンジンからでしか起動できないものとなるので注意してください。
作成プロジェクトをビルドする
新規プロジェクトを作成して起動すると、元々起動していたエンジンをビルドしたVisualStudioの接続が切れて実行が止まります。この時点で既にこのUE4のエンジンビルドのソリューションは必要なくなりますので、閉じてください。
そして新たに新規プロジェクトのソリューションが開かれていると思います。再度このプロジェクトのソリューション構成も上記と同じように"Debug Editor"に変更してください。
変更したらソリューションエクスプローラーから、作成したプロジェクト名のプロジェクトを右クリックで開き、"スタートアッププロジェクトに設定"を選択してください。
ビルドが完了して実行してみると、UE4エディターが立ち上がると思います。
実際にブレークポイントを置いてみる
あとはもうどこにでもブレークポイントが置けますので、通常のVisualStudioで実行するのと同様にブレークポイントを置いてみてください。上手くいけば下記のような具合でしっかりとブレークして変数の中身などもウォッチできると思います。
当然、UE4のエンジン自体にブレークポイントを置いてデバッグすることができます!非常に難解なバグに陥った場合はエンジン自体のソースを読み、デバッグする必要がでてきます。
この方法は特に仕事でゲームを作るプロの方だと特に必須だと思いますので、ぜひとも覚えていただけるといいのではないでしょうか。