次の方法で共有


Visual Studio で Unreal Engine プロジェクトを開く

Visual Studio 2022 バージョン 17.12 では、Unreal Engine プロジェクトが直接サポートされます。

以前は、Visual Studio で Unreal Engine プロジェクトを操作する前に、Microsoft Visual Studio プロジェクトを生成する必要がありました。 そのプロセスは面倒でした。 また、Unreal Engine Editor 内から、または別のチーム メンバーによって新しいアセットが追加されるたびに、Unreal Engine プロジェクトとの同期を維持するために Visual Studio プロジェクトを再生成する必要がありました。

Unreal Engine プロジェクト (.uproject) ファイルの直接サポートにより、Visual Studio 内から Unreal Engine プロジェクトを直接操作できるようになりました。 この統合により、Visual Studio プロジェクト ファイルを生成および再生成する時間のかかるプロセスなしで、シームレスな編集、デバッグ、およびプロジェクト ファイル管理が可能になります。

前提 条件

Visual Studio で Unreal Engine プロジェクトを操作するには、次をインストールする必要があります。

  • Visual Studio バージョン 17.12 Preview 2 以降。
  • Unreal Engine バージョン 4.27 または Unreal Engine バージョン 5 以降。
  • Visual Studio Tools for Unreal Engine。 インストール手順については、「Visual Studio Tools for Unreal Engine のインストール」を参照してください。
  • Lyra サンプル ゲームをダウンロードします。 ダウンロード手順については、Lyra サンプル ゲーム の「Lyra Starter Game のダウンロード」セクションを参照してください。 Unreal Engine のソース コード インストールを使用して入手した場合、そのバージョンには、ゲームのビルドと実行に必要なアセットは含まれません。 ダウンロード手順を使用して、Epic インストーラーを使用して必要なすべてを取得します。

Unreal Engine 5.3 以前の構成

5.4 より前のバージョンの Unreal Engine の場合は、次の手順に従って、Visual Studio と Unreal Engine .uproject 統合を有効にします。 これらの手順は、Epic Games Launcher から Unreal Engine をインストールした場合でも、ソース コードからビルドした場合でも機能します。

  1. Unreal Engine GitHub リポジトリから Unreal Engine のバージョンに固有のパッチをダウンロードします。 たとえば、UnrealBuildTool-5.2.patch は Unreal Engine バージョン 5.2 にパッチを適用します。
  2. PowerShell またはコマンド プロンプト ウィンドウを開き、Unreal Engine がインストールされているルート ディレクトリに移動します。 C:\Program Files\Epic Games\UE_5.3などの保護されたディレクトリに Unreal Engine がインストールされている場合は、管理者の昇格によって修正プログラムを適用する必要があります。
  3. コマンド git apply <path to the downloaded patch file>を使用してパッチを適用します。 例: git apply C:\Users\someuser\Downloads\UnrealBuiltTool-5.3.patch. 失敗した場合は、git apply -v --ignore-whitespace --ignore-space-change <path to the downloaded patch file>してみてください。

Visual Studio でネイティブ Unreal Engine プロジェクトを開く

Visual Studio でネイティブ Unreal Engine プロジェクトを開くには、次の 2 つの方法があります。

  • ファイル>>フォルダーを開く。フォルダーにプロジェクト (.uproject) が 1 つしかない場合に使用されます。
  • ファイル>>Unreal Engine Project を開き、フォルダーに複数の Unreal Engine プロジェクト ファイルがある場合に開く特定の .uproject ファイルを選択します。

この例では、Lyra ゲーム プロジェクトを使用して、Visual Studio でネイティブ Unreal Engine プロジェクトを開く方法を示します。

  1. Visual Studio で、[ファイル メニュー] を開き、[開く]>[フォルダーを開く]を選択します。

  2. Lyra ゲーム プロジェクト (LyraStarterGame.uproject) がインストールされているディレクトリに移動し、[フォルダーの選択] 選択します。

  3. フォルダーを選択すると、プロジェクト ファイルが ソリューション エクスプローラーの に表示され、ワークスペースの設定に関するメッセージが 出力 ウィンドウに表示されます。

    Lyra ゲーム サンプルのフォルダーを開く後の Visual Studio のスクリーンショット。

Unreal Engine プロジェクトのサポートがアクティブ化され、CMake や MSBUILD などの他のビルド システムが無効になっているというメッセージが表示されます。 このメッセージを閉じるには、メッセージの隅にある X をクリックします。

ソリューション エクスプローラーでプロジェクトを表示する

ソリューション エクスプローラーの ウィンドウには、PlatformsPluginsSource フォルダーなど、Unreal Engine プロジェクトの一部であるファイルとフォルダーの多くが表示されます。 Unreal Engine .uproject ファイルも表示されます。 Engine フォルダーには、Unreal Engine のソース ディレクトリが含まれています。

ソリューション エクスプローラーの は、ソース コードに焦点を合わせるためにフィルター処理されます。 既定では、Content フォルダーはフィルターで除外され、テクスチャやモデルなどのバイナリ アセットが含まれます。 これらのアセットは、Unreal Engine Editor で開くことができます。 一般に、バイナリ ファイルは Visual Studio ソリューション エクスプローラーには表示されません。

Visual Studio の外部に追加された新しいアセットを表示または編集するために、プロジェクトを再生成する必要はありません。

Unreal Engine の構成ページ

Visual Studio には、Unreal Engine プロジェクト構成ページが用意されています。 このページには、Unreal Engine の機能の状態が表示され、より多くの機能にアクセスできます。

Visual Studio のメイン メニューからこのページにアクセスするには、[Project >Configure Tools for Unreal Engine選択します。

Unreal Engine プロジェクト構成ページのスクリーンショット。

構成ページには、赤/緑の状態インジケーターと、全体的な構成状態、Unreal ビルド ツールの状態、Unreal エンジン ターゲット、ブループリント サポート、Visual Studio 統合ツールの状態などのオプションの更新ボタンがあります。

Unreal ビルド ツールの状態

最新の Unreal Build Tool (UBT) があることを確認するには、Unreal Build Tool の状態の更新アイコンを選択します。

この例では、Unreal Build Tool がワークスペース ジェネレーターで使用可能な最新バージョンを使用していないことを示すメッセージが表示されます。 [更新] を選択して、Unreal Build Tool を最新バージョンに更新します。

構成ページの Unreal Engine Build Tool Status オプションのスクリーンショット。

出力 ウィンドウに、Unreal Engine Build Tool の準備中にメッセージが表示されます。 ワークスペースの準備ができたことを示すメッセージが表示され、その後、ファイルの追加と編集を開始できます。

Unreal エンジンのターゲット

Unreal Engine プロジェクトをビルドするときは、ターゲットと呼ばれるさまざまなビルド構成を選択できます。

Unreal Engine Targets オプションは、それらのターゲットを生成する場所です。 更新アイコンを選択して Unreal Engine ターゲットの一覧を更新し、作成するターゲット構成を選択できるウィンドウを開きます。

Unreal Engine Build Targets の組み合わせウィンドウのスクリーンショット。

ターゲットの組み合わせの詳細については、ビルド構成の説明 Unreal Engine のドキュメントを参照してください。

この例では、ドロップダウンで LyraClientDebugGame、および Win64 が選択されています。

  1. を選択し、を追加して、生成する構成の一覧に追加します。
  2. ターゲットの生成 を選択して、そのチェックボックスがオンになっている構成ごとに選択した構成を作成します。

ターゲットが生成されたら、「ビルド構成を選択する」の説明に従ってターゲットを選択できます。 一部の組み合わせがサポートされていない可能性があるため、ターゲットを生成するときに出力ウィンドウでエラーが発生するのを確認します。

ターゲットを削除する場合は、不要なターゲットをオフにしてから、[ターゲットの生成] ボタン 選択します。 ターゲットの生成を選択すると、選択されていないターゲットは削除されますが、プロジェクトを再読み込みするまで、この一覧からは表示されなくなります。

ターゲット プロパティを編集する

Unreal Engine ターゲット プロパティを編集するには、ソリューション エクスプローラーで太字のターゲット ファイルを右クリックし、[Unreal Engine ターゲット プロパティ 編集]選択します。

たとえば、LyraEditor.Target.cs がスタートアップ ターゲット (ソリューション エクスプローラーのでは太字) の場合は、右クリックし、[この Unreal Engine ターゲット プロパティの編集] 選択。 エディターで UETargetProperties.json ファイルが開きます。

LyraEditor.Target.cs ソリューション エクスプローラー項目を右クリックしたスクリーンショット。

メニューが表示され、下部にこの Unreal Engine ターゲットを編集するオプションがあります。 このオプションを選択すると、エディターで UETargetProperties.json が開きます。

その後、コマンド ライン引数などのターゲット プロパティを変更できます。

プロジェクト設定を編集する

Unreal Engine プロジェクトの設定を編集するには、ソリューション エクスプローラーで .uproject ファイルを右クリックし、[Unreal Engine プロジェクト設定 編集]選択します。

ProjectSettings.json ファイルがエディターで開きます。 その後、ソリューション エクスプローラー ビューから除外するプロジェクト ファイルやエンジン ファイル、IntelliSense から除外する共有インクルード パスなどのプロジェクト設定を変更できます。 これらの設定を使用して、IntelliSense を高速化する必要のないファイルを除外できます。

LyraStarterGame.uproject ソリューション エクスプローラー項目を右クリックしたスクリーンショット。

メニューが表示され、下部に Unreal Engine プロジェクト設定を編集するオプションがあります。 このオプションを選択すると、エディターで '.uproject' ファイルが開きます。

ビルド構成を選択する

ビルド構成を選択するには、[構成] ドロップダウンから目的のターゲットを選択します。

構成ドロップダウンのスクリーンショット。

構成ドロップダウン メニューには、DebugGame - Win64 と開発 - Win64 の項目が含まれています。

ビルドするターゲットが一覧にない場合は、「Unreal Engine Targets」の説明に従って追加します。

Visual Studio での編集とデバッグ

Visual Studio で Unreal Engine プロジェクトを編集、ビルド、デバッグできます。 Visual Studio で Unreal Engine のモジュール、クラス、プラグインを追加する方法については、「Visual Studio で Unreal Engine のクラス、モジュール、プラグインを追加するを参照してください。

コードにブレークポイントを設定し、Unreal Engine Editor でゲームを実行できます。 ブレークポイントにヒットすると、Visual Studio でコードをデバッグできます。

既定では、Visual Studio では、Development - Win64という 1 つのターゲットのみが生成されます。 このターゲットは、ゲーム プロジェクトが読み込まれた状態で Unreal Editor をビルドして起動します。

Visual Studio で Lyra ゲーム サンプル プロジェクトのフォルダーを開いた場合は、次の手順に従ってデバッグを試してください。

  1. Visual Studio で、LyraGameplayAbility_RangedWeapon.cppを開きます。 ソリューション エクスプローラーの の [検索] ウィンドウでそのファイルを検索するか、Games>LyraStarterGame>Source>LyraGame>Weapons>LyraGameplayAbility_RangedWeapon.cppで検索します。
  2. LyraGameplayAbility_RangedWeapon.cppでは、約 477 行目に移動します。 void ULyraGameplayAbility_RangedWeapon::OnTargetDataReadyCallback関数を探します。
  3. F9 キーを押して、関数にブレークポイントを配置します。
  4. Visual Studio でサンプルゲームを実行するには、の [デバッグ>デバッグの開始] を選択します。 Unreal Engine Editor にゲームを読み込む時間を与えます。
  5. Unreal Engine Editor で、ツール バーの [再生] ボタンを選択 (または Alt+pキーを押して) ゲームを開始します。
  6. ライラゲームでは、wasd キーを使用して、プレイヤーを エリミネーション ポータルに左に移動します。 プレイヤーをエントリ ポータル上に配置してゲームを読み込みます。
  7. ゲームが実行されたら、マウス ボタンをクリックして起動すると、Visual Studio にブレークポイントが表示されます。Visual Studio でのデバッグのスクリーンショットが表示されます。OnTargetDataReadyCallback 関数にブレークポイントがヒットします。

一般的な問題と解決策

  • エンジンとゲーム コードは同じドライブ上にある必要があります。 そうでない場合は、「ゲーム ソースとエンジン ソースが異なるドライブ上にある」を参照してください。
  • 同じフォルダー内の複数の .uproject ファイルはサポートされていません。 同じフォルダーに複数のプロジェクト ファイルがある場合に特定の .uproject ファイルを開くには、[ファイル] >[>Unreal Engine プロジェクトを開く] を使用します。
  • ファイル>Open>Unreal Engine プロジェクトを使用して Unreal Engine プロジェクトを開くと、Visual Studio の [ファイル]>[最近使ったプロジェクトとソリューション] リストにプロジェクトが表示されません。 ファイル>フォルダーを開くを使用して Unreal Engine プロジェクトを開くと、開いた Unreal Engine プロジェクトが最近開いたプロジェクトの一覧に表示されます。
  • 一部の拡張機能は、Unreal Engine プロジェクトとして開かれたプロジェクトでは動作しない場合があります。
  • ソース ファイルのプロパティ ウィンドウが空です。 これは現在仕様です。
  • フォルダー ビューに Visual Studio ソリューション ファイルがあります。 Unreal Engine によってこのファイルが生成されますが、Visual Studio では使用されないため、無視してもかまいません。

ゲーム ソースとエンジン ソースが異なるドライブ上にある

Unreal Engine のソース コードとゲーム ソース コードが異なるドライブにある場合は、ゲーム コード プロジェクトを開くとエラーが表示されます。 たとえば、ゲームが C:\Users\MyUser\MyGame にある場合、Unreal Engine は C:\ ドライブ上のどこかに配置する必要があります。それ以外の場合、Visual Studio での Unreal Engine プロジェクトのサポートは利用できません。

マルチドライブ エラー ウィンドウのスクリーンショット。

次のいずれかのソリューションをお勧めします。

解決策 1: ゲームとエンジンのソースを同じドライブに移動する

最も簡単な解決策は、Windows File Explorerを使用して Unreal Engine が存在するのと同じ論理ドライブにゲーム プロジェクトを移動することです。

Epic Games Launcher経由でインストールした Unreal Engine ソースを移動する場合は、エンジンをアンインストールしてから、ゲームと同じドライブに再インストールします。 これにより、エンジン構成ファイルに新しい場所が反映されます。

ゲーム ソースとエンジン ソースを同じドライブに追加したら、Visual Studio で .uproject を開くことができます。

エンジン ソースとゲーム ソースを同じドライブに移動できない場合は、Unreal Engine ソースへのシンボリック リンクを作成し、.uproject ファイル内の EngineAssociation プロパティを一致するように変更できます。

この例では、Unreal Engine が C:\Program Files\Epic Games\UE_5.4 にあり、ゲームが Q:\src\gameにあるとします。

  1. (PowerShell ではなく) コマンド プロンプトを開きます。
  2. ゲーム ソースがオンになっているドライブに移動します。 たとえば、cd /d Q:\します。
  3. Unreal Engine を指すシンボリック リンクを作成します。 mklink コマンドは、シンボリック・リンク名を指定するリンク・パラメーターを受け取ります。これは、ディレクトリーの場所がファイル・システムにどのように表示されるかを指定します。 ターゲット パラメーターは、リンク先のパラメーターです。 たとえば、mklink /d "Q:\UE-Link" "C:\Program Files\Epic Games\UE_5.4" は、C: ドライブ上の Unreal Engine ディレクトリを指す Q:\UE-Link という名前のシンボリック リンクを作成します。
  4. ゲームの .uproject ファイルを開き、EngineAssociation プロパティを作成した symlink フォルダーに変更します。 たとえば、"EngineAssociation": "Q:\\UE-Link"します。

ゲーム ソースとエンジン ソースが同じドライブ上にあるように見えるため、Visual Studio で .uproject を開くことができます。 シンボリック リンクは、ファイル参照をエンジンにリダイレクトする処理を行います。

このソリューションは、構成ファイルが変更され、次回 Unreal Engine を更新するときに変更が元に戻される可能性があるため、脆弱です。

この例では、Unreal Engine が C:\Program Files\Epic Games\UE_5.4 にあり、ゲームが Q:\src\Game

  1. (PowerShell ではなく) コマンド プロンプトを開きます。
  2. ゲーム ソースがオンになっているドライブに移動します。 たとえば、cd /d Q:\します。
  3. Unreal Engine を指すシンボリック リンクを作成します。 mklink コマンドは、シンボリック・リンク名を指定するリンク・パラメーターを受け取ります。これは、ディレクトリーの場所がファイル・システムにどのように表示されるかを指定します。 ターゲット パラメーターは、リンク先のパラメーターです。 たとえば、mklink /d "Q:\UE-Link" "C:\Program Files\Epic Games\UE_5.4" は、C: ドライブ上の Unreal Engine ディレクトリを指す Q:\UE-Link という名前のシンボリック リンクを作成します。
  4. エディターで C:\ProgramData\Epic\UnrealEngineLauncher\LauncherInstalled.dat を開きます。
  5. InstallLocation の値を、作成したシンボリック リンク パスに置き換えます。 この例は、C: ドライブにインストールされている UE 5.4 用であり、シンボリック リンクは Q: ドライブにあります。

以前は:

{
    "InstallationList": [
        {
            "InstallLocation": "C:\\Program Files\\Epic Games\\UE_5.3",
            ...
            "AppName": "UE_5.4"
        },
}

後:

{
    "InstallationList": [
        {
            "InstallLocation": "Q:\\UE-Link",
            ...
            "AppName": "UE_5.4"
        },
}

ゲーム ソースとエンジン ソースが同じドライブ上にあるように見えるため、Visual Studio で .uproject を開くことができます。 シンボリック リンクは、ファイル参照をエンジンにリダイレクトする処理を行います。

Visual Studio Tools for Unreal Engine
Visual Studio で Unreal Engine のクラス、モジュール、プラグインを追加する
クイックスタート: Visual Studio Tools for Unreal Engine
Visual Studio で Unreal Engine ブループリントを表示する
Visual Studio で Unreal Engine のログ記録を表示する
Visual Studio で Unreal Engine マクロを表示する