Spiele-Engine Unity 2020.1 spielt russisches Roulette beim Beleuchten

Die Game-Engine bringt neben einem Zufallsalgorithmus für Baked Lights erweiterte Tools zum Profiling und kombinierte Kameraausgaben.

In Pocket speichern vorlesen Druckansicht 4 Kommentare lesen
Unity 2020.1 spielt russisches Roulette beim Beleuchten
Lesezeit: 4 Min.
Inhaltsverzeichnis

Das Unternehmen Unity hat die erste Betavariante der Spiele-Engine Unity 2020.1 veröffentlicht. Die Neuerungen konzentrieren sich unter anderem auf die Analysewerkzeuge mit einem erweiterten Profiler. Hinsichtlich der Grafik lassen sich die Ausgaben mehrere Kameras kombinieren, und die sogenannte Russian-Roulette-Methode soll das Berechnen der globalen Beleuchtung optimieren.

Der Unity Profiler ist ein Werkzeug zum Messen der Performance und des Speicherbedarfs von mit Unity erstellten Anwendungen. Im aktuellen Release soll er vor allem im Zusammenspiel mit Low-End-Android-Geräten stabiler arbeiten. Außerdem ist er neuerdings als eigenständige Desktop-Anwendung verfügbar, die ohne den Unity Editor auskommt.

Mit der neuen Flow-Event-Funktion zeigt der Profiler die Beziehungen zwischen Systemen, Jobs und Threads an. Der Profiler zeigt über Pfeile den Ablauf an. Die Ansicht, die sich sich im Timeline-Fenster über Show Flow Events aktivieren lässt, vermittelt einen Einblick in das Vorgehen, mit dem Unity die einzelnen Jobs auf Threads verteilt. Neuerdings können Entwickler zudem die Profile-Marker mit Meatadaten versehen.

Zwei Analysepakete sind derzeit noch als Preview gekennzeichnet: Code Coverage gibt einen Überblick über die Testabdeckung, also welchen Code der Test Runner durchlaufen hat. Der Memory Profiler soll dabei helfen, speicherhungrige Bereiche der Anwendung aufzuspüren, die sich optimieren lassen.

Das minimalistisches Beispiel des neuen Code-Coverage-Pakets hat lediglich eine Methode abgedeckt.

(Bild: Unity)

Bei den grafischen Werkzeugen von Unity 2020.1 ist unter anderem das Camera Stacking hervorzuheben. Es verbindet die Ausgaben einer Base Camera und mehrere Overlay Cameras zu einem gemeinsamen Output. So lassen sich beispielsweise 3D-Szenen mit einem 2D-UI verbinden. Entwickler können die kombinierte Ausgabe ebenso weiterverarbeiten wie die Ausgabe einer einzelnen Kamera, also unter anderem Post-Processing-Effekte verwenden.

Camera Stacking kann ein zweidimensionales UI auf eine dreidimensionales Modell legen.

(Bild: Unity)

Unity hat für das aktuelle Release zudem einige Optimierungen und Fixes für die Beleuchtung von Szenen vorgenommen. Die Lighting Settings speichert die Spiele-Engine neuerdings nicht mehr zusammen mit den Unity-Scene-Dateien, sondern als separate Datei. Auf die Weise lassen sich die Beleuchtungseinstellungen zwischen einzelnen Szenen beziehungsweise im Team teilen und unabhängig anpassen.

Neu ist zudem die sogenannte Russian-Roulette-Methode beim Berechnen der globalen Beleuchtung (Global Illumination, GI). Sie greift beim sogenannten Baking, dem Berechnen der Beleuchtung innerhalb des Unity-Editors. Die Engine lädt die Baked Lights zur Laufzeit und nutzt die Beleuchtungsinformationen zugunsten einer besseren Performance.

Gerade bei Indoor-Szenen können GI-Berechnungen beim Baking äußerst zeitaufwendig sein, da Lichtstrahlen nicht auslaufen, sondern Wände, Böden und Decken sie immer wieder reflektieren. Der Lightmapper muss daher den Pfad der Lichter irgendwann beenden – üblicherweise nach einem gesetzten Maximum der Bounces. Die Russian-Roulette-Methode bietet als Alternative dazu ein Zufallsverfahren zum Beenden der einzelnen Lichtpfade. Dabei spielt die potenzielle Bedeutung für die GI eine Rolle: Das Abprallen von dunklen Stellen erhöht die Wahrscheinlichkeit des Beendens, während die Reflexion von einer hellen Stelle sie verringert.

Darüber hinaus bringt Unity 2020.1 zahlreiche Ergänzungen an diversen Stellen: Der Unity Accelerator zum Teilen von Assets im Team bringt ein lokales Administrator-Dashboard, das Particle-System bekommt einige Erweiterungen, und Unity hat das das 2D-Physics-Projekt ausgebaut.

Empfohlener redaktioneller Inhalt

Mit Ihrer Zustimmmung wird hier ein externes Video (Kaltura Inc.) geladen.

Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit können personenbezogene Daten an Drittplattformen (Kaltura Inc.) übermittelt werden. Mehr dazu in unserer Datenschutzerklärung.

Eine Übersicht der Neuerungen in Unity 2020.1 lässt sich dem Unity-Blog entnehmen. Die vollständige Liste findet sich in den Release Notes. Unity ist zur privaten Nutzung für Entwickler mit einem Jahresumsatz unter 100.000 US-Dollar kostenfrei verfügbar. Die Plus-Variante kostet ab 40 US-Dollar monatlich.

Unity 2020.1 ist derzeit als offene Beta verfügbar. Ende Januar hatte Unity angekündigt, den Releasezyklus anzupassen. Statt drei regulären Versionen plant Unity jährlich nur mehr zwei und ein zusätzliches LTS-Release (Long-Term Support) jeweils zu Beginn des folgenden Jahrs. (rme)