Native First-Person-Rendering unterstützt Funktionalitäten, die häufig bei der Erstellung von Erlebnissen mit einer First-Person-Kamera-Perspektive erforderlich sind, z. B. die Möglichkeit, nur bestimmte Objekte mit einem Sichtfeld zu rendern, das sich von dem unterscheidet, mit dem der Rest der Szene gerendert wird. Beispielsweise eignet sich das Rendern von Elementen wie den Händen und Armen der Figur oder Waffen ideal für das Rendering aus der First-Person-Perspektive, damit sie nicht mit Wänden kollidieren (in diese hineinragen), wenn man sich ihnen nähert.
Das First-Person Rendering bietet die folgenden Funktionen:
Rendern Sie First-Person-Primitive mit einem benutzerdefinierten Sichtfeld (FOV)
Wenden Sie einen Skalierungsfaktor auf First-Person-Primitive an, um sie effektiv näher an die Kamera heranzuziehen. Dadurch lassen sich in den meisten Fällen Überschneidungen der First-Person-Geometrie mit der Szene vermeiden, die oft als Clipping bezeichnet werden. Dies ermöglicht es First-Person-Primitiven, immer von oben auf der Szene gerendert zu werden.
Enthält eine vollständige Beschattungslösung, bei der die Geometrie der ersten Person Szenenschatten empfängt, selbst Schatten wirft und die Spieler ihren eigenen Schatten sehen können, der auf die Szene geworfen wird.
Verfügt über eine Integration mit Hardware-Raytracing (HWRT), wodurch Spieler sich selbst in der Szene reflektiert sehen und ray-traced Schatten werfen können.
Integration mit Materialien:
Pro-Scheitelpunkt-Steuerung des First-Person-Effekts. Dieser optionale Output ermöglicht die Interpolation zwischen dem Welt-Bereich und dem sogenannten First-Person-Raum. Dies ist nützlich, wenn bestimmte Teile der Geometrie im Welt-Bereich liegen müssen, um eine Verbindung zur Welt herzustellen, beispielsweise wenn die Füße der Charakter auf dem Boden stehen sollen.
Verwenden Sie das Materialdiagramm, um die Rendering-Parameter für die First-Person-Perspektive abzufragen und beliebige Positionen aus dem Welt-Bereich in den First-Person-Raum zu transformieren.
Sie funktioniert bei den meisten Grundkörpern. Dazu zählen statisches Meshs, geskinntes Meshs und Niagara Partikeleffekte.
Implementierung von First-Person-Rendering
Bei der Entwicklung von First-Person-Spielen möchte man in der Regel, dass die Spielerkamera die First-Person-Geometrie so rendert, dass sie ein benutzerdefiniertes Sichtfeld hat und sich nicht mit der Welt überschneidet. Die Implementierung des First-Person-Renderings in der Unreal Engine kann als eine Art Morphing der First-Person-Geometrie betrachtet werden, das den gewünschten Effekt eines benutzerdefinierten Sichtfelds erzielt und ein Anti-Clipping-Verhalten aufweist. Dieses Morphing erfolgt nach der Anwendung des Welt-Positionsversatz, aber bevor der Scheitelpunkt in den Clip-Raum projiziert wird.
Folglich existiert die Geometrie technisch gesehen im Welt-Bereich, sieht aber größtenteils so aus, als wäre sie mit einer anderen Projektionsmatrix gerendert worden. Der Vorbehalt hierbei ist, dass die Geometrie nun sehr klein und leicht verzerrt ist. Das wurde getan, damit es aus der Perspektive der Kamera gut aussieht, aber es ist für andere Perspektiven ungeeignet und sollte daher keine Schatten auf die Szene werfen oder in Hardware-Ray Tracing-Reflexionen sichtbar sein – was durch das Design verhindert wird.
Der Vorteil dieser Art der Implementierung von First-Person-Rendering besteht darin, dass First-Person-Primitive im selben Durchgang wie andere Primitive gerendert werden können, wodurch zusätzliche Rendering-Durchgänge, die sich auf den Speicher und die Performance auswirken würden, überflüssig werden und die Komplexität vermieden wird.
Einstellungen für First-Person-Grundkörper
Komponenten verfügen über eine Einstellung, mit der festgelegt werden kann, wie sie von der First-Person-Kamera gerendert werden, wenn ihr First-Person primitiver Typ auf First-Person oder Welt-Bereich-Repräsentation festgelegt ist.
Diese Einstellung umfasst die folgende Auswahl:
Keine: Dieser Grundkörper interagiert nicht mit First-Person-Rendering.
First Person: Dieser Grundkörper wird als First-Person gerendert und wird von den First-Person-Eigenschaften auf der Kamera für First-Person-Sichtfeld und First-Person-Maßstab beeinflusst. Diese werden verwendet, um die Komponente mit verschiedenen Sichtfeldern und kleinerem Tiefenbereich zu Rendern, sodass Clipping mit der Szene vermieden werden kann. Der Grundkörper wirft keine Schatten auf die Szene und ist auch nicht in der Raytracing-Welt sichtbar.
Welt-Bereich-Darstellung: Dieser Grundkörper stellt einen First-Person-Grundkörper im Welt-Bereich dar. Dies ist der Grundkörper, den andere Spieler sehen und der verwendet wird, um Schatten auf den Boden zu werfen und für Reflexionen mit Hardware-Ray Tracing, neben anderen Dingen. Sie ist für die besitzende First-Person-Kamera unsichtbar. Dadurch wird hinter den Kulissen implizit „Cast Hidden Shadow“ auf False und „Owner No See“ auf True festgelegt, was erforderlich ist, damit First-Person-Schatten mit Virtuelle Shadow-Maps korrekt funktionieren.
First Person Schatten
Es gibt zwei Überlegungen zur Beschattung, die Sie berücksichtigen müssen, wenn Sie einen Spieler-Charakter mit First-Person-Rendering einrichten:
Aktivieren Sie „Lichter Schatten werfen“, damit Grundkörper, die auf „First Person“ eingestellt sind, Schatten auf sich selbst werfen können.
Einrichtung von Komponenten, die Welt-Bereich-Repräsentation der First-Person-Grundkörpern für Szenenschatten und Reflexionen sind.
First-Person-Eigenschatten
First-Person-Eigenschatten ist eine spezialisierte Beschattungs-Lösung für Grundkörper, die in der First-Person-Perspektive gerendert werden. Dadurch können diese First-Person-Grundkörper Schatten auf sich selbst werfen, beispielsweise eine Waffe, die einen Schatten auf sich selbst und den Arm des Spielers wirft, jedoch nicht auf die Umgebung. Dadurch wird verhindert, dass die Geometrie, die zur Perspektive der First-Person-Kamera verzerrt und verschoben wird, in den Schatten der Szene sichtbar ist.
Aktuell wird First-Person Self-Beschattung mit Bildschirm-Raum-Tracing implementiert. Diese Methode ist zwar relativ kostengünstig, beschränkt sich jedoch ausschließlich auf Schattenwerfer auf dem Bildschirm. Bei den meisten First-Person-Einrichtungen ist dies in der Praxis kein Problem, da alle relevanten Schatten-Caster in der Regel auf dem Bildschirm zu sehen sind. Beachten Sie, dass auch für das First-Person-Rendering andere typische Einschränkungen des Bildschirm-Raum-Renderings gelten, wie beispielsweise ein einlagiger Tiefen-Buffer (Strahlen können hinter die Geometrie gelangen).
Nachfolgend finden Sie Beispiele mit einer gerichteten Lichtquelle, bei der „First Person Eigenschatten“ aktiviert ist.
First-Person Eigenschatten wird derzeit (seit 5.6) über Konsolenvariablen gesteuert. Dies wurde getan, um die Steuerung des Effekts in Karten mit vielen Lichtern zu vereinfachen. Der Effekt beeinträchtigt die Performance nur dann, wenn das Licht die Geometrie der First Person überlagert, sodass man davon ausgehen kann, dass es kaum bis gar keine überlappenden Lichter gibt, kann man ihn für alle lokalen Lichter aktivieren. Diese Methode zur Steuerung der Funktion kann sich jedoch in Zukunft ändern. Um First-Person-Eigenschatten einzurichten, gehen Sie wie folgt vor:
Legen Sie
r.FirstPerson.SelfShadowauf1fest. Dadurch wird die Funktion für Schatten werfende Lichter (Dynamische Schatten werfen) aktiviert, die durch die folgende Konsolenvariable festgelegt wird:Legen Sie
r.FirstPerson.SelfShadow.LightTypesauf:0, aktiviert First Person-Eigenschatten nur für direktionale Lichter1, nur auf lokale Lichter aktivieren2, aktiviert es für alle Lichter (lokal und Direktional)
Die Aktivierung von First Person-Eigenschatten hat kleine Auswirkungen auf die Performance. Die Aktivierung vieler überlappender Lichter kann sich negativ auf die Performance auswirken. Achten Sie darauf, bei welchen Lichtquellen Sie das aktivieren. Weitere Informationen zu den Einschränkungen dieser Funktion finden Sie im nachfolgenden Abschnitt Einschränkungen.
First-Person Welt-Bereich Darstellung Schatten
Wenn Sie einen Spieler-Charakter in der First-Person-Perspektive haben, dessen Eigenschaft First Person primitiver Typ auf First-Person eingestellt hat, werden von diesen Komponenten keine Schatten auf die Szene geworfen. Ein Mesh, das von der Welt und anderen Spielern gesehen werden kann, ist erforderlich, um einen Schatten zu werfen. Außerdem muss der primitive Typ auf Welt-Bereich-Darstellung eingestellt sein. Sobald diese Einstellung vorgenommen wurde, wirft dieses Mesh Schatten auf die Szene und macht diesen Grundkörper in Hardware-Raytracing-Reflexionen sichtbar.
Einrichtung einer First-Person-Kamera
Bei der Einrichtung einer Kamera für First-Person-Rendering hängt die Komplexität vom Typ des Spiels oder der Erfahrung ab, die Sie entwickeln. Sie können der folgenden grundlegenden Einrichtung folgen, um mit einem First-Person Spieler-Charakter zu beginnen. Die erweiterten Einrichtung bieten eine Anleitung zum Einrichten der Teile Ihres Charakters, die für die Welt oder andere Spieler in einem Multiplayer-Spiel sichtbar sind.
Zum Beispiel würden Sie in einer grundlegenden Einrichtung einen Charakter einrichten, der nur Komponenten enthält, die Sie in der First-Person Perspektive sehen würden. Das kann ein Skelett-Mesh sein, das nur Arme hat, um eine Waffe zu halten. In einer fortgeschrittenen Einrichtung können Sie dies erweitern, indem Sie sichtbare Beine in der First-Person-Perspektive und ein vollständiges Charakter-Mesh hinzufügen, das für die Welt sichtbar ist, um Schatten zu werfen und in Reflexionen zu erscheinen.
Grundlegende Einrichtung einer First-Person-Kamera
Der Prozess der Erstellung einer First-Person-Kamera Einrichtung ist relativ einfach: Primitive können als First-Person-Objekte getagged werden, und Kameras können so konfiguriert werden, dass sie ein benutzerdefiniertes Sichtfeld und eine benutzerdefinierte Skalierung auf diese Assets anwenden, unabhängig vom Rest der Szenen-Rendering.
Die Schritte dazu können in zwei Kategorien unterteilt werden:
Einrichtung der Komponenten und anfängliche Einstellungen.
Konfigurieren Sie die Eigenschaften dieser Komponenten so, dass sie zum Aussehen Ihrer Primitive und Ihres First-Person-Spiels passen.
Einrichtung der Kamera und First-Person-Komponenten
Befolgen Sie diese Schritte, um die Kamera und ihre First-Person-Komponenten einzurichten:
Erstellen Sie einen neuen Kamera -Actor.
Im Details-Panel klicken Sie auf Hinzufügen und wählen Sie eine gewünschte Grundkörper-Komponente (Statisches Mesh, Skelett-Mesh, Partikel-System usw.), die Sie diesem Actor hinzufügen möchten.
Dies ist zwar nicht erforderlich, wird jedoch empfohlen, da dadurch sichergestellt wird, dass die Kamera Eigentümer der Grundkörper der First Person ist, was eine wichtige Eigenschaft für komplexere Setups ist, bei denen die Flags Owner No See und Only Owner See erforderlich sind.
Wählen Sie die Grundkörper-Komponente aus und suchen Sie im Details -Panel nach der Eigenschaft First-Person primitiver Typ unter Rendering > Erweitert Eigenschaften. Nutzen Sie die Dropdown-Liste-Auswahl, um sie auf First-Person festzulegen.
Klicken Sie im Details-Panel auf Kamera Komponente und markieren Sie das Kästchen neben First-Person-Sichtfeld aktivieren und First-Person-Maßstab aktivieren unter den Eigenschaften der Kameraoptionen.
Wenn Sie die Kamera-Komponente ausgewählt haben, können Sie die Ergebnisse im Kameravorschaufenster unten rechts im Editor-Viewport betrachten.
Konfiguration der First-Person-Sichtfeld und der Maßstab Einstellungen
Wenn Sie die Eigenschaften der Kamerakomponente für First Person-Sichtfeld aktivieren und First Person-Maßstab aktivieren aktiviert haben, können Sie die gleichnamigen Einstellungen unter der Kategorie Kameraeinstellungen verwenden, um Anpassungen vorzunehmen.
Diese Einstellungen gelten für diese Kamera für alle Primitive, deren First-Person-primitiver Typ auf First Person festgelegt ist. Andernfalls sieht die Kamera sie im Welt-Bereich. Verwenden Sie das Kamera-Vorschaufenster im Viewport, um die Änderungen zu überprüfen. Der Viewport des Editors zeigt alle First-Person-Grundkörper weiterhin unverändert an. Das liegt daran, dass die implizite Kamera, die für Viewport verwendet wird, nicht die Eigenschaften für die First-Person-Perspektive eingerichtet hat.
Sie können den Wert für das First-Person-Sichtfeld anpassen, um das horizontale Feld (in Grad) aller Grundkörper zu ändern, die diese First-Person-Kamera rendert. Wenn Sie den Sichtfeld-Schieber anpassen, können Sie beobachten, wie sich das Feld des Grundkörpers im Kamera-Vorschaufenster ändert.
Sie können den Wert First-Person-Maßstab anpassen, um „First-Person“-Grundkörper in Richtung Kamera zu verkleinern, sodass sie klein genug sind, um sich nicht mit der Szene für diese Erste-Person-Kamera zu überschneiden. Aus dem Sichtfeld der Kamera sollte der Grundkörper genau gleich aussehen, auch wenn es jetzt kleiner ist. Bei einem zu kleinen Maßstab-Wert verschwindet der Grundkörper. Das liegt daran, dass es so stark verkleinert wurde, dass es die nahe Clipping-Ebene überschneidet.
Wenn Sie den Maßstab für einen korrekten Aufbau mit Ihrer Kamera und den Grundkörpern anpassen, sollten Sie einen Maßstabwert finden, der klein genug ist, um kein Clipping mit der Szene zu verursachen, aber groß genug, um nicht aufgrund der nahen Clip-Ebene zu verschwinden. In der Praxis reicht es oft aus, die Geometrie der First-Person nur so weit zu verkleinern, dass sie innerhalb der Spielergrenzen bleibt.
Abhängig von Ihrem Inhalt und Ihrer Einrichtung kann es nötig sein, den Standardwert der nahen Clip-Ebene für den Editor anzupassen. Sie können dies in den Projekt-Einstellungen unter Engine > Allgemeine Einstellungen mit der nahen Clip-Ebene anpassen, aber dadurch wird global die Position für das gesamte Projekt angepasst.
Die erweiterte Einrichtung der First-Person-Kamera und ihrer Komponenten ähnelt der Einrichtung dieser Ansicht mit der oben grundlegenden beschriebenen Einrichtung. Wenn Sie die unten aufgeführten erweiterten Einstellung verwenden, sollten Sie berücksichtigen, wie der Charakter in der Welt eines Mehrspieler-Spiels dargestellt wird oder wie er in Spielszenen unter Verwendung von Hardware-Ray Tracing-Funktionen dargestellt wird. Dadurch wird sichergestellt, dass der Spieler von der Welt – oder anderen Spielern – um ihn herum einheitlich wahrgenommen wird. Sie beeinflusst auch, wie der Spieler seinen Charakter durch Schatten und Reflexionen sieht.
Berücksichtigen Sie Folgendes bei der Nutzung des erweitert First-Person Workflow:
Hinzufügen von Grundkörpern für die Welt-Bereich-Darstellung, um Schatten auf die Welt zu werfen.
die Füße eines Charakters in der First-Person-Perspektive und die Füße mit den Schatten verbinden, die der Spieler auf den Boden wirft.
Spieler-Reflexionen, wenn sie sich selbst mit Hardware-ray-traced Reflexionen betrachten.
Alle diese Funktionen erfordern eine geeignete Darstellung der First-Person-Grundkörper in der Welt. Diese Darstellung ist das, was andere Spieler in einem Mehrspieler-Spiel sehen würden, wenn sie diesen Spieler betrachten. Alternativ können Sie sich das auch als die Third-Person-Version des Spieler-Charakters vorstellen. In Unreal Engine heißt das First-Person Welt-Bereich Darstellung. Es wird verwendet, um Schatten auf die Szene zu werfen, und stellt die Darstellung des Spielers in der Raytracing-Szene dar.
First-Person-Geometrie
Die First-Person Geometrie sollte ein Mesh für den unteren Körperbereich und die Beine umfassen. Dieses Mesh kann entweder vollständig im Welt-Bereich liegen oder einen Gradienten in der Materialinterpolation verwenden, damit die Füße vollständig im Welt-Bereich liegen und der Rest des Körpers im First-Person-Bereich (siehe Abschnitt Integration mit Materialien weiter unten).
Allein diese Einstellung verbessert den Realismus, da die Spieler nun ihre eigenen Beine sehen können, wenn sie in der First-Person-Ansicht nach unten schauen.
Einrichtung von First-Person-Komponenten und ihrer Welt-Bereich-Darstellungen
In der Grundeinrichtung einer First-Person-Kamera ist für die Komponenten, die nur von der First-Person-Kamera gesehen werden sollen, der First-Person Grundkörper Typ auf First Person eingestellt. Für jede Geometrie, die Sie im Welt-Bereich durch Funktionen wie Hardware-Raytracing-Reflexionen oder andere Spieler in Multiplayer-Spielen sichtbar machen möchten, können Sie den Primitivtyp auf Welt Bereich-Darstellung festlegen, wodurch sichergestellt wird, dass sie Schatten auf die Welt werfen und in Raytracing-Reflexionen dargestellt werden können.
In der folgenden Szene gibt es zwei Dinge, die Sie sofort beachten sollten, wenn Sie eine Komponente auf Welt-Bereich-Darstellung einrichten:
Die Komponente ist nicht mehr für die First-Person-Kamera im Vorschaufenster sichtbar.
Die Komponente wirft einen Schatten auf die Welt.
Hinter den Kulissen nutzt diese Option zur Darstellung des Welt-Bereich die Funktionalität „Owner No See“, um die Geometrie vor der Kamera zu verbergen. Dazu müssen die Primitive jedoch der Kamera gehören, was erreicht werden kann, indem man sie zu Child-Komponenten des Kamera-Actors macht.
Sobald Sie einen Charakter mit einer First-Person-Mesh-Grundkörper und einer Welt-Darstellung-Mesh-Primitive eingerichtet haben, sollten die Füße Ihres First-Person-Meshs mit seiner Weltdarstellung übereinstimmen. Nachfolgend sehen Sie ein Beispiel für diese Einrichtung, wobei zunächst nur die Primitive der First-Person und anschließend die kombinierten Primitive der First-Person und der Weltdarstellung betrachtet werden, um Schatten auf die Szene zu werfen und diese an den Füßen Ihres Charakters „zu verbinden“.
Es wird nur die erste Person-Mesh-Grundkörper angezeigt, für die „First Person“ festgelegt ist. Dieses Mesh wirft keine Schatten auf die Szene. | Die beiden Mesh-Grundkörper, die auf First-Person und Welt eingestellt sind, werden zusammen angezeigt. Das World Representation-Mesh ist für die First-Person-Kamera unsichtbar, wirft aber Schatten auf die Welt. Diese sollten zum First-Person Grundkörper Mesh passen. |
Für die Welt oder alle anderen Spieler in einem Multiplayer-Setup sollten das Mesh und die Komponenten Ihres Charakters auf Welt-Bereich-Darstellung eingestellt sein.
Die folgende Demonstration zeigt eine „Welt“-Kamera, die auf den Charakter in der First-Person blickt, der sich auf einer spiegelartigen Oberfläche reflektiert. Sie können auch die First-Person-Kameraansicht und die Darstellung des Welt-Mesh sehen, wenn diese auf „Keine“, „First Person“ oder Welt-Bereich-Repräsentation eingestellt ist, und wie sich dies auf die Fähigkeit auswirkt, Schatten auf die Szene zu werfen oder von der First-Person-Kamera gerendert zu werden.
Integration mit Materialien
Das Materialdiagramm umfasst die folgenden Knoten, die First-Person-Rendering-Konfigurationen unterstützen:
First-Person-Output-Knoten
Der First-Person-Output-Knoten verwendet einen Alpha-Wert, um zwischen Welt-Bereich und dem First-Person Raum zu interpolieren, wobei Werte zwischen 0 und 1 pro Scheitelpunktfrequenz verwendet werden. Das ist sehr nützlich, wenn die First-Person Geometrie mit dem Rest der Szene verbunden werden muss. Ein Beispiel hierfür wäre, dass das Füße-Mesh der First-Person-Charakter-Geometrie mit dem Boden verbunden ist. Dies erreichen Sie, indem Sie entlang der Länge der Beine (die als First-Person-Grundkörper festgelegt werden) einen Gradienten von 0,0 (Welt-Bereich) bis 1,0 (First-Person-Raum) anwenden.
Alternativ können Sie auch Materi Attribute festlegen verwenden, um dieselbe Eigenschaft festzulegen, ohne den Knoten First Person Output zum Material hinzufügen zu müssen. Das ist nützlich, wenn Sie den Wert über eine Material Funktion festlegen wollen, da Material-Funktionen die Verwendung von benutzerdefinierten Output Knoten nicht erlauben.
Transformationspositionsknoten
Der Knoten Transformationsposition unterstützt die Transformation beliebiger Positionen in den First-Person-Raum. Dies ist nützlich, um zu berechnen, wo bestimmter Punkt auf dem Bildschirm landen würde, wenn er als First-Person gerendert wird.
Verwenden Sie bei ausgewähltem Knoten das Panel Details, um Folgendes festzulegen:
Quelle: Kamera relativ zu Welt-Bereich
Dies ist das Quellformat der Position, die transformiert wird.
Ziel: First Person Raum (Kamera relativ zu Welt-Bereich)
Dies ist die Art der Transformation, die auf den Input-Ausdruck angewendet werden soll.
(Optional) First Person Interpolation Alpha: 0 bis 1
Dies interpoliert zwischen dem verschobenen Welt-Bereich und dem First-Person-Raum, wobei 0 der Welt-Bereich und 1 der First-Person-Raum ist. Dieser Knoten kann in jedem Material verwendet werden, einschließlich Nachbearbeitungsmaterialien, wo er dazu dient, jede beliebige Position in die First-Person-Perspektive zu transformieren, sodass wir den Wert des First-Person-Output-Knotens nicht kennen können. Dieser Wert wird vom Benutzer entsprechend den Anforderungen seines Spiels festgelegt, in den meisten Fällen ist es jedoch sinnvoll, den Standardwert beizubehalten.
Ein Beispiel für die Verwendung dieses Knotens ist die Berechnung der Position des Fadenkreuzes in der First-Person-Perspektive für etwas wie das Nachbearbeitungsmaterial einer Waffe mit Zielfernrohr. In diesem Fall können Sie davon ausgehen, dass jede Position, die beachtet werden muss (Punkte auf der Waffe und dem Zielfernrohr), vollständig in der First-Person-Perspektive dargestellt wird.
Ist First-Person-Knoten
Der Ist First Person -Knoten kann verwendet werden, um verschiedene Effekte im Material anzuwenden, abhängig davon, ob der First-Person primitiver Typ des aktuell gerenderten Grundkörpers auf First Person gesetzt ist oder nicht.
Das folgende Materialdiagramm zeigt eine einfache Einrichtung, bei der der Knoten „IsFirstPerson“ verwendet wird, um eine Farbe für Geometrie festzulegen, die im Welt-Bereich (rot) im Gegensatz zum First-Person-Raum (grün) gerendert wird.
In der folgenden Szene können Sie sehen, wie dieses Material mit dem Ist First-Person-Knoten verwendet wird, um die Farbe des Gewehrs für seine Welt-Bereich Darstellung und die First-Person-Ansicht zu steuern. Der First-Person Gewehr Grundkörper (grün) ist in der Spielerkamera (unten rechts) sichtbar und wird mit den First-Person Parametern auf der Kamera gerendert. Das Welt-Bereich Gewehr (rot) ist für die Spielerkamera unsichtbar, wird aber benutzt, um Schatten auf den Boden zu werfen, und wird von Hardware-Raytracing-Reflexionen und Schatten in der Raytracing-Welt gesehen.
Eigenschafts-Knoten anzeigen
Der Eigenschaften anzeigen-Knoten kann verwendet werden, um das First-Person-Sichtfeld und den First-Person-Maßstab der aktuellen Anzeige abzufragen.
First-Person-Sichtfeld gibt die horizontalen und vertikalen First-Person-Sichtfeldwinkel in Radianten zurück.
First Person Maßstab gibt den Skalierungsfaktor an, der auf First-Person-Grundkörper angewendet wird, um Überschneidungen mit der Szene zu vermeiden.
Verwenden Sie bei gewähltem Knoten das Panel Details, um die Dropdown-Liste der Anzeige Eigenschaft auf die Ansicht einzurichten, die Sie abfragen möchten.
Szene-Textur-Knoten
Der Szene Textur-Knoten kann den GBuffer abfragen, um festzustellen, ob ein bestimmtes Pixel von einem First-Person-Grundkörper gezeichnet wurde, die ein undurchsichtiges Material verwendet.
Wählen Sie den Knoten aus und legen Sie im Panel Details, in der Dropdown-Liste Szene Textur ID die Szenentextur auf IsFirstPerson fest.
Weitere Informationen zu den Einschränkungen dieser Funktion finden Sie unter Einschränkungen im nachfolgenden Abschnitt.
Einschränkungen und Hinweise
Das benutzerdefinierte First-Person-Sichtfeld (FOV), die Anti-Clipping-Skalierung, die Interpolationssteuerung pro Scheitelpunkt und die meisten Funktionen zur Materialdiagrammintegration funktionieren auf allen Plattformen und in allen Konfigurationen.
First Person GBuffer Bit
Bestimmte erweitert First-Person Rendering-Funktionen erfordern, dass First-Person Pixel im GBuffer mit einem Bit markiert werden.
Die erste Konsequenz daraus ist, dass diese Funktionen nicht mit dem Mobilgerät Renderer oder dem Vorwärtsrendern funktionieren.
Die zweite Konsequenz ist, dass Statische Beleuchtung erlauben in den Projekt-Einstellungen deaktiviert werden muss. Wir deaktivieren statische Beleuchtung für das Projekt, um GBuffer Bits für die Nutzung durch First-Person Rendering freizugeben.
Das kann sich in der Zukunft ändern, aber seit 5.6 muss dieser Kompromiss eingegangen werden. Alternativ könnten sehr erfahrene Nutzer sich entscheiden, lokale Änderungen an ihrer Version der Unreal Engine vorzunehmen und stattdessen auf eine andere Funktion im GBuffer zu verzichten, die für ihr Projekt nicht benötigt wird.
Die folgenden Funktionen sind davon betroffen:
First-Person-Eigenschatten
Verwendung von Welt-Bereich Repräsentations-Grundkörpern zum Schattenwurf auf die Szene.
Welt-Bereich Darstellung Primitive sehen, die sich in der Szene widerspiegeln.
Nutzung des Szene Textur Knoten zur Bestimmung, ob ein bestimmter Pixel eine First-Person ist.
Alle diese Funktionen verfügen über einen eleganten Fallback für den Fall, dass das GBuffer-Bit der Fist Person nicht verfügbar ist: Schatten und Reflexionen werden einfach nicht angezeigt, und der Szene-Textur-Knoten gibt immer 0,0 (False) zurück.
Allgemeine Funktionsunterstützung
Ohne Virtuelle Shadow-Map (oder Ray-traced Schatten) gibt es keine Schatten aus der First-Person-Perspektive auf dem Boden.
Grooms und Strähnen-basiertes Haar werden derzeit nicht unterstützt.
Zusätzliche Ressourcen
First-Person-Vorlage
Die First-Person Vorlage ist so eingerichtet, dass sie native First-Person Rendering verwendet. Sie können die First Person Shooter-Variante ausprobieren, wenn Sie die First-Person-Vorlage erstellen, um diese Funktion in Action zu erleben.
Weitere Informationen zu dieser Vorlage finden Sie unter First-Person Vorlage.