Erstellen und Einrichten einer Unreal-Umgebung#
Diese Seite enthält die vollständige Anleitung von Anfang bis Ende zur Einrichtung einer Unreal-Umgebung mit AirSim. Der Unreal Marketplace bietet mehrere Umgebungen, die Sie in nur wenigen Minuten nutzen können. Es ist auch möglich, Umgebungen von Websites wie turbosquid.com oder cgitrader.com mit etwas mehr Aufwand zu verwenden (hier ist ein Tutorial-Video). Außerdem gibt es mehrere kostenlose Umgebungen.
Unten verwenden wir eine kostenlos herunterladbare Umgebung vom Unreal Marketplace namens Landscape Mountain, aber die Schritte sind für jede andere Umgebung gleich.
Hinweis für Linux-Benutzer#
Es gibt keinen Epic Games Launcher für Linux, was bedeutet, dass Sie eine Windows-Maschine benötigen, um eine benutzerdefinierte Umgebung zu erstellen. Sobald Sie den Unreal-Projektordner haben, kopieren Sie ihn einfach auf Ihre Linux-Maschine.
Schritt-für-Schritt-Anleitung#
- Stellen Sie sicher, dass AirSim kompiliert ist und Unreal 4.27 installiert ist, wie in den Build-Anweisungen beschrieben.
-
Klicken Sie im
Epic Games Launcherauf den Tab "Learn", scrollen Sie nach unten und suchen SieLandscape Mountains. Klicken Sie aufCreate Projectund laden Sie diesen Inhalt herunter (~2 GB Download).
-
Öffnen Sie
LandscapeMountains.uproject. Dies sollte den Unreal Editor starten.
Hinweis
Das Landscape Mountains Projekt wird bis zur Unreal Engine Version 4.24 unterstützt. Wenn Sie 4.24 nicht installiert haben, sollten Sie einen Dialog mit dem Titel
Select Unreal Engine Versionsehen, mit einem Dropdown-Menü zur Auswahl aus den installierten Versionen. Wählen Sie 4.27 oder höher, um das Projekt auf eine unterstützte Engine-Version zu migrieren. Wenn Sie 4.24 installiert haben, können Sie das Projekt manuell migrieren, indem Sie zum entsprechenden .uproject-Datei im Windows Explorer navigieren, mit der rechten Maustaste darauf klicken und die OptionSwitch Unreal Engine version...auswählen. -
Wählen Sie im
File-Menüdie OptionNew C++ class, lassen Sie den StandardwertNonefür den Klassentyp, klicken Sie aufNext, lassen Sie den StandardnamenMyClassund klicken Sie aufCreate Class. Wir müssen dies tun, da Unreal mindestens eine Quelldatei im Projekt benötigt. Dies sollte eine Kompilierung auslösen und die Visual Studio-LösungLandscapeMountains.slnöffnen. -
Gehen Sie zu Ihrem Ordner für das AirSim-Repository und kopieren Sie den Ordner
Unreal\Pluginsin IhrenLandscapeMountains-Ordner. Auf diese Weise hat Ihr eigenes Unreal-Projekt nun das AirSim-Plugin.Hinweis
Wenn die AirSim-Installation neu ist, d.h. noch nicht zuvor kompiliert wurde, stellen Sie sicher, dass Sie
build.cmdvom Stammverzeichnis ausführen, bevor Sie den OrdnerUnreal\Pluginskopieren, damit auch dieAirLib-Dateien enthalten sind. Wenn Sie einige Änderungen in der Blocks-Umgebung vorgenommen haben, stellen Sie sicher, dass Sieupdate_to_git.batausUnreal\Environments\Blocksausführen, um die Dateien inUnreal\Pluginszu aktualisieren. -
Bearbeiten Sie die Datei
LandscapeMountains.uproject, sodass sie wie folgt aussieht{ "FileVersion": 3, "EngineAssociation": "4.27", "Category": "Samples", "Description": "", "Modules": [ { "Name": "LandscapeMountains", "Type": "Runtime", "LoadingPhase": "Default", "AdditionalDependencies": [ "AirSim" ] } ], "TargetPlatforms": [ "MacNoEditor", "WindowsNoEditor" ], "Plugins": [ { "Name": "AirSim", "Enabled": true } ] } -
Bearbeiten Sie die Datei
Config\DefaultGame.ini, um die folgende Zeile am Ende hinzuzufügen+MapsToCook=(FilePath="/AirSim/AirSimAssets")Dadurch wird Unreal gezwungen, alle notwendigen AirSim-Inhalte in verpackten Builds Ihres Projekts einzuschließen.
-
Schließen Sie Visual Studio und den
Unreal Editorund klicken Sie mit der rechten Maustaste auf die Datei LandscapeMountains.uproject im Windows Explorer und wählen SieGenerate Visual Studio Project Files. Dieser Schritt erkennt alle Plugins und Quelldateien in Ihrem Unreal-Projekt und generiert eine.sln-Datei für Visual Studio.
Tipp
Wenn die Option
Generate Visual Studio Project Filesfehlt, müssen Sie möglicherweise Ihren Computer neu starten, damit die Unreal Shell-Erweiterungen wirksam werden. Wenn sie immer noch fehlt, öffnen Sie LandscapeMountains.uproject im Unreal Editor und wählen SieRefresh Visual Studio Projectaus demFile-Menü. -
Öffnen Sie
LandscapeMountains.slnerneut in Visual Studio und stellen Sie sicher, dass die Build-Konfiguration "DebugGame Editor" und "Win64" die aktive Build-Konfiguration ist.
-
Drücken Sie
F5, um auszuführen. Dadurch wird der Unreal Editor gestartet. Der Unreal Editor ermöglicht es Ihnen, die Umgebung, Assets und andere spielbezogene Einstellungen zu bearbeiten. Das Erste, was Sie in Ihrer Umgebung tun möchten, ist, einPlayerStart-Objekt einzurichten. In der Landscape Mountains-Umgebung existiert dasPlayerStart-Objekt bereits und Sie finden es imWorld Outliner. Stellen Sie sicher, dass seine Position wie gezeigt eingerichtet ist. Hier wird das AirSim-Plugin das Fahrzeug erstellen und platzieren. Wenn es zu hoch ist, fällt das Fahrzeug herunter, sobald Sie auf Play drücken, was potenziell zu zufälligen Ergebnissen führt.
-
Unter
Window/World Settings, wie unten gezeigt, setzen Sie denGameMode OverrideaufAirSimGameMode
-
Gehen Sie im Unreal Editor zu 'Edit->Editor Preferences' und tippen Sie im Suchfeld 'CPU' ein. Stellen Sie sicher, dass 'Use Less CPU when in Background' deaktiviert ist. Wenn Sie dies nicht tun, wird UE dramatisch verlangsamt, wenn das UE-Fenster den Fokus verliert.
-
Stellen Sie sicher, dass Sie diese Bearbeitungen
speichern. Drücken Sie den Play-Button im Unreal Editor. Sehen Sie wie man AirSim benutzt.
Herzlichen Glückwunsch! Sie führen nun AirSim in Ihrer eigenen Unreal-Umgebung aus.
Wahl Ihres Fahrzeugs: Auto oder Multirotor#
Standardmäßig fragt AirSim den Benutzer, welches Fahrzeug verwendet werden soll. Sie können dies einfach ändern, indem Sie SimMode einstellen. Bitte beachten Sie die Anleitung zur Verwendung des Autos.
Aktualisieren Ihrer Umgebung auf die neueste Version von AirSim#
Sobald Sie Ihre Umgebung gemäß den obigen Anweisungen eingerichtet haben, sollten Sie Ihren lokalen AirSim-Code häufig auf die neueste Version von GitHub aktualisieren. Unten finden Sie die Anweisungen dazu.
- Fügen Sie zuerst clean.bat (oder clean.sh für Linux-Benutzer) in den Stammordner Ihrer Umgebung ein. Führen Sie diese Datei aus, um alle Zwischen-Dateien in Ihrem Unreal-Projekt zu bereinigen.
- Führen Sie
git pullin Ihrem AirSim-Repository aus, gefolgt vonbuild.cmd(oder./build.shfür Linux-Benutzer). - Ersetzen Sie den Ordner [your project]/Plugins durch den Ordner AirSim/Unreal/Plugins.
- Klicken Sie mit der rechten Maustaste auf Ihre .uproject-Datei und wählen Sie die Option "Generate Visual Studio project files". Dies ist für Linux nicht erforderlich.
FAQ#
Welche anderen coolen Umgebungen gibt es?#
Der Unreal Marketplace bietet Dutzende von vorgefertigten, außerordentlich detaillierten Umgebungen, von Mond bis Mars und allem dazwischen. Die, die wir zum Testen verwendet haben, heißt Modular Neighborhood Pack, aber Sie können jede Umgebung verwenden. Eine weitere kostenlose Umgebung ist die Infinity Blade-Serie. Alternativ finden Sie im Tab "Learn" im Epic Game Launcher viele kostenlose Beispiele, die Sie verwenden können. Eines unserer Lieblingsbeispiele ist "A Boy and His Kite", eine 100 Quadratmeilen große, hochdetaillierte Umgebung (Vorsicht: Sie benötigen einen *sehr* leistungsstarken PC, um sie auszuführen!).
Wenn ich auf den Play-Button klicke, startet stattdessen ein Video anstelle meines Fahrzeugs.#
Wenn die Umgebung einen MatineeActor enthält, löschen Sie ihn, um Start-Demo-Sequenzen zu vermeiden. Es kann auch andere Möglichkeiten geben, ihn zu entfernen, z. B. indem Sie auf die Schaltfläche Blueprints klicken, dann auf Level Blueprint und im Event Graph nach dem Begin Play-Ereignis suchen. Möglicherweise möchten Sie Verbindungen trennen, die "matinee" starten.
Gibt es eine einfache Möglichkeit, den Code in meinem Unreal-Projekt mit dem Code im AirSim-Repository zu synchronisieren?#
Klar, gibt es! Sie finden eine Reihe von .bat-Dateien (für Linux .sh) in AirSim\Unreal\Environments\Blocks. Kopieren Sie sie einfach in Ihr eigenes Unreal-Projekt. Die meisten davon sind ziemlich einfach und selbsterklärend.
Ich erhalte eine Fehlermeldung bezüglich der Karte.#
Möglicherweise müssen Sie die Standardkarte für Ihr Projekt festlegen. Wenn Sie beispielsweise den Modular Neighborhood Pack verwenden, setzen Sie die Editor Starter Map sowie die Game Default Map auf Demo_Map in Project Settings > Maps & Modes.
Ich sehe die Option "Zum Projekt hinzufügen" für die Umgebung, aber nicht die Option "Projekt erstellen".#
Erstellen Sie in diesem Fall ein neues leeres C++-Projekt ohne Starter-Inhalt und fügen Sie Ihre Umgebung hinzu.
Ich habe bereits mein eigenes Unreal-Projekt. Wie verwende ich AirSim damit?#
Kopieren Sie den Ordner Unreal\Plugins aus dem Build, den Sie im obigen Abschnitt erstellt haben, in das Stammverzeichnis Ihres Unreal-Projekts. Fügen Sie in der .uproject-Datei Ihres Unreal-Projekts den Schlüssel AdditionalDependencies zum "Modules"-Objekt hinzu, wie wir es oben in LandscapeMountains.uproject gezeigt haben.
"AdditionalDependencies": [
"AirSim"
]
und den Plugins-Abschnitt zum Top-Level-Objekt
"Plugins": [
{
"Name": "AirSim",
"Enabled": true
}
]