Der Wechsel auf eine neue Engine war ein langer und komplizierter Vorgang, bei dem wir zwei wichtige Ziele verfolgt haben: bessere Grafik bei einer verbesserten Optimierung. 1.0 bringt direkt einige grafische Verbesserungen mit, daher werdet ihr euch sicher fragen, ob euer Computer da nicht in die Knie geht. Dank harter Arbeit und Engagement konnten wir die empfohlenen und minimalen Systemvoraussetzungen unverändert lassen.
Was heißt das für euch? Selbst wenn ihr auf einem älteren Computer spielt (das Spiel wurde auf zehn Jahre alten Rechnern gespielt), braucht ihr keine Angst haben, ihr kommt trotzdem in den Genuss der verbesserten Grafik. Damit das Spiel optimal läuft, solltet ihr beim Start des Spiels die Auto-Erkennen-Funktion durchführen, mehr dazu später …
Wie konntet ihr die gleichen Systemvoraussetzungen beibehalten?
Jetzt können wir das gesamte Blending der Texturen im Voraus berechnen, es als virtuelle Texturen speichern, im Voraus laden und nur wenn nötig anzeigen. Außerdem brauchen wir im Tesselation-Schritt kein Material-Blending mehr. Also nutzen wir Tesselation (Anordnung von Formen, die nahe zusammengefügt sind) ohne große Leistungseinbußen.
WIE FUNKTIONIERT DAS?
Das Gelände selbst ist eine sehr komplexe Substanz, die aus zahlreichen Materialien besteht: Gras, Sand, Stein, … alles Mögliche. In den komplexesten Fällen, vermischen wir acht Materialien in jedem Pixel von jedem Frame, was deutliche Auswirkungen auf eure GPU hat. Vorher wurde das Gelände jedes Frame gerendert.
Zuvor nutzen wir einen „Brute-Force“-Ansatz, um Reflektionen im Wasser zu generieren, indem wir den Scene Render aus Richtung der Reflextion duplizierten. Ist das heute noch effizient? Nicht wirklich. Die neue Grafik-Engine lässt uns das mit Screen Space Reflections verbessern.
WIE FUNKTIONIERT DAS?
Wir kombinieren Screen Space Reflections mit parallaxen-korrigierten Reflexionspunkten, die vorberechnete Reflexionsdaten speichern. Ein weiterer Vorteil: dieser neue Ansatz gibt dem Wasser mehr Wiedergabetreue, da wir jetzt genau das reflektieren, was ihr seht, anstelle von vereinfachten Reflexionen wie zuvor.
Schatten fressen die meisten Ressourcen bei grafischen Anwendungen. Aber nicht in unserem Fall! Wir nutzen einen Ansatz vergleichbar zu den virtuellen Texturen, um eine Leistungseinbuße zu verhindern.
WIE FUNKTIONIERT DAS?
Die meisten Schatten werden berechnet, wenn die Karte geladen wird und nur geändert, wenn sich der Level verändert. Das gibt der Leistung einen deutlichen Schub und erlaubt korrekt beleuchtete Objekte, selbst auf Hardware des unteren Segments.
Das Interface wurde ebenfalls grundlegend optimiert, um die Leistung zu maximieren und den Speicherbedarf zu minimieren.
WIE FUNKTIONIERT DAS?
Die 3D-Szenerie, die von undurchsichtigen UI-Elementen verdeckt ist (Minikarte und Schadensfeld) wird nicht mehr gerendert und spart so GPU-Auslastung ein.
Hier einige einfache Tricks:
Vergrößert die Minikarte und macht sie undurchsichtig, um eure FPS zu steigern.
Versucht, die Bereiche des Spiels unter der undurchsichtigen Oberfläche zu steigern. In einigen Fällen, abhängig von der Konfiguration des PCs, könntet ihr bessere Framerates erhalten.
Die clientseitige Physik wurde je Eckpunkt des Kettendreiecks berechnet. In Zahlen ausgedrückt, lag die schiere Anzahl an Berechnungen jenseits der 10 000. Und das nur für eine komplette Panzerkette. Natürlich war das alles andere als effektiv.
WAS HAT SICH VERÄNDERT?
Die Bewegung der Kette wird jetzt je Kettensegment berechnet (im Schnitt etwa 100 Berechnungen je Kette). Obwohl sie die Leistung steigert, hat diese Optimierung keinen Einfluss auf die optische Qualität. Sie verringert die Last auf die GPU, während die Ketten eine natürliche und realistische Bewegung zeigen.
Update 1.0 führt ein verbessertes Flächensystem für Bäume ein.
WIE FUNKTIONIERT DAS?
Bäume werden zu Flächen (flache Rechtecke mit Texturen) mit allen Informationen wie Tiefe und Beleuchtung zusammengefasst. Dadurch können wir diese Baum-Flächen ändern und näher an den Betrachter rücken (ohne dass dieser den geringsten Unterschied merkt).
Die Detailstufe wird abhängig von der Entfernung zwischen eurer Kamera und einem Objekt, sowie euren Einstellungen angepasst. Je näher ihr einem Objekt kommt, desto detaillierter sieht es aus. Sobald ihr euch wegbewegt, passiert das Gegenteil. Denn es macht keinen Sinn, jeden Riss einer Wand im Detail darzustellen, wenn man dieses Detail nicht sehen kann.
WAS HAT SICH VERÄNDERT?
Mit dem Übergang zur neuen Engine geht diese Anpassung so weich wie möglich über einen kurzen Zeitraum von statten, damit keine holprigen Übergänge zwischen den verschiedenen Detailstufen zu erkennen sind. Und als Sahnehäubchen braucht der nahtlose Übergang keine zusätzlichen Ressourcen.
Damit all dies mit dem Standard-Rendering funktioniert, mussten wir die Null-Detailstufe (die beste Qualität) weglassen. Der qualitative Unterschied zwischen dieser und der nächstbesten Stufe ist praktisch nicht zu erkennen, diese Entscheidung erlaubte uns aber, die Mindest-Systemanforderungen gleich zu behalten.
Erinnert ihr euch, wie wenige gleichzeitige Explosionen zu einem FPS-Drop führten, oder noch schlimmer – zum Einfrieren? Wir haben sichergestellt, dass dies nicht mehr vorkommt, indem wir Mehrfachauflösungs-Rendering der Partikel hinzufügten.
WIE FUNKTIONIERT DAS?
Jetzt werden bei mehreren Explosionen hochauflösende Effekte nur entlang der Ränder dargestellt und das Innere in einer geringeren Auflösung gerendert. Dieser Wechsel ist praktisch nicht zu bemerken, spart aber viel Leistung in kritischen Momenten.
Wollt ihr es selbst sehen? Dann überzeugt euch selbst mit enCore. Ihr könnt damit euer System testen und erfahrt sofort, wie Update 1.0 auf eurem System läuft.