Physik in Unreal Editor für Fortnite (UEFN) simuliert die Auswirkungen physikalischer Kräfte auf Dinge wie Kollisionen, Explosionen und die Bewegung von Objekten. Die Simulationen berechnen, wie schnell etwas beim Fallen beschleunigt oder wie ein Objekt mit einem anderen interagiert, wenn sie kollidieren.
Physik in UEFN befindet sich jetzt in der Beta. Du kannst jetzt Projekte mit Physik veröffentlichen. Beachte jedoch, dass die Werkzeuge noch häufig aktualisiert werden, was sich auf deine UEFN-Inseln auswirken kann. Schau dir die Liste bekannter Probleme in den Veröffentlichungshinweise für V.37.40 an.
Was du tun kannst
Spieler können mit Physikobjekten interagieren, indem:
Sie sich mit einem physisch basierten Spieler-Charakter hineinbewegen.
Sie sie mit einer Spitzhacke treffen oder mit einer Waffe darauf schießen. Dazu gehört auch das Werfen von Granaten.
Sie sie mit einem Objektbeweger verschieben oder drehen.
Sie Geräte nutzen.
Physikfähige Geräte
Die folgenden Geräte wurden mit Physik-Props getestet und funktionieren zuverlässig:
Aktivieren der Physik
Um diese Beta-Funktion zu aktivieren, musst du die Physik in deinen Projekt-Einstellungen aktivieren:
Öffne UEFN und wähle ein neues oder bestehendes Projekt aus.
Gehe zu Projekt > Projekt-Einstellungen.
Aktiviere unter Beta-Zugriff das Kästchen neben Physik.
Beachte, dass Physik derzeit nicht für Markenvorlagen unterstützt wird.
Physikalische Bewegung
In der Spielumgebung unterliegen Physikobjekte denselben Naturkräften, die in Newtons zweitem Bewegungsgesetz beschrieben werden: F=ma, wobei die Kraft (F) der Masse (m) mal der Beschleunigung (a) entspricht.
Kraft
Kraft erhält, verändert oder verzerrt die Bewegung eines Körpers. In Videospielen kann diese Kraft durch Waffen, andere sich bewegende Objekte, Geräte, Explosionen und mehr auf Charaktere und Objekte angewendet werden.
Masse
Die Masse ist eine Kerneigenschaft aller Materie und gibt an, wie viel Schaden ein Körper aus Materie einer Änderung seiner Geschwindigkeit oder seiner Position widersteht, wenn eine Kraft einwirkt. Je mehr Masse, desto weniger Veränderung kann eine Kraft verursachen. In einem Spiel haben Objekte mit physikalischen Eigenschaften eine festgelegte Masse. Objekte mit einer großen Masse sind schwieriger zu bewegen und legen nach der Interaktion mit einem anderen Objekt eine geringere Entfernung zurück.
Beschleunigung
Die Beschleunigung ist die Rate, mit der sich die Geschwindigkeit eines Körpers ändert, wenn er sich bewegt. Dies wird in Bezug auf Geschwindigkeit und Richtung ausgewertet. In einem Spiel kann dies die Rate sein, die ein Pinball-Bumper einem Objekt gibt, das mit ihm interagiert.
Physik zu Props hinzufügen
Alle Fortnite-Props in einem Projekt mit aktivierter Physik können so eingestellt werden, dass sie Physik simulieren. Dazu musst du dem Prop eine Physik-Komponente hinzufügen:
Klicke im Details-Panel für das Prop auf + Hinzufügen und wähle Fort Physik.
Aktiviere die Option Physik simulieren und passe die anderen Einstellungen nach deinen Wünschen an
Im Tutorial Ein Fußball-Spiel erstellen erfährst du mehr über das Importieren eines benutzerdefinierten Props und das Hinzufügen von Kollisionen.
Benutzeroptionen
Mit der Masse kannst du bestimmen, wie schwer das Prop ist. Je schwerer das Prop, desto weniger wirkt sich eine Kraft darauf aus. Im Beispiel unten hat die Kiste auf der linken Seite eine Masse von 100, während die Kiste auf der rechten Seite eine Masse von 25 hat.
Schwerkraft aktivieren bestimmt, ob für das Objekt die Schwerkraft angewendet werden soll.
Wach starten lässt dich wählen, ob das Physik-Prop beim Spielstart simuliert wird oder erst wenn ein Objekt damit in Kontakt kommt. Wenn diese Option nicht aktiviert ist, wird das Physikobjekt nicht simuliert, bis eine Kraft auf es angewendet wird. Im Beispiel unten haben alle Kisten Wach starten deaktiviert und sie fallen erst, nachdem sie getroffen wurden.
Durch lineare Dämpfung werden Objekte mit der Zeit langsamer. Im folgenden Beispiel hat der Ballon auf der linken Seite einen linearen Dämpfungswert von 0.5 , während der Ballon auf der rechten Seite auf 0.01 eingestellt ist.
Winkeldämpfung verlangsamt die Drehung von Objekten im Laufe der Zeit. Weitere Informationen zu diesem Motiv findest du unter Physics Damping in der Unreal-Engine-Dokumentation. Im folgenden Beispiel hat das linke Dreieck einen Winkeldämpfungswert von 0.6 und das rechte Dreieck ist auf 0.1 eingestellt.
Mit dem Impuls-bei-Treffer-Multiplikator kannst du die Kraft multiplizieren, die auf ein Objekt einwirkt, wenn es getroffen wird. Der Standardwert ist 1, kann aber auf einen beliebigen Wert zwischen -5 und 5 eingestellt werden. Im Beispiel unten hat der linke Fußball einen Multiplikator von 1.0 , während der rechte auf 3.0 gesetzt ist.
Soccer Ball von tinmanjuggernaut auf Sketchfab, verwendet unter der Sketchfab-Standard-Lizenz.
Beschränkungen
Du kannst deinen Props Drehungs- und Verschiebungsbeschränkungen hinzufügen, um zu verhindern, dass sie sich entlang bestimmter Achsen bewegen. Weitere Informationen zu Beschränkungen findest du in der Physical Constraint Reference in der Unreal-Engine-Dokumentation.
FAQ
Im Folgenden findest du eine Liste der Fragen, die sich beim Ausprobieren dieser neuen Funktion vielleicht stellen werden. Wenn deine Frage nicht in diesem Abschnitt erscheint, erwäge, die neuesten Fortnite-Ökosystem-Updates und Veröffentlichungshinweise auf Updates zu überprüfen.
Kann ich die Physik in einem bestehenden Projekt aktivieren?
Ja. Die Physik kann in deinen bestehenden Projekten aktiviert werden, aber es wird empfohlen, eine Kopie deines Projekts zu erstellen, bevor du die Physik aktivierst. Du kannst kein Projekt veröffentlichen, das eine experimentelle Funktion verwendet. Du kannst die experimentelle Physikfunktion jederzeit deaktivieren und deine Insel veröffentlichen.
Können mit dem Sequencer animierte Objekte mit Physikobjekten interagieren?
Nein. Sequenz-Objekte werden auf dem Spiel-Thread des Servers ausgeführt, der andere Eigenschaften als der Physik-Thread hat und nicht die für die physikalische Interaktion erforderlichen Änderungen vornimmt. Grundsätzlich ist der Sequencer nicht dazu gedacht, zusammen mit der Physik verwendet zu werden. Wir empfehlen die Verwendung des Objektbeweger-Geräts. Props, die mit dem Objektbeweger bewegt werden, können mit Physikobjekten interagieren.
Sind Alle Spielerbewegungsmodi mit Physik verfügbar?
Die grundlegenden Spielerbewegungen, wie Gehen, Rennen, Sprinten, Sprintspringen, Springen, Fallen, Schwimmen, Ducken, Duckend gehen, Duckspringen, Gleiten und Fallschirmspringen, sollten wie erwartet funktionieren. Allerdings sind Hochziehen, Rutschen, Seilrutschen, Grindrails und DBNO derzeit nicht verfügbar.
Werden alle Waffen unterstützt?
Die meisten Waffen werden in der Physik-Beta unterstützt. Wenn der Werkzeugsatz umfassender wird, kannst du erwarten, dass mehr Waffen mit der Physik funktionieren.
Funktionieren Fahrzeuge auf meiner Insel mit aktivierter Physik?
Fahrzeuge werden nicht unterstützt und verursachen Instabilität auf deiner Insel. Wir empfehlen, sie nicht zu verwenden, da sie Teile deines Spiels beschädigen können.
Wie viele Physik-Objekte kann ich in meinem Projekt verwenden?
Du solltest die Anzahl der Physik-Objekte in deinem Projekt im Auge behalten. Die Verwendung von mehr als 50 physisch simulierten einfachen Formen (Boxen oder Kugeln) kann die Insel-Performance beeinträchtigen. Komplexe Physikformen wirken sich stärker auf die Performance aus als einfache Formen. Basierend auf der Komplexität deiner Umgebung und der Objekte, die simulieren, kannst du unterschiedliche Ergebnisse erzielen.
Funktioniert Physik im Fortnite-Kreativmodus?
Zurzeit ist Physik nur für UEFN verfügbar.
Volume-Gerät-API
Um die Präsenz eines Physik-Objekts zu erkennen, wurden dem Gerät zwei Events hinzugefügt: OnPhysicsEnter und OnPhysicsExit.
Die Nutzlast für diese Events ist Creative_Prop.
Verse-API
Das PropEntersEvent und das PropExitsEvent wurden hinzugefügt. Das folgende Snippet kann verwendet werden, um nachzuverfolgen, wann Agents ein Volume betreten und verlassen:
volume_device<public> := class<concrete><final>(creative_device_base):
PropEntersEvent<public>:listenable(creative_prop) = external {}
PropExitsEvent<public>:listenable(creative_prop) = external {}