Öffnen von Unreal Engine-Projekten in Visual Studio
Visual Studio 2022, Version 17.12, bietet direkte Unterstützung für Unreal Engine-Projekte.
Zuvor mussten Sie ein Microsoft Visual Studio-Projekt generieren, bevor Sie mit einem Unreal Engine-Projekt in Visual Studio arbeiten konnten. Dieser Prozess war umständlich. Und wenn ein neues Objekt aus dem Unreal Engine Editor oder von einem anderen Teammitglied hinzugefügt wurde, musste das Visual Studio-Projekt neu generiert werden, um mit dem Unreal Engine-Projekt synchronisiert zu bleiben.
Jetzt können Sie mit direkter Unterstützung für Unreal Engine-Projektdateien (.uproject
) direkt mit Unreal Engine-Projekten in Visual Studio arbeiten. Diese Integration ermöglicht die nahtlose Bearbeitung, das Debuggen und die Projektdateiverwaltung, ohne dass der zeitaufwendige Prozess zum Generieren und Generieren einer Visual Studio-Projektdatei erforderlich ist.
Voraussetzungen
Es muss folgendes installiert sein, um mit Unreal Engine-Projekten in Visual Studio zu arbeiten:
- Visual Studio, Version 17.12 Preview 2 oder höher.
- Unreal Engine Version 4.27 oder Unreal Engine, Version 5 und höher.
- Visual Studio-Tools für Unreal Engine. Installationsanweisungen finden Sie unter Installieren von Visual Studio-Tools für Unreal Engine.
- Laden Sie das Lyra-Beispielspiel herunter. Anweisungen zum Download finden Sie im Abschnitt Downloading the Lyra Starter Game unter Lyra Sample Game. Wenn Sie es über die Quellcodeinstallation von Unreal Engine erworben haben, enthält diese Version nicht die zum Erstellen und Ausführen des Spiels erforderlichen Ressourcen. Verwenden Sie die Downloadanweisungen, um alles zu erhalten, was Sie über das Epic-Installationsprogramm benötigen.
Konfiguration für Unreal Engine 5.3 oder früher
Führen Sie für Versionen von Unreal Engine vor 5.4 die folgenden Schritte aus, um die Unreal Engine-Integration .uproject
in Visual Studio zu aktivieren. Diese Schritte funktionieren, unabhängig davon, ob Sie Unreal Engine aus dem Epic Games Launcher installiert oder aus dem Quellcode erstellt haben.
- Laden Sie den Patch für Ihre Version von Unreal Engine aus dem GitHub-Repository der Unreal Engine herunter. Beispielsweise
UnrealBuildTool-5.2.patch
patches Unreal Engine Version 5.2. - Öffnen Sie entweder ein PowerShell- oder Eingabeaufforderungsfenster, und navigieren Sie zum Stammverzeichnis, in dem das Unreal Engine installiert ist. Sie benötigen Administratorerweiterungen, um den Patch anzuwenden, wenn unreal Engine in einem geschützten Verzeichnis installiert ist, z
C:\Program Files\Epic Games\UE_5.3
. B. . - Wenden Sie den Patch mit dem Befehl
git apply <path to the downloaded patch file>
an. Beispiel:git apply C:\Users\someuser\Downloads\UnrealBuiltTool-5.3.patch
Wenn dies fehlschlägt, versuchen Sie esgit apply -v --ignore-whitespace --ignore-space-change <path to the downloaded patch file>
.
Öffnen eines nativen Unreal Engine-Projekts in Visual Studio
Es gibt zwei Möglichkeiten, ein systemeigenes Unreal Engine-Projekt in Visual Studio zu öffnen:
- Datei>öffnen>Ordner, der verwendet wird, wenn nur ein Projekt (
.uproject
) im Ordner vorhanden ist. - Datei>Öffnen Sie>Unreal Engine Project, um eine bestimmte
.uproject
Datei zum Öffnen zu wählen, wenn mehrere Unreal Engine-Projektdateien in einem Ordner vorhanden sind.
In diesem Beispiel wird das Lyra-Spielprojekt verwendet, um das Öffnen eines nativen Unreal Engine-Projekts in Visual Studio zu veranschaulichen.
Öffnen Sie in Visual Studio das Menü "Datei", und wählen Sie dann "Ordner öffnen>" aus.
Navigieren Sie zu dem Verzeichnis, in dem das Lyra-Spielprojekt (
LyraStarterGame.uproject
) installiert ist, und wählen Sie "Ordner auswählen " aus.Nachdem der Ordner ausgewählt wurde, werden die Projektdateien im Projektmappen-Explorer angezeigt, und nachrichten werden im Ausgabefenster zum Einrichten des Arbeitsbereichs angezeigt.
Es wird eine Meldung angezeigt, dass die Unterstützung des Unreal Engine-Projekts aktiviert wird und dass andere Buildsysteme wie CMake und MSBUILD deaktiviert sind. Sie können diese Nachricht schließen, indem Sie in der Ecke der Nachricht auf das X klicken.
Anzeigen des Projekts im Projektmappen-Explorer
Im fenster Projektmappen-Explorer werden viele der Dateien und Ordner angezeigt, die Teil des Unreal Engine-Projekts sind, z. B. das Platforms
, Plugins
und Source
die Ordner. Sie können auch die Unreal Engine-Datei .uproject
sehen. Der Ordner "Engine" enthält das Quellenverzeichnis für das Unreal Engine.The Engine folder contains the sources directory for Unreal Engine.
Die Projektmappen-Explorer wird gefiltert, um sich auf den Quellcode zu konzentrieren. Standardmäßig werden die Content
Ordner herausgefiltert, die binäre Objekte wie Texturen, Modelle usw. enthalten. Sie können diese Ressourcen im Unreal Engine Editor öffnen. Im Allgemeinen werden Binärdateien nicht im Visual Studio-Projektmappen-Explorer angezeigt.
Sie müssen das Projekt nicht neu generieren, um neue Ressourcen anzuzeigen oder zu bearbeiten, die außerhalb von Visual Studio hinzugefügt wurden.
Konfigurationsseite des Unreal Engine
Visual Studio stellt eine Projektkonfigurationsseite des Unreal Engine bereit. Diese Seite zeigt den Status der Features des Unreal Engine und ermöglicht Ihnen den Zugriff auf weitere Features.
Um über das Visual Studio-Hauptmenü auf diese Seite zuzugreifen, wählen Sie "Project>Configure Tools for Unreal Engine" aus:
Die Konfigurationsseite enthält eine rot/grüne Statusanzeige und eine Aktualisierungsschaltfläche für Optionen wie Den Gesamtkonfigurationsstatus, Unreal Build Tool Status, Unreal Engine Targets, Blueprint Support, Visual Studio Integration Tool Status usw.
Unreal Build Tool Status
Um sicherzustellen, dass Sie über das neueste Unreal Build Tool (UBT) verfügen, wählen Sie das Aktualisierungssymbol für den Status des Unreal Build Tool aus.
In diesem Beispiel wird eine Meldung angezeigt, dass das Unreal Build Tool nicht die neueste verfügbare Version für den Arbeitsbereichsgenerator verwendet. Wählen Sie "Update " aus, um das Unreal Build Tool auf die neueste Version zu aktualisieren:
Im Ausgabefenster werden Meldungen angezeigt, während das Unreal Engine Build Tool bereit ist. Eine Meldung, dass der Arbeitsbereich bereit ist, wird angezeigt, nachdem Sie mit dem Hinzufügen und Bearbeiten von Dateien beginnen können.
Unreal Engine Targets
Wenn Sie ein Unreal Engine-Projekt erstellen, gibt es verschiedene Buildkonfigurationen, die als Ziele bezeichnet werden, die Sie auswählen können.
Die Option "Unreal Engine Targets " ist der Ort, an dem Sie diese Ziele generieren. Wählen Sie das Aktualisierungssymbol aus, um die Liste der Ziele des Unreal Engine zu aktualisieren, und öffnen Sie das Fenster, in dem Sie die Zielkonfigurationen auswählen können, die Sie erstellen möchten:
Weitere Informationen zu Zielkombinationen finden Sie in der Dokumentation " Build Configuration Descriptions" von Unreal Engine.
In diesem Beispiel werden LyraClient, DebugGame und Win64 in den Dropdowns ausgewählt.
- Wählen Sie "Hinzufügen" aus, um sie der Liste der zu generierenden Konfigurationen hinzuzufügen.
- Wählen Sie " Ziele generieren" aus, um die ausgewählten Konfigurationen für jede Konfiguration zu erstellen, für die das Kontrollkästchen aktiviert ist.
Nachdem die Ziele generiert wurden, können Sie sie wie unter "Buildkonfiguration auswählen" beschrieben auswählen. Achten Sie beim Generieren von Zielen auf Fehler im Ausgabefenster, da einige Kombinationen möglicherweise nicht unterstützt werden.
Sie können Ziele entfernen, indem Sie die gewünschten Ziele deaktivieren und dann die Schaltfläche "Ziele generieren" auswählen. Wenn Sie "Ziele generieren" auswählen , werden nicht ausgewählte Ziele entfernt, aber sie werden erst aus dieser Liste ausgeblendet, wenn Sie das Projekt erneut laden.
Bearbeiten von Zieleigenschaften
Klicken Sie zum Bearbeiten der Zieleigenschaften des Unreal Engine-Ziels in der Projektmappen-Explorer mit der rechten Maustaste auf die fett formatierte Zieldatei, und wählen Sie "Unreal Engine-Zieleigenschaften bearbeiten" aus.
Wenn LyraEditor.Target.cs
es sich beispielsweise um das Startziel handelt (in diesem Fall fett in der Projektmappen-Explorer), klicken Sie mit der rechten Maustaste darauf, und wählen Sie "Diese Zieleigenschaften des Unreal Engine bearbeiten" aus. Dadurch wird die UETargetProperties.json
Datei im Editor geöffnet.
Ein Menü wird angezeigt, und unten ist die Option zum Bearbeiten dieses Unreal Engine-Ziels. Wenn Sie diese Option auswählen, wird UETargetProperties.json im Editor geöffnet.
Anschließend können Sie Zieleigenschaften wie Befehlszeilenargumente ändern.
Projekteinstellungen bearbeiten
Um die Projekteinstellungen des Unreal Engine-Projekts zu bearbeiten, klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf die .uproject
Datei, und wählen Sie "Unreal Engine-Projekteinstellungen bearbeiten" aus.
Die ProjectSettings.json
Datei wird im Editor geöffnet. Sie können dann Projekteinstellungen ändern, z. B. welche Projektdateien und Moduldateien aus der Projektmappen-Explorer Ansicht ausgeschlossen werden sollen, die freigegebene Pfade enthalten, die von IntelliSense ausgeschlossen werden sollen usw. Sie können diese Einstellungen verwenden, um Dateien auszuschließen, die Sie nicht benötigen, um IntelliSense zu beschleunigen.
Ein Menü wird angezeigt, und unten ist die Option zum Bearbeiten der Unreal Engine-Projekteinstellungen. Wenn Sie diese Option auswählen, wird die Datei ".uproject" im Editor geöffnet.
Auswählen der Buildkonfiguration
Um eine Buildkonfiguration auszuwählen, wählen Sie das gewünschte Ziel aus der Dropdownliste "Konfiguration" aus:
Das Dropdownmenü für die Konfiguration enthält die Elemente: DebugGame - Win64 und Development - Win64.
Wenn das zu erstellende Ziel nicht in der Liste enthalten ist, fügen Sie es wie in Unreal Engine Targets beschrieben hinzu.
Bearbeiten und Debuggen in Visual Studio
Sie können Ihr Unreal Engine-Projekt in Visual Studio bearbeiten, erstellen und debuggen. Informationen zum Hinzufügen von Unreal Engine-Modulen, Klassen und Plug-Ins in Visual Studio finden Sie unter Hinzufügen von Unreal Engine-Klassen, -Modulen und -Plug-Ins in Visual Studio.
Sie können Haltepunkte in Ihrem Code festlegen und dann das Spiel im Unreal Engine Editor ausführen. Wenn ein Haltepunkt erreicht wird, können Sie den Code in Visual Studio debuggen.
Standardmäßig generiert Visual Studio nur ein Ziel: Entwicklung – Win64. Dieses Ziel erstellt und startet den Unreal-Editor mit geladenen Spielprojekt.
Wenn Sie den Ordner für das Lyra-Beispielprojekt in Visual Studio geöffnet haben, probieren Sie das Debuggen aus, indem Sie die folgenden Schritte ausführen:
- Öffnen Sie
LyraGameplayAbility_RangedWeapon.cpp
in Visual Studio. Suchen Sie entweder im Suchbereich der Projektmappen-Explorer nach dieser Datei, oder suchen Sie sie unter Games>LyraStarterGame>Source>LyraGame>>Weapons LyraGameplayAbility_RangedWeapon.cpp. - In
LyraGameplayAbility_RangedWeapon.cpp
, gehen Sie zu Zeile 477. Suchen Sie nach der Funktion:void ULyraGameplayAbility_RangedWeapon::OnTargetDataReadyCallback
. - Platzieren Sie einen Haltepunkt auf der Funktion, indem Sie F9 drücken.
- Führen Sie das Beispielspiel in Visual Studio aus, indem Sie Debuggen>Debuggen starten auswählen. Geben Sie dem Unreal Engine Editor etwas Zeit, um das Spiel zu laden.
- Wählen Sie im Unreal Engine Editor die Schaltfläche "Wiedergeben" auf der Symbolleiste aus (oder drücken
Alt+p
Sie), um das Spiel zu starten. - Verwenden Sie im Lyra-Spiel die Tasten
w
,a
,s
,d
, um den Spieler links zum Elimination-Portal zu bewegen. Positionieren Sie den Spieler über dem Eingangsportal, um das Spiel zu laden. - Sobald das Spiel ausgeführt wird, klicken Sie auf die Maustaste, um auszulösen, und Sie sollten den Haltepunkt in Visual Studio sehen:
Allgemeine Probleme und Lösungen
- Die Engine und der Spielcode müssen sich auf demselben Laufwerk befinden. Wenn sie nicht vorhanden sind, lesen Sie die Quell- und Modulquelle von Spielen auf unterschiedlichen Laufwerken.
- Mehrere
.uproject
Dateien im selben Ordner werden nicht unterstützt. Um eine bestimmte.uproject
Datei zu öffnen, wenn mehrere Projektdateien im selben Ordner vorhanden sind, verwenden Sie das Projekt "File>Open>Unreal Engine". - Wenn Sie ein Unreal Engine-Projekt über das Projekt "File>Open>Unreal Engine" öffnen, wird das Projekt nicht in der Liste "Zuletzt verwendete Projekte und Lösungen" von> Visual Studio angezeigt. Wenn Sie das Unreal Engine-Projekt über den Ordner "Datei>öffnen" öffnen, wird das geöffnete Unreal Engine-Projekt in der Liste der zuletzt geöffneten Projekte angezeigt.
- Einige Erweiterungen funktionieren möglicherweise nicht mit einem Projekt, das als Unreal Engine-Projekt geöffnet wurde.
- Das Eigenschaftenfenster ist für Quelldateien leer. Dies ist derzeit im entwurfsbedingt.
- Es gibt eine Visual Studio-Projektmappendatei in der Ordneransicht. Unreal Engine generiert diese Datei, wird aber nicht von Visual Studio verwendet, und Sie können sie ignorieren.
Spielquelle und Modulquelle befinden sich auf unterschiedlichen Laufwerken
Wenn sich der Quellcode und der Quellcode des Spiels auf verschiedenen Laufwerken befinden, wird beim Öffnen des Spielecodeprojekts ein Fehler angezeigt. Beispiel: Wenn sich Ihr Spiel befindet C:\Users\MyUser\MyGame
, muss sich das Unreal Engine irgendwo auf dem C:\
Laufwerk befinden. Andernfalls ist die Unterstützung des Unreal Engine-Projekts in Visual Studio nicht verfügbar:
Wir empfehlen eine der folgenden Lösungen:
Lösung Nr. 1: Verschieben der Spiel- und Modulquelle auf das gleiche Laufwerk
Die einfachste Lösung besteht darin, das Spielprojekt auf das gleiche logische Laufwerk zu verschieben, auf dem sich das Unreal Engine befindet.Windows File Explorer
Wenn Sie die Unreal Engine-Quelle verschieben, die Sie über das Epic Games Launcher
Modul installiert haben, deinstallieren Sie das Modul, und installieren Sie sie dann auf das gleiche Laufwerk wie das Spiel. Auf diese Weise spiegeln die Modulkonfigurationsdateien den neuen Speicherort wider.
Nachdem Sie über die Quellquelle und die Engine des Spiels auf demselben Laufwerk verfügen, können Sie die .uproject
Datei in Visual Studio öffnen.
Lösung Nr. 2: Erstellen einer symbolischen Verknüpfung mit der Unreal Engine und Ändern der Eigenschaft der Modulzuordnung
Wenn das Verschieben der Modulquelle und der Spielquelle auf dasselbe Laufwerk nicht möglich ist, können Sie eine symbolische Verknüpfung zur Quelle des Unreal Engine erstellen und die EngineAssociation
Eigenschaft in der .uproject
Datei so ändern, dass sie übereinstimmen.
Gehen Sie in diesem Beispiel davon aus, dass sich die Unreal Engine befindet C:\Program Files\Epic Games\UE_5.4
und sich Ihr Spiel befindet Q:\src\game
.
- Öffnen Sie eine Eingabeaufforderung (kein PowerShell-Fenster).
- Navigieren Sie zum Laufwerk, auf dem die Spielquelle aktiviert ist. Beispiel:
cd /d Q:\
. - Erstellen Sie einen Symlink, der auf das Unreal Engine verweist. Der
mklink
Befehl verwendet einen Linkparameter, der den symbolischen Linknamen angibt, der angibt, wie der Speicherort für Ihr Verzeichnis im Dateisystem angezeigt wird. Der Zielparameter ist das, mit dem Sie eine Verknüpfung herstellen. Erstellt beispielsweise einen symbolischen Link mit dem NamenQ:\UE-Link
,mklink /d "Q:\UE-Link" "C:\Program Files\Epic Games\UE_5.4"
der auf das Verzeichnis "Unreal Engine" auf demC:
Laufwerk verweist. - Öffnen Sie die Datei Ihres Spiels
.uproject
, und ändern Sie dieEngineAssociation
Eigenschaft in den von Ihnen erstellten Symlink-Ordner. Beispiel:"EngineAssociation": "Q:\\UE-Link"
.
Jetzt können Sie die .uproject
Datei in Visual Studio öffnen, da sich die Quellquelle und die Engine auf demselben Laufwerk befinden. Der Symlink kümmert sich um die Umleitung von Dateiverweisen auf das Modul.
Lösung Nr. 3: Erstellen einer symbolischen Verknüpfung mit unreal Engine und Ändern von Konfigurationsdateien
Diese Lösung ist zerbrechlich, da sie eine Konfigurationsdatei ändert und die Änderung möglicherweise beim nächsten Aktualisieren des Unreal Engine wiederhergestellt wird.
Gehen Sie in diesem Beispiel davon aus, dass sich die Unreal Engine befindet C:\Program Files\Epic Games\UE_5.4
und sich Ihr Spiel befindet. Q:\src\Game
- Öffnen Sie eine Eingabeaufforderung (kein PowerShell-Fenster).
- Navigieren Sie zum Laufwerk, auf dem die Spielquelle aktiviert ist. Beispiel:
cd /d Q:\
. - Erstellen Sie einen Symlink, der auf das Unreal Engine verweist. Der
mklink
Befehl verwendet einen Linkparameter, der den symbolischen Linknamen angibt, der angibt, wie der Speicherort für Ihr Verzeichnis im Dateisystem angezeigt wird. Der Zielparameter ist das, mit dem Sie eine Verknüpfung herstellen. Erstellt beispielsweise einen symbolischen Link mit dem NamenQ:\UE-Link
,mklink /d "Q:\UE-Link" "C:\Program Files\Epic Games\UE_5.4"
der auf das Verzeichnis "Unreal Engine" auf demC:
Laufwerk verweist. - Öffnen Sie
C:\ProgramData\Epic\UnrealEngineLauncher\LauncherInstalled.dat
in einem Editor. - Ersetzen Sie den Wert für
InstallLocation
den von Ihnen erstellten Symlinkpfad. Dieses Beispiel ist für UE 5.4 auf demC:
Laufwerk installiert, und der Symlink befindet sich auf demQ:
Laufwerk.
Vorher:
{
"InstallationList": [
{
"InstallLocation": "C:\\Program Files\\Epic Games\\UE_5.3",
...
"AppName": "UE_5.4"
},
}
Nachher:
{
"InstallationList": [
{
"InstallLocation": "Q:\\UE-Link",
...
"AppName": "UE_5.4"
},
}
Jetzt können Sie die .uproject
Datei in Visual Studio öffnen, da sich die Quellquelle und die Engine auf demselben Laufwerk befinden. Der Symlink kümmert sich um die Umleitung von Dateiverweisen auf das Modul.
Zugehöriger Inhalt
Visual Studio-Tools für Unreal Engine
Hinzufügen von Unreal Engine-Klassen, -Modulen und -Plug-Ins in Visual Studio
Schnellstart: Visual Studio-Tools für Unreal Engine
Anzeigen von Unreal Engine-Blaupausen in Visual Studio
Anzeigen der Unreal Engine-Protokollierung in Visual Studio
Anzeigen von Unreal Engine-Makros in Visual Studio