C++ ときどき ごはん、わりとてぃーぶれいく☆

USAGI.NETWORKのなかのひとのブログ。主にC++。

UE4: 4.18 で追加された VSCode プロジェクト生成に少しだけ追加すると便利な事

1. launch.json<ProjectName>Editor (DebugGame)args-game を追加する

UE4Editor-game を追加して実行すると、 UE4EditorIDEユーザーインターフェース類を表示せずに擬似的に直接プロジェクトのバイナリーを実行したのと同様の状態でデバッグ実行を開始できます。

この時、既存の起動中の UE4Editor のプロセスとは別のプロセスで実行できるので、 C++ コードの実装中にたまにある「もしかしたら落ちるかも」の確認を起動中の UE4Editor とは別に安全に行いつつ、わざわざデバッグ実行のためにIDEユーザーインターフェースの表示などをスキップして実行できるので少し開発効率が良くなります。

2. launch.jsonAttach プロファイルを追加する

既存の起動中の UE4Editor にも VSCode からアタッチしてデバッグし、エディターの画面内でプレイ中に VSCode でブレークしてステップ実行するなどできます。以下のプロファイルを追加しておき、動作中の UE4Editor へアタッチしたい場合に使います。

{ "name": "Attach"
, "type": "cppvsdbg"
, "request": "attach"
, "processId": "${command:pickProcess}"
}

アタッチの場合は、既に UE4Editor が動いている状態でデバッグを即開始できるので、 -game オプション付きであれ別プロセスで起動するよりもデバッグ開始までの所要時間がかかりません。但し、メインでブループリントやマテリアルを編集している UE4Editor へアタッチしてデバッグ実行していても、アレなC++コードで落としてしまうとどうにもなりません。不安のあるコードや、落ちるバグをどうにかしたいデバッグ実行の際には(1)の -game 付きの別プロセス実行を行い、そうでもない場合には(2)で素早くアタッチしてデバッグすると捗るかもしれません。