次の方法で共有


Visual Studio で Unreal Engine ブループリントをデバッグする

Visual Studio では、呼び出し履歴ウィンドウとローカル変数ウィンドウに Unreal Engine Blueprints に関する情報を表示することで、Unreal Engine プロジェクトのデバッグが向上します。 この機能を使用すると、1 つのデバッグ セッションで C++ コードと共にブループリント コードをデバッグできます。 この機能を使用すると、ブループリントと C++ コード間の相互作用を簡単に追跡できるため、バグの検出と修正が容易になります。

ブループリントは、迅速なプロトタイプ作成と開発に使用される Unreal Engine のビジュアル スクリプト テクノロジです。 ブループリントは C++ コードを呼び出すことができます。 多くの場合、ゲームはもともとブループリントとして設計され、後でパフォーマンスを向上させるために C++ に変換されます。 ブループリントの C++ への変換に時間を費やす場合、この新しいデバッグ機能を使用すると、ブループリントと C++ コードを一緒に分析できます。 これにより、Visual Studio と Unreal Editor を切り替える必要が減り、コンテキスト切り替えの少ないシームレスなデバッグ エクスペリエンスが提供されます。

Visual Studio Blueprint デバッガーのサポートでは、次の機能が提供されます。

  • 統合デバッグ エクスペリエンス: ブループリントと C++ コードを同じセッションでデバッグします。
  • 統合された呼び出し履歴: ブループリント フレームは、C++ フレームと同じ呼び出し履歴に表示されます。
  • 変数検査: ブループリント ノードのピンとその値をローカル変数ウィンドウに表示します。
  • ブレークポイントのサポート: ブループリントによって呼び出される C++ コードでブレークポイントを設定します。 これは、C++ コードを呼び出すことができる複数のブループリントがあるが、どちらが実行され、その理由が不明な場合に便利です。

[前提条件]

  • デバッグ シンボルと共にインストールされた Unreal Engine。
  • Visual Studio 2022 17.14 以降。 C++ ワークロードを使用したゲーム開発 がインストールされています。
  • Visual Studio にインストールされた Visual Studio Tools for Unreal Engine。
  • Visual Studio にインストールされた Unreal Engine Blueprints 用の Visual Studio デバッガー ツール。
  • Unreal Engine にインストールされた Visual Studio 用の Unreal Engine プラグイン。

必須コンポーネントのインストール

Visual Studio インストーラーを実行して、Unreal Engine Blueprints をデバッグするために必要なコンポーネントをインストールします。 Visual Studio Tools for Unreal Engine のインストールの詳細については、「Visual Studio Tools for Unreal Engine の概要」を参照してください。

[ワークロード] ウィンドウで、Unreal Engine Blueprints 用の Visual Studio デバッガー ツールと Unreal Engine 用 Visual Studio Tools と共に、C++ ワークロードを使用したゲーム開発がインストールされていることを確認します。

Visual Studio インストーラーのスクリーンショット。[C++ によるゲーム開発] ワークロードが選択されています。インストールの詳細ウィンドウで、Visual Studio Tools for Unreal Engine、Unreal Engine Blueprints 用の Visual Studio デバッガー ツール、HSL ツール、Windows 11 SDK が選択されています。

Unreal Engine デバッグ シンボルをインストールする

Visual Studio でデバッグする Unreal Engine の各バージョンのデバッグ シンボルをインストールします。

  1. エピックゲームランチャーを開きます。

  2. Unreal Engine ペインを選択し、[ライブラリ] ウィンドウを選択します。

  3. エンジンのバージョンのドロップダウン メニューを選択し、[ オプション] を選択します。

    Epic Games インストーラーのスクリーンショット。[起動] ドロップダウンが選択され、[オプション] が強調表示されています。

  4. [オプション] ダイアログで、 デバッグ用のエディター シンボルを選択します

    Epic Games のインストール オプションのスクリーンショット。デバッグ用のエディター シンボルが選択されています。

  5. [ 適用] を選択し、ダウンロードが完了するまで待ちます。

Visual Studio 用 Unreal Engine プラグインをインストールする

Visual Studio 用の Unreal Engine プラグインが Unreal Engine にインストールされます。 インストールすると、Visual Studio で Unreal Engine プロジェクトを開くと、自動的にアクティブ化されます。 このプラグインは、Unreal Engine と Visual Studio の統合を提供し、Visual Studio デバッガーのローカル変数ウィンドウでのブループリント ノードのピン値の表示をサポートします。

手動インストール手順については、 Visual Studio 用 Unreal Engine プラグインを参照してください。

Visual Studio で開くことができる Unreal Engine プロジェクトがある場合、プラグインをインストールする別の方法は、Unreal Engine の [構成] ウィンドウを使用して Visual Studio にインストールすることです。

  • Visual Studio で Unreal Engine プロジェクトを開いた状態で、[ Project>Configure Tools for Unreal Engine ] を選択して 、[Unreal Engine Integration Configuration] ウィンドウを開きます。
  • Visual Studio 統合ツールの状態セクションで、ニーズに合わせて [プロジェクトにインストール] または [エンジンにインストール] を選択します。

インストール ボタンが表示されない場合は、更新アイコンを選択して状態を更新します。 プラグインを手動でインストールする必要がある場合は、[ 手動インストール手順 ] リンクを選択して、インストール手順を含む Visual Studio 用 Unreal Engine プラグイン ページを開きます。

Unreal Engine Integration Configuration ウィンドウのスクリーンショット。Visual Studio 統合ツールの [状態] セクションで、[更新]、[プロジェクトへのインストール]、[エンジンへのインストール] ボタンが強調表示されています。[手動インストール手順] リンクも強調表示されています。

テスト プロジェクトを設定する

ブループリント デバッガー機能をテストするには、ブループリントと C++ コードを含むプロジェクトを作成します。 Unreal Engine First Person テンプレートは適切に機能します。

  1. Unreal Engine Editor を開き、新しい First Person プロジェクトを作成します。

  2. C++ が選択されていることを確認します。

    Unreal Engine エディターの [新しいプロジェクト] ダイアログのスクリーンショット。[First Person] が選択され、[BlueEpic Games] インストール オプションが選択されています。デバッグ用のエディターシンボルが選択されています。

  3. プロジェクトを作成したら、すべての Unreal Editor インスタンスを閉じます。

  4. Visual Studio で、生成された Visual Studio ソリューション ファイル (.sln) を開きます。

ブループリントのデバッグ

ブレークポイントを設定し、ブループリント関数を調べて、ノードのピン値を表示するには、次の手順に従います。

  1. Visual Studio で、武器コンポーネント クラスで AttachWeapon メソッドを見つけます。 たとえば、プロジェクト FirstPersonに名前を付けた場合、関数はファイル FirstPersonWeaponComponent.cpp内にあります。

  2. AttachWeapon メソッドの先頭にブレークポイントを追加します。 このメソッドは、プレイヤーがゲーム内で武器を拾ったときに呼び出されます。

    Visual Studio の AttachWeapon 関数のスクリーンショット。ブレークポイントは関数の最初の行にあります。

  3. [Visual Studio Solution Configuration]\(Visual Studio ソリューション構成\) ドロップダウンで、[ 開発エディター] を選択します。

    Visual Studio ソリューション構成ドロップダウンのスクリーンショット。開発エディターが選択されています。

  4. Visual Studio でプロジェクトをコンパイルして実行し、Unreal Editor を開きます。

  5. Unreal エディターで、緑色の [再生 ] ボタンを選択してゲームを開始します。

  6. 実行中のゲームでは、 W キーを押して、武器と衝突してブレークポイントをトリガーするまで前に進みます。

  7. ブレークポイントにヒットしたら、呼び出し履歴 ウィンドウを調べます。 ブループリント スタック フレームは、C++ スタック フレームの間に表示されます。

    Visual Studio の [呼び出し履歴] ウィンドウのスクリーンショット。AttachWeapon のブレークポイントは、呼び出し履歴の一番上にあります。BP_PickUp_Rifle::ExecuteUbergraph_BP_PickUp_Rifle と BP_PickUp_Rifle::BndEvt___BP_PickUp_Rifle_TP_PickUp_K2Node_ComponentBoundEvent_1_OnPickUp_DelegateSignature の 2 つのブループリント エントリが呼び出し履歴で強調表示されています。

  8. 呼び出し履歴の最初のブループリント フレームをダブルクリックします。

  9. [ ローカル] ウィンドウを開き、ブループリント ノードに関連付けられている変数を表示します。 ブループリント ノード ピンの値を確認できます。

    Visual Studio の [ローカル] ウィンドウのスクリーンショット。ノード ピン > ブループリント情報 > 使用可能なピンが展開され、EntryPoint、PickUpCharacter、HasRifle などのブループリントの値が表示されます。

概要

Visual Studio Blueprint デバッガーは、Unreal Engine プロジェクトの C++ とブループリント コードの間のギャップを埋めるシームレスなデバッグ エクスペリエンスを提供します。 この統合アプローチを使用すると、次のことができます。

  • C++ からブループリントへの実行フローを追跡し、戻る。
  • ブループリント ノードのピン値と C++ 変数を調べます。
  • C++ コードと同じデバッグ セッションでブループリントの実行フレームをステップごとに実行します。

この統合デバッグ エクスペリエンスは、両方のコーディング パラダイムで問題を効率的に解決するのに役立ち、さまざまなデバッグ ツールを切り替える必要がなくなります。