Unity und Havok Physics für DOTS-basierte Projekte

Erstellen Sie ansprechende, interaktive und dynamische Welten auf Basis des C# Data-Oriented Technology Stack von Unity.

Zwei Physiksysteme, ein Datenprotokoll

Die Physics-Lösung besteht aus zwei Angeboten: Unity Physics und Havok Physics. Beide basieren auf dem DOTS-Framework und verwenden demnach das gleiche Datenprotokoll.

So können Sie Ihre Projekte reibungslos zwischen Physiksystemen verschieben, ohne Ihre Inhalte oder Ihren Spielecode neu erstellen zu müssen.

Ganz gleich, ob Sie Unity Physics, Havok Physics oder beide zusammen verwenden – das vereinheitlichte Datenprotokoll ermöglicht es Ihnen, einmal zu schreiben und dann mit jedem beliebigen DOTS-fähigen System zu simulieren.

Hinter den Kulissen: die Partnerschaft von Unity und Havok

Zusammen mit Havok haben wir eine brandneue Physik-Engine entwickelt, die auf der DOTS-Technologie basiert.

Erfahren Sie von Shawn McClelland (Product Manager bei Unity) und Joel Van Eenwyk (Field Application Engineer bei Havok), wie wir das System gemeinsam auf dem DOTS-Framework aufgebaut haben, sodass Physiksimulationen mit außergewöhnlicher Leistung erstellt werden können, die modernen Netzwerkanforderungen entsprechen.

Unity Physics und Havok Physics

Unity Physics und Havok Physics basieren auf dem DOTS-Framework (Data-Oriented Technology Stack). Sie können ein Projekt von einer Lösung zur anderen übertragen und beide können gleichzeitig ausgeführt werden. Sie sind datenkompatibel und ermöglichen Ihnen die Verwendung der leistungsstarken Tools und Workflows von Unity.

Unity Physics

Schnell. Schlank. Zustandslos. Anpassbar. Das ist das Mantra hinter unserer neuen Unity Physics-Lösung.

Sie basiert auf dem Unity C# DOTS-Framework und ist netzwerkfähig, komplett anpassbar und auf sofortige Leistungsfähigkeit ausgelegt. Ganz gleich, ob Sie den neuesten Bestseller für Mobilgeräte oder ein neues vernetztes Multiplayer-Konsolenerlebnis entwickeln – Unity Physics nutzt den Burst-Compiler und das Job-System zwecks Skalierung über eine Reihe von Hardware hinweg.

Unity Physics ist derzeit als Vorschauveröffentlichung über den Package Manager verfügbar und mit Unity 2019.1 und neueren Versionen kompatibel.

Havok Physics

Havok Physics
Havok Physics ist eine leistungsfähige Lösung für Kunden, die komplexe Physiksimulationen erstellen müssen. Sie basiert auf der branchenführenden Havok Physics-Engine, die von mehr als der Hälfte der Toptitel dieser Konsolengeneration verwendet wird. Sie ist im selben C#-DOTS-Framework geschrieben wie Unity Physics, beinhaltet jedoch die Funktionen, Leistung, Stabilität und Funktionalität der proprietären Havok Physics-Engine mit Closed-Code, die im nativen C++ geschrieben ist.

Lesen Sie die Dokumentation, um zu erfahren, wie Sie auf Havok Physics zugreifen.

Leistung 
Havok Physics ist auf typische Spielanwendungsfälle optimiert. Die Kernalgorithmen wurden über viele Jahre hinweg optimiert. Aufgrund der verschiedenen automatischen Cache-Strategien (einschließlich Ruhemodus für inaktive Objekte) werden CPU-Ressourcen nur dort eingesetzt, wo sie auch gebraucht werden. 

Siehe Havok Physics Unity integration : Performance - YouTube 

Verhalten
Havok Physics ist eine robuste Physik-Engine, die auf die Leistungsanforderungen auch der grafisch anspruchsvollsten Spiele, die oft detaillierte Szenen mit viel physischer Interaktion enthalten, angepasst ist. In einer mehr als zwanzigjährigen Zusammenarbeit mit Partnern in der gesamten Branche hat Havok zahlreiche der schwierigsten Probleme von Physiksimulationen identifiziert, gelöst und arbeitet fortwährend an neuen Lösungen. So lassen sich physische Objekte stabil stapeln, Artefakte bei sich schnell bewegenden Objekten minimieren und insgesamt das Verhalten besser kontrollieren, insbesondere bei der Arbeit mit nicht-optimierter Kollisionsgeometrie. 

Siehe Stacking Stability – YouTube und Mesh Welding – YouTube

Häufig gestellte Fragen

Was bedeutet "deterministisch"?

Beim Determinismus geht es darum, in einer physischen Simulation das gleiche Ergebnis zu erhalten, wenn dieselben Eingaben verwendet werden. Sowohl Unity Physics als auch Havok Physics bieten deterministische Ergebnisse. Verschiedene CPU-Architekturen (x86, ARM usw.) erzeugen jedoch kleine Unterschiede in den mathematischen Berechnungen, wodurch die deterministischen Ergebnisse der Simulation auf unterschiedlicher Hardware abweichen können.

Da Burst das Problem des architekturübergreifenden Determinismus später in diesem Jahr lösen wird, wird auch Unity Physics automatisch von dieser Funktion profitieren, sodass die Simulation auf allen Geräten gleich sein wird.

Hinweis: Für Einzelarchitekturdeterminismus erfordert Unity Physics ein künftiges Burst-Update.

Was bedeutet "zustandslose Physik"?

Die meisten Physik-Engines, einschließlich Havok, sorgen mit intelligenten Optimierungen für Leistung und Stabilität. Teile des Status der Welt werden zwischengespeichert, um verschiedene Berechnungen zu umgehen oder zu stabilisieren. Zustandslose Physik sorgt stattdessen durch Brute-Force-Optimierungen für Leistung. Aus diesem Grund und weil künftige Versionen von Burst auf mehreren Architekturen ausgeführt werden können, bieten sich Vorteile für verschiedene vernetzte Szenarien. Andererseits gibt es Szenarien, in denen Havok mehr Leistung und Stabilität erreichen kann.

Welche Auswirkungen hat zustandslose Physik auf vernetzte Spiele?

Da zustandslose Physik in künftigen Versionen von Burst deterministisch auf mehreren CPU-Architekturen ausgeführt werden kann, wird sie für verschiedene vernetzte Konfigurationen einsatzbereit und einfach nutzbar sein, beispielsweise für clientseitige Vorhersagen (z. B. FPS), Lockstep-Client-Simulation (z. B. RTS) sowie GGPO/Rollback (z. B. Kampfspiele).

Welche Vorteile bietet die Verwendung von Havok Physics für meine Spiele?

Da Havok Physics verschiedene Informationen für intelligente Optimierungen zwischenspeichert, kann eine überlegene Leistung in groß angelegten Spielen oder Spielen mit komplexen Physiksystemen erreicht werden. Havok Physics bietet auch mehr Stabilität im Umgang mit durchdringenden Objekten und beim Zusammenstellen von Körpern. Auch das Verhalten wird mit einem erweiterten Reibungsmodell, das Caches erfordert, verbessert.

Kann ich Havok Physics nachträglich auf meine bestehenden Spiele anwenden? Wenn ja, wie schwierig ist das?

Havok Physics und Unity Physics verwenden dasselbe Datenmodell im Unity-Editor. Sie können Inhalte auf eine Weise schreiben und dann eines der beiden oder auch beide Physik-Backends verwenden. Ausschlaggebend hierfür sind die spezifischen Anforderungen Ihres Spiels oder der Teilbereiche Ihrer Spielewelten.

Wird mit dem neuen System etwas zerstört oder verursacht es Komplexität bei aktuellen oder künftigen Projekten?

Nein, sowohl Unity Physics als auch Havok Physics sind Opt-in-Pakete auf Basis von DOTS. Bestehende Inhalte werden nicht zerstört, Sie müssen aber Ihre bestehenden Inhalte womöglich neu abstimmen, wenn Sie zu einem dieser neuen Backends migrieren.

Wir verwenden Cookies, damit wir Ihnen die beste Erfahrung auf unserer Website bieten können. Auf unserer Cookie-Richtlinienseite erhalten Sie weitere Informationen.

Alles klar