Kurz gesagt
- Das Navigation System erzeugt aus der Kollisionsgeometrie des Levels ein Navigation Mesh und unterteilt es in Polygone, die zur Routenfindung dienen.
- Es gibt drei Modi zur Netzerzeugung: Static, Dynamic und Dynamic Modifiers Only.
- Die den Polygonen zugewiesenen Kosten beeinflussen, welche Routen Agenten auf dem Weg zum Ziel bevorzugen.
- RVO und Detour Crowd Manager helfen Agenten dabei, beweglichen Hindernissen und anderen Agenten auszuweichen.
In der offiziellen Dokumentation von Unreal Engine wird das Navigation System als System beschrieben, mit dem KI-Agenten ihren Weg durch ein Level finden. Für Teams, die Architekturpräsentationen, interaktive Innenraumerlebnisse oder Echtzeit-Visualisierungen erstellen, geht es im Kern darum, den Bewegungsbereich der Agenten festzulegen und zu bestimmen, wie die Route zum Ziel ausgewählt wird. Da die Dokumentation keine bestimmte Unreal-Engine-Version nennt, behandelt dieser Leitfaden allgemeine Konzepte, die nicht an eine Versionsnummer gebunden sind.
1. Zunächst verstehen, wie das Routennetz funktioniert
Das Navigation System erstellt anhand der Kollisionsgeometrie im Level ein Navigation Mesh, also ein Navigationsnetz. Dieses wird in Kacheln unterteilt, die wiederum aus Polygonen bestehen, über die Agenten ihre Routen suchen können. Das System wertet die Polygone als Graph aus und sucht unter Berücksichtigung der jedem Polygon zugewiesenen Kosten nach der Route mit den niedrigsten Gesamtkosten.
Eine Route besteht daher nicht nur aus der geometrischen Entfernung zwischen zwei Punkten. Die Kosten eines Bereichs beeinflussen, ob ein Agent diesen bevorzugt. Sollen Besucher-Agenten in einer Präsentationsszene beispielsweise einer bestimmten Strecke folgen, lässt sich mit der Kostenlogik beeinflussen, wie die Route ausgewählt wird. Die Dokumentation nennt jedoch weder konkrete Kostenwerte noch feste Empfehlungen dafür, welche Werte sich für ein bestimmtes Projekt eignen. Sie sollten daher anhand des jeweiligen Einsatzzwecks gewählt werden.
2. Den Modus zur Erzeugung des Navigation Mesh auswählen
Die Dokumentation führt drei Modi zur Netzerzeugung auf: Static, Dynamic und Dynamic Modifiers Only. Diese Modi bestimmen, wie das Projekt das Navigation Mesh erzeugt und welche Optionen zur Verfügung stehen. Die Quellen erläutern weder das genaue Verhalten der einzelnen Modi noch, welcher davon sich für welchen Szenentyp eignet. Prüfen Sie bei der Auswahl deshalb den Bedarf Ihres Projekts an der Netzerzeugung sowie die offizielle ausführliche Dokumentation zum jeweiligen Modus.
Ein grundlegender Workflow kann so aussehen:
Legen Sie fest, welche Bereiche Agenten nutzen sollen. Da das Routennetz anhand der Kollisionsgeometrie des Levels erzeugt wird, sollten Sie prüfen, wie die begehbaren Bereiche mit der Szenengeometrie zusammenhängen. Gehen Sie nicht davon aus, dass jede Oberfläche, die optisch begehbar wirkt, automatisch als geeigneter Navigationsbereich behandelt wird.
Wählen Sie den Ansatz zur Erzeugung des Navigation Mesh. Prüfen Sie je nach Projektanforderung die Optionen Static, Dynamic oder Dynamic Modifiers Only. Leiten Sie das genaue Verhalten nicht allein aus den Namen der Modi ab, sondern ziehen Sie die offiziellen Beschreibungen heran.
Prüfen Sie die Abdeckung des Netzes. Da das Netz in Kacheln und Polygone unterteilt ist, sollten Sie kontrollieren, ob die Bereiche, in denen Agenten ihre Ziele erreichen sollen, im Routennetz abgebildet sind.
Bewerten Sie Routenkosten und Übergänge. Bedenken Sie, dass die Polygonkosten die Routenwahl beeinflussen. Auch nicht direkt aneinandergrenzende Bereiche wie Plattformen oder Brücken lassen sich im Navigation Mesh verbinden.
Berücksichtigen Sie bewegliche Hindernisse gesondert. Müssen Agenten während der Bewegung dynamischen Hindernissen und anderen Agenten ausweichen, prüfen Sie die Verfahren RVO oder Detour Crowd Manager.
3. Charakter mit Bewegungs- und Animationskomponenten einrichten
In der Unreal-Engine-Dokumentation wird Character als eine um bestimmte Komponenten erweiterte Variante der Klasse Pawn beschrieben. Character enthält CharacterMovementComponent, CapsuleComponent und SkeletalMeshComponent. Diese Unterscheidung ist wichtig, wenn Sie eine bewegliche Figur für eine Visualisierung erstellen: Die Routenfindung sollte nicht losgelöst von der Bewegungs- und Kollisionsdarstellung des Charakters in der Szene betrachtet werden.
CharacterMovementComponent unterstützt Bewegungsarten wie Gehen, Laufen, Springen, Fliegen, Fallen und Schwimmen. Laut Dokumentation enthält die Komponente Eigenschaften zu Geh- und Fallreibung, Bewegungsgeschwindigkeiten zu Lande, in der Luft und im Wasser, Auftrieb, Gravitationsskala sowie den Kräften, die der Charakter auf Physikobjekte ausüben kann. Diese Werte müssen nicht in jeder Szene angepasst werden. Entscheidend ist, dass die Charakterbewegung zum Design des Erlebnisses passt.
Die CapsuleComponent dient der Bewegungskollision. Dass CharacterMovementComponent komplexe Bewegungsgeometrie berechnen kann, setzt voraus, dass die Kollisionskomponente der Klasse Character eine vertikal ausgerichtete Kapsel ist. Das sichtbare Modell und die Kollisionsdarstellung eines Charakters können sich daher unterscheiden. Bei Problemen mit Route oder Bewegung reicht es möglicherweise nicht, nur auf das Aussehen der SkeletalMeshComponent zu schauen.
Die SkeletalMeshComponent stellt das Haupt-Skelettmesh für komplexe skelettbasierte Animationen dar. Von Character abgeleitete Klassen können weitere Skeletal-Mesh-Komponenten enthalten. Die Bewegung und Animation des Hauptcharakterskeletts werden jedoch über diese Komponente betrachtet.
4. Worauf es bei Architektur- und Archviz-Workflows ankommt
In einem interaktiven Architektur-Erlebnis kann das Navigation System hilfreich sein, wenn Besucher-Agenten in einem Innenraum oder einer gestalteten Außenanlage zu einem Ziel geführt werden sollen. Der erste Prüfpunkt ist dabei, ob das Routennetz mit der tatsächlichen Szenengeometrie und der Kollisionsdarstellung übereinstimmt. Erreicht ein Agent ein Ziel nicht, muss das Problem nicht allein am Routenalgorithmus liegen. Prüfen Sie gemeinsam, ob das Netz den betreffenden Bereich abdeckt und wie die Bewegungskomponenten des Charakters konfiguriert sind.
Epic verweist außerdem auf separate Themen wie das Modifizieren des Navigation Mesh, benutzerdefinierte Navigationsbereiche und Abfragefilter, Navigation Invokers, die Optimierung der Generierungsgeschwindigkeit, die gemeinsame Verwendung verschiedener Netzauflösungen sowie den Einsatz des Netzes mit World Partition. Diese Themen können in späteren Phasen relevant werden. Da die vorliegende Quellenübersicht jedoch keine detaillierten Einstellungen zu diesen Funktionen enthält, wäre es nicht sinnvoll, eine bestimmte Konfiguration oder konkrete Werte zu empfehlen. Auch das automatische Erstellen von Verbindungen zwischen Netzen und das Erweitern der Routenfindung durch Navigation Components werden in der offiziellen Dokumentation als separate Leitfäden aufgeführt.
Häufige Fehler
Aus dem optischen Eindruck, dass ein Modell begehbar ist, zu schließen, dass das Navigation Mesh den Bereich abdeckt.
Den Einfluss der Polygonkosten auf die Routenwahl zu übersehen.
Die Vermeidung beweglicher Hindernisse und anderer Agenten als etwas zu behandeln, das sich allein mit dem grundlegenden Routennetz lösen lässt.
Nicht dokumentierte Verhaltensweisen der Modi, Standardwerte oder Menüpfade zu erraten und danach vorzugehen.
Wenn Sie beim ersten Test Netz, Ziele und Charakterbewegung getrennt untersuchen, lässt sich leichter erkennen, auf welcher Ebene ein Problem auftritt. Das Beispielprojekt zum Navigation System von Epic enthält Beispiel-Levels zu verschiedenen Leitfäden und kann zum Vergleich mit dem grundlegenden Workflow herangezogen werden.
Quellen
2 QuellenQuelltexte werden nicht neu veröffentlicht; kurze Zitate sind gekennzeichnet, der Rest ist eigene Zusammenfassung und Einordnung.
Für Architektur- und Visualisierungsbüros in der Türkei bietet das Navigation System eine nützliche Grundlage, wenn Besucher in interaktiven Präsentationen durch eine Szene geführt werden sollen. Am praktikabelsten ist es, zunächst eine einfache Route und Charakterbewegung einzurichten und dann die Netzabdeckung sowie die Auswirkungen der Polygonkosten zu beobachten.
Die vorliegende Dokumentation macht keine Angaben zu konkreten Hardwareanforderungen, Lizenzbedingungen oder numerischen Einstellungen. Dazu sollten keine Annahmen getroffen werden. Ob Teams Zeit sparen, hängt davon ab, ob sie Probleme getrennt in den Bereichen Routennetz, Kollision und Charakterbewegung untersuchen. Wer einen Modus zur Netzerzeugung oder fortgeschrittene Navigationsfunktionen auswählt, sollte die ausführlichen offiziellen Leitfäden heranziehen, um falsche Annahmen frühzeitig zu vermeiden.
Häufige Fragen
Wie funktioniert das Unreal Engine Navigation System?
Das System erzeugt aus der Kollisionsgeometrie des Levels ein Navigation Mesh. Es unterteilt das Netz in Kacheln und Polygone; Agenten suchen unter Berücksichtigung der Polygonkosten nach einer Route.
Welche Modi zur Erzeugung des Navigation Mesh gibt es in Unreal Engine?
Die offizielle Dokumentation führt drei Modi auf: Static, Dynamic und Dynamic Modifiers Only. Die allgemeine Beschreibung in der Dokumentation erläutert das genaue Verhalten der einzelnen Modi nicht.
Auf welchen Komponenten basiert die Charakterbewegung in Unreal Engine?
Character enthält CharacterMovementComponent, CapsuleComponent und SkeletalMeshComponent. Diese Komponenten sind für Bewegung, Bewegungskollision und skelettbasierte Animationen zuständig.



