Megacity

In nur zwei Monaten erstellten unser ECS-Team und zwei Grafiker aus unserer FPS-Musterspielgruppe eine futuristische Stadtlandschaft – inklusive fliegenden Fahrzeugen, hunderttausenden hochdetaillierten Game Objects und einzigartigen Audio-Quellen –, die unseren Fortschritt mit dem ECS und dem Burst Compiler vorführen.

Unite LA 2018 – Keynote

In Los Angeles herrschte großes Interesse am ECS und dem Burst Compiler. Aufbauend auf der Nordeus-Demo von der Unite Austin produzierten unsere Gamecode- und FPS-Musterspielteams Megacity, eine dynamische, futuristische Stadtlandschaft. Megacity nutzt unseren Data-Oriented Technology Stack (DOTS), der Name für alle Projekte unter dem „Leistung als Standard“-Banner, inklusive ECS, Native Collections, C#-Jobsystem und dem Burst Compiler.

Demo für Unite LA innerhalb von 6 Wochen erstellt,

Zwei Unity-Grafiker, assistiert durch ein kleines Team von außerhalb, produzierten alle hochauflösenden Assets in etwa sechs Wochen. Sie verließen sich auf geschachtelte Prefabs und einige neu entwickelte Funktionen, die das Arbeiten mit sehr großen Gruppen von Game Objects unterstützt.

Es braucht ein ganzes Dorf ...

um eine Megacity zu erschaffen. Für die Produktion dieses Beispiels nutzten wir die ganze Palette an Teams und Technologien von Unity R&D, inklusive der jüngsten Features wie geschachtelte Prefabs und die Scriptable Render Pipelines sowie auch viele existierende wie Szenenbearbeitungen, World-Building, Cinemachine und den Post-Processing-Stack. Wir stützten uns auch auf einige Features, die noch in der Entwicklung sind und 2019 vorgestellt werden:

  • Workflows für (sehr) große Szenen
  • C#-Audiosystem
  • HLOD-System
  • ECS-Culling-System
  • Asynchrones Szenenstreaming
  • Asynchrone Entity-Instantiatiierung
  • Verbesserungen an ECS-Tools und Debugging-Features

Megacity auf Mobilgeräten

Einige Entwickler von Nordeus zeigen Ihnen anhand der Megacity-Demo, wie DOTS und die Lightweight Render Pipeline (LWRP) Sie dabei unterstützen, Ihre PC-Projekte einfach und unkompliziert für den Einsatz auf Mobilplattformen herunterzuskalieren. Das erklärte Ziel sind die Erhaltung der grafischen Reichhaltigkeit der PC-Version und das Erreichen hoher Bildwiederholraten auf Mobilgeräten.

Um diese Ziele zu erreichen, nutzten sie die LWRP, die in der Version 2019.1 den Vorschaustatus verlässt. Ihr Fazit: „Wenn man an einem Projekt arbeitet, dass die Grenzen von PCs ausreizt, und sich später dazu entscheidet, es für Mobile zu portieren, müssen in der Regel aufgrund der Leistungsbeschränkungen von Mobilgeräten große Teile des Spiels neu entwickelt werden. DOTS ermöglicht es, denselben Code einzusetzen, der auf dem PC die Spiellogik und das Rendering übernimmt, und diesen reibungslos für die Anforderungen von Mobilgeräten herunterzuskalieren.

Megacity Klanglandschaft (experimentell)

DSPGraph ist eine neue Audio-Rendering/Mixing-Engine, die auf dem C#-Jobsystem von Unity aufbaut. Die Engine ist komplett erweiterbar in C# und kann mit dem Burst Compiler genutzt werden. In Megacity versorgt sie 100.000, auf einzigartige Weise verteilte, dreidimensionale bzw. räumliche Sound-Emitter einschließlich Neonschilder, Belüftungsventilatoren und Autos, die eine vielschichtige, authentische Klanglandschaft erzeugen.

Beachten Sie, dass es sich bei DSPGraph um eine interne experimentelle API handelt, deren Details wir derzeit verfeinern und die später in diesem Jahr als Vorschaupaket veröffentlicht werden soll. Sie wird die Grundlage unseres zukünftigen DOTS-Audio-Systems (Data-Oriented Technology Stack) bilden. Wenn Sie Fragen oder Vorschläge zu DSPGraph haben, können Sie sich gern an der Diskussion in unserem offiziellen DOTS-Audio-Forum-Thread beteiligen.

Sehen Sie sich die unterschiedlichen Audio-Systeme genauer an, die zur Erzeugung von Sound in Megacity dienen.

Bau der Megacity

Erste Schritte mit der Megacity-Demo

Die Sitzung wurde auf der GDC 2019 aufgezeichnet. Hier zeigt Ihnen unser Unity-Experte Mike Geig eine Einleitung in das Projekt und wie Sie mit Unitys "„Leistung als Standard“" riesige Spielwelten voller komplexer Objekte und Simulationen erschaffen können.

Megacity auf der Unite LA: Begrüßung und Übersicht

Joachim Ante eröffnete den ECS-Track auf der Unite LA 2018 mit einer Präsentation über die Arbeit von ihm und seinem Team in den letzten sechs Monaten.

Megacity auf der Unite LA: Bau einer lebendigen Welt mit einem kleinen Budget

Ein kleines Team konstruierte in weniger als zwei Monaten eine enorm komplexe, realitätsnahe Stadt. Martin Vestergaard stellt Ihnen die Phasen Konzept, Nachbildung, Dokumentation, Produktion und Vervollkommnung vor.

Megacity auf der Unite LA: Graph-gesteuertes Audio in einer ECS-Welt

Erfahren Sie mehr über die neue, auf C#-Job basierende Audio-Rendering-Engine. Sie erhalten eine Einführung in diesen Low-Level-Audio-Renderer und lernen die ECS-Technologie kennen, die für das groß angelegte Audio in der Demo sorgt.

Megacity auf der Unite LA: LOD und Culling-Systeme, die mitwachsen

Mike Acton erklärt, wie das Team ECS für die Darstellung einer großen Umgebung in der Megacity-Streamingdemo für die Unite LA verwendete.

Megacity auf der Unite LA: splinebasierte KI-Agenten

Erfahren Sie, wie die Verkehrssimulation in der Demo die Rechnerkerne und deren mit Burst Compiler produzierten Code untersucht, und auch wie wir die splinebasierten KI-Agenten mit ECS entwickelt haben.

Megacity auf der Unite LA: Streaming und Serialisierung

Erfahren Sie mehr über Entitäten-Serialisierung auf und von der Festplatte, wie wir ein nahtloses Play-Mode-Streaming und einen effizienten Editor-Workflow aufgebaut haben und was eine separate ECS-Welt für Sie tun kann.

Megacity auf der Unite LA: Die Evolution der ECS API

Erfahren Sie mehr über die Vergangenheit, Gegenwart und Zukunft von ECS. Aria Bonczek vom „Unity Data Oriented“-Designteam erklärt unsere Entscheidungen für diese leistungsstarke API. 

Megacity auf der Unite LA: Verwendung des Entity-Debuggers

Sehen Sie sich diese Einführung in die Funktionen des Entity-Debuggers und eine Diskussion über seinen Platz in zukünftigen Unity-Versionen an.

ECS wurde für gewaltige Spielwelten entwickelt

Eines unserer Hauptziele bei Megacity war es, zu zeigen, dass das Entity-Component-System für das Streaming einer großen Anzahl von Szenenelementen perfekt geeignet ist.

Megacity enthält beispielsweise 4,5 Mio. Mesh-Renderer, 5000 dynamische Fahrzeuge und 200.000 einzigartige Gebäudeobjekte. Die Fahrzeuge fliegen auf splinebasierten Fahrspuren und kollidieren nie, und es gibt 100.000 einzigartige Audioquellen, darunter Neonschilder, Klimaanlagenlüfter und Autos, die einzigartige Sounds produzieren und so eine reiche, realistische Klanglandschaft bilden.

Megacity ist jetzt verfügbar

Laden Sie sich das Megacity-Musterprojekt mit allen Quelldateien und Assets herunter. 

Megacity arbeitet mit der Unity 2019.1.0 Beta 7.

Bleiben Sie in unseren Foren auf dem Laufenden und nutzen Sie unser Tutorial, umdie ersten Schritte mit ECS zu erlernen.

We use cookies to ensure that we give you the best experience on our website. Visit our cookie policy page for more information.

Alles klar