Immortals of Aveum Interview - Die Vorteile und Tücken von Nanite
In diesem Artikel
- Seite 1 Einleitung
- Seite 2 Warum Unreal Engine 5?
- Seite 3 Materialien, Shader-Streaming, Asset-Verwaltung
- Seite 4 Niagara und VFX
- Seite 5 Die Weltdarstellung und Strukturierung in der UE5.1.1
- Seite 6 Die Vorteile und Tücken von Nanite
- Seite 7 Beachtenswertes zu Portierungsarbeiten und Engine-Updates
- Seite 8 Gibt es Pläne, die Grafik in Zukunft weiter zu verbessern?
- Seite 9 Die Entwicklung der Zwischensequenzen
- Seite 10 Bildergalerie
Mark Maratea: Es kann sehr praktisch sein, diese Größe zu verändern, weil eine veränderte Zellengröße etwa dabei helfen kann, das Spiel besser mit Hardware skalieren zu lassen. Nicht, dass wir es jemals so weit treiben wollten, aber im Grunde könnte man ein Spiel mit Eingriffen dieserart so optimieren, dass sich ein UE5-Titel selbst auf einem Smartphone spielen ließe, so weit könnte man ein modernes UE5-Spiel herunterskalieren lassen. Das war in diesem Fall aber natürlich nicht unsere Absicht. Wir haben schon mehr Shader als Smartphones Speicher, das ergibt in unserem Fall nicht wirklich Sinn - aber man könnte.
Und natürlich funktioniert das auch andersherum. Nehmen wir doch einmal an, in etwa einem Jahr erscheint eine Playstation 5 Pro. Da könnten wir einfach in den Editor gehen, ein paar Einstellungen tweaken und so direkt die Vorteile des größeren Speichers und der zusätzlichen Leistung ausschöpfen. Das ist beinahe wie der "Magic Button". Man drückt drauf und die Qualität des Spiels wird besser. Das ist mein Lieblings-Button (lacht).
PCGH_Phil: Kann ich mir gut vorstellen. Das würde nach meinem Verständnis wahrscheinlich auch gut im Zusammenhang mit Nanite funktionieren. Das ist ja im Grunde bereits ein automatisches LoD. Ein solches könnte man ja ebenfalls der Hardware entsprechend skalieren. Ihr nutzt doch recht ausgiebig Nanite-Meshes, oder?
Dave Bogan: Oh ja, Nanite ist bei uns überall. Im Grunde ist alles ein Nanite-Mesh, mit Ausnahme von Skeletal Meshes (Anmerkung der Redaktion: Jene Modelle, die ein "Knochengerüst" nutzen, also vornehmlich Charakter-Modelle, die auf ein Skelett u. a. zwecks Animierung/glaubhafte Belebung bauen).
Mark Maratea: Genau, Skeletal Meshes und die Grundstruktur der Landschaft - die Landschaft ist prozedural generiert. Alles andere ist Nanite, also vielleicht 90 Prozent der Modelle im Spiel sind Nanite-Meshes. Mit allen Umständen, die das eben so mit sich bringt.
Dave Bogan: Da gab es definitiv einen Lernprozess. Nanite ist in vielerlei Hinsicht eine absolut beeindruckende Technologie, allein schon, weil man keine LoDs für die Modelle mehr erschaffen muss. Die Unreal Engine hat zwar auch sehr nützliche Tools, um LoDs automatisch zu generieren, das war etwa für unsere Charakter-Darstellung sehr hilfreich. Aber mit Nanite muss man im Grunde gar nichts machen - man wirft einfach diese gewaltig detaillierten, gewaltigen High-Density-Meshes in die Engine ...
Aber auch da gibt es einen Lernprozess. Wir haben da viel neu erlernen müssen - und wisst ihr: Nichts auf der Welt gibt es umsonst. Das trifft auch auf Nanite zu, allein mit Berücksichtigung der Performance zur Laufzeit. Ich meine, überlegt nur einmal: Mit Nanite streamen Frame für Frame diese gewaltigen Meshes herein und heraus, erhöhen oder erniedrigen je nach Situation beständig die Auflösung des Meshes zur Laufzeit. Damit wird man das typische, sehr sichtbare LoD-Pop-In-Pop-Out früherer Titel im Grunde komplett los.
Worauf wir aber zu Beginn nicht wirklich eingestellt waren, ist der Faktor Speicher. Obwohl wir mit Nanite die Normal Maps für die Modelle losgeworden sind - die wurden zuvor aus HD-Meshes generiert, mit Nanite werden diese HD-Meshes tatsächlich in der Engine dargestellt, was vorher Normal Maps waren, ist mit Nanite also in Form von Geometrie tatsächlich vorhanden - benötigen Nanite-Meshes allein aufgrund der erhöhten Mesh-Auflösung mehr Speicher als frühere Modelle mit konventionellem LoD plus Normal Maps, obwohl wir mit Nanite die Normal Maps losgeworden sind und die einsparen können. Das haben wir ein wenig auf die harte Tour lernen und bei der Entwicklung einiges neu erlernen und Wege finden müssen, um den höheren Speicherbedarf von Nanite zu kompensieren.
PCGH_Phil: Ja, das ist mir selbst beim Herumspielen mit der UE5 auch schon aufgefallen. Der nicht ganz unbeträchtliche Speicherbedarf von Nanite dürfte wohl einige überraschen (lacht).
Dave Bogan: Wenn es um Nanite geht, ist es wirklich wichtig, dass man die Nanite-Meshes nicht schlicht in voller Qualität in die Engine wirft und die Unreal Engine 5 da maximal auf den Putz hauen und einfach so viele Polygone wie nur irgend möglich darstellen zu lassen. Man muss da schon ein wenig Hand anlegen und sich auf das Wichtigste konzentrieren. Und dabei ist das Arbeiten mit Nanite im Grunde so ähnlich wie bei früheren Modellen: Bei gut erstellten Modellen ist das wichtigste die Silhouette. Es lohnt sich auch mit Nanite, darauf einen Fokus zu legen und trotz Nanite die Optimierungen nicht außer Acht zu lassen. Wenn Teile des Modells nichts zur Silhouette beitragen, sollte man sich als Modeller überlegen, ob man diese Details nicht weglassen könnte. Effizienz ist immer noch wichtig.
PCGH_Phil: Mann sollte bei Nanite wohl außerdem beachten, dass die teils extrem detaillierten, schwergewichtigen Meshes beständig von einem Speicher zum anderen geschaufelt werden. Beim PC etwa von dem Haupt- in den Grafikspeicher. Und das wiederum über die PCI-E-Schnittstelle, die nur über eine begrenzte Bandbreite verfügt. Vielleicht muss man als Entwickler beim PC sogar ganz besonders darauf achten, denn es existieren ja durchaus noch einige Systeme mit PCI-E-3.0-Unterbau und der Grafikspeicher des durchschnittlichen PC-Spielers ist gegenüber den aktuellen Konsolen ja außerdem etwas knapper bemessen. Aber das scheint euch ja gelungen zu sein, jedenfalls nach den bisherigen Eindrücken, die ich mir von Immortals of Aveum im Vorfeld habe machen können.
Dave Bogan: Etwas Achtsamkeit zahlt sich jedenfalls aus. Wir haben aber einige Modelle, die aus mehr als 2 Millionen Polygonen bestehen, das ist schon ein bisschen verrückt.
Joe Hall: Und dann haben sie auch noch Transparencies für Nanite ergänzt ...
PCGH_Phil: Oh ja, stimmt - das muss ja während eurer Entwicklung mit der UE5 geschehen sein. Das war bestimmt ein großer Schritt.
Dave Bogan: Oh ja, das war ein Game-Changer.
Quelle: Electronic Arts
Immortals of Aveum - Wir befragen die Entwickler im Tech-Interview zur Unreal Engine 5.1 (5)
Joe Hall: Ja, das war wirklich ein gewaltiger Fortschritt, insbesondere im Hinblick auf die ganzen unterschiedlichen Assets, die wir in unseren sehr diversen Leveln eingesetzt haben. Mit Nanite und Transparencies kann man eine Menge anstellen. Wir haben da ein Element in einem unserer Level, genannt "Library" - ich sollte vielleicht nicht zu viel verraten - da gibt es einige Elemente, die während dem Spielen gewissermaßen erodieren, langsam verschwinden, inklusive Emissive- und Transparenz-Texturen. Das war vor Nanite mit Support für Transparenzen so nicht möglich. Die ganzen neuen GPU-Features plus Nanite plus Transparency und was man damit in Kombination bewerkstelligen kann, ist wirklich super-cool.
Dave Bogan: Der Transparency-Support für Nanite hat gewissermaßen unser Spiel gerettet - denn wir haben in einigen Umgebungen sehr viel Vegetation.
PCGH_Phil: Das wollte ich gerade anmerken, vor diesem Update war Nanite für Vegetation ja ein gewisses Problem. Epic selbst hat sich bei Fortnite anfangs um dieses Problem herum arbeiten müssen, indem sie jeden Grashalm und jedes Blatt ausmodelliert haben.
Dave Bogan: Wir haben wirklich alles mitgenommen, was uns die Unreal Engine 5 während der angeboten hat. Wir haben unsere Ingenieure wirklich angetrieben und sind vor keinem Engine-Update zurückgeschreckt. Das ist eigentlich etwas, was man als Entwickler möglichst vermeiden möchte, zumindest in den späteren Entwicklungsphasen. Aber in diesem Fall war es für uns nützlich, dahin gehend aufgeschlossen zu sein. Wann haben wir das letzte Engine-Update vollzogen, Mark? Wir haben doch sogar noch ein paar Features aus der UE5.2 herausgepickt, die uns gefallen haben.
Mark Maratea: Ich meine, ich habe das letzte, kleinere Update vor ungefähr 10 Tagen gemacht (Anmerkung: Stand 16.08). Und wir werden weiter Engine-Fixes integrieren, wenn wir Bugs finden.
- Seite 1 Einleitung
- Seite 2 Warum Unreal Engine 5?
- Seite 3 Materialien, Shader-Streaming, Asset-Verwaltung
- Seite 4 Niagara und VFX
- Seite 5 Die Weltdarstellung und Strukturierung in der UE5.1.1
- Seite 6 Die Vorteile und Tücken von Nanite
- Seite 7 Beachtenswertes zu Portierungsarbeiten und Engine-Updates
- Seite 8 Gibt es Pläne, die Grafik in Zukunft weiter zu verbessern?
- Seite 9 Die Entwicklung der Zwischensequenzen

Entweder kann oder will man nicht , ansonsten sehe ich es wie RavionHD
Die Unity-Engine ist da auch nicht schlecht, aber im Duell eher zweiter Sieger
Gruß,
Phil
Ultra Details und FSR2 Quality. Minimale Reshadeanpassung und etwas Sättigung rausgenommen.
[Ins Forum, um diesen Inhalt zu sehen]
In einem gewissen Umfang wäre es wohl einfacher gewesen, aber irgendwo haben die Entwickler schon recht: Es wäre schwerlich möglich gewesen, das Spiel in einer ähnlichen Qualität in der UE4 zu erschaffen - vor allem mit einem verhältnismäßig kleinen Team.
Lumen gehört außerdem zu den eher "einfachen" Umstellungen, jedenfalls, wenn man es von Beginn an nutzt und nicht schon sehr viel mit Baked- und Probe-Lighting gemacht hat. Die Beleuchtung macht zwar sicherlich auch einen nicht ganz unbeträchtlichen Teil der (Grafik-)Last aus, aber sie ist nicht wirklich "schwierig" im Sinne der Entwicklung.
Und bei Lumen kann man ja außerdem auch noch die Qualität verringern - und vor allem: Upsampling nutzen, um die Grafikkarte zu entlasten. Upsampling respektive eine verringerte Renderauflösung scheint auch erstmal quasi nötig zu sein, zumindest was die ersten "wirklichen" UE5-Titel betrifft, die in relativ naher Zukunft erscheinen - oder es bereits sind. Die, die ich auf der Gamescom gesehen habe (ich kann noch nicht alle nennen), "Next-Gen-"Hardware und Lumen sowie Nanite nutzen (bzw. nicht mehr die alten Konsolen unterstützen) waren allesamt ziemlich anspruchsvoll. Ich denke, da können wir uns in Zukunft mehr oder minder drauf einstellen.
Ich finde die Entscheidung zugunsten der UE5 im Grunde gut, langsam kann es da mal ein wenig vorangehen. Das wird wahrscheinlich erst einmal ein wenig wehtun, aber so ist das ja im Grunde immer, wenn die alte Hardware-/Konsolen-Generation der neuen weichen muss. Dann fliegt einem oft erstmal der Grafikspeicher um die Ohren (vgl. insbesondere die Spiele um 2014 rum, da gab es auch einen recht heftigen Sprung) und auch die Anforderungen an CPU, Speichermedien etc. ändern sich häufig.
Das ist dieses Mal Umstände halber alles ein wenig verzögert, aber jetzt scheint es entsprechend dick zu kommen.
EDIT: Nightingale ist einer dieser UE5-Titel. Der sah auf der GC-Live-Präsentation schon sehr gut aus und lief bis auf wenige Ausnahmen smooth, allerdings teils merklich unterhalb 60 Fps (schätzungsweise um 40-50 Fps). Da hab ich auch kurz mit den Devs quatschen können, die haben einen ähnlichen Lernprozess wie hier die Entwickler von Immortals of Aveum geschildert - hauptsächlich Nanite und die neue Art und Weise, die Welt zu organisieren, benötigen eine gewisse Umstellung und spezifisch Nanite außerdem eine gewisse Zurückhaltung, um aktuelle ("Next-Gen") Hardware nicht völlig zu überfordern.
[Ins Forum, um diesen Inhalt zu sehen]
Da kommt morgen ein kleiner Preview-Artikel.
Gruß,
Phil