Unreal Engine 5: Beeindruckender Entwickler-Test mit 10 Milliarden Hunde-Polygonen

PCGH-Redaktion

Kommentar-System
Teammitglied
Jetzt ist Ihre Meinung gefragt zu Unreal Engine 5: Beeindruckender Entwickler-Test mit 10 Milliarden Hunde-Polygonen

Ein Entwickler hat die Early-Access-Version der Unreal Engine 5 mit einem besonders hoch-detaillierten 3D-Modell seines auf einem Bett schlafenden Hundes getestet. Nach einer tausendfachen Vervielfältigung stellte die Engine eine beeindruckende Szene mit insgesamt 10 Milliarden Polygonen ohne nennenswerte Leistungseinbußen dar.

Bitte beachten Sie: Der Kommentarbereich wird gemäß der Forenregeln moderiert. Allgemeine Fragen und Kritik zu Online-Artikeln von PC Games Hardware sind im Feedback-Unterforum zu veröffentlichen und nicht im Kommentarthread zu einer News. Dort werden sie ohne Nachfragen entfernt.

lastpost-right.png
Zurück zum Artikel: Unreal Engine 5: Beeindruckender Entwickler-Test mit 10 Milliarden Hunde-Polygonen
 
Ich schätze mal, dass die Engine hier einfach automatisches LOD verwendet und somit weiter entfernte Gegenstände mit weniger Polygonen darstellt?

Manche Entwickler sprechen gar von im Grunde unendlichen Details.

Hat mich jetzt schlagartig and diese Vaporware erinnert:
Eingebundener Inhalt
An dieser Stelle findest du externe Inhalte von Youtube. Zum Schutz deiner persönlichen Daten werden externe Einbindungen erst angezeigt, wenn du dies durch Klick auf "Alle externen Inhalte laden" bestätigst: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt.
Für mehr Informationen besuche die Datenschutz-Seite.
 
Ich schätze mal, dass die Engine hier einfach automatisches LOD verwendet und somit weiter entfernte Gegenstände mit weniger Polygonen darstellt?
Gehe ich auch von aus, vermutlich kombiniert mit Anpassung von Tesselationfaktoren.
Hat mich jetzt schlagartig and diese Vaporware erinnert:
Eingebundener Inhalt
An dieser Stelle findest du externe Inhalte von Youtube. Zum Schutz deiner persönlichen Daten werden externe Einbindungen erst angezeigt, wenn du dies durch Klick auf "Alle externen Inhalte laden" bestätigst: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt.
Für mehr Informationen besuche die Datenschutz-Seite.
Die Assoziation liegt auch sehr auf der Hand, kam sogar schon vor über einem Jahr mal zur Sprache:
Eingebundener Inhalt
An dieser Stelle findest du externe Inhalte von Youtube. Zum Schutz deiner persönlichen Daten werden externe Einbindungen erst angezeigt, wenn du dies durch Klick auf "Alle externen Inhalte laden" bestätigst: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt.
Für mehr Informationen besuche die Datenschutz-Seite.
 
Ich schätze mal, dass die Engine hier einfach automatisches LOD verwendet und somit weiter entfernte Gegenstände mit weniger Polygonen darstellt?
Effektiv korrekt. So wie die Grafikkarte verdeckte Polygone verwirft (culling), verwirft die UE5 Polygone die kleiner als ein Pixel sind und somit sowieso nicht angezeigt würden. Da das ganze in Software implementiert ist, dürfte es in Zukunft noch weitere Optimierungen an diesem Prinzip geben. Inwieweit eine Hardwarebeschleunigung machbar oder sinnvoll ist, wäre mal interessant zu wissen :)
Nach den Aussagen einiger Entwicklern von gestern aus dem (aus technischen Gründen abgebrochenen) Stream zu Nanite, war die Geschichte ursprünglich dazu geplant 3D-Artists den Workflow massiv zu erleichtern und deren Kreativität nicht durch die Leistung der Engine beeinflussen zu lassen (Zwanghaftes reduzieren der Polygone um einen halbwegs lauffähigen Prototypen zu erhalten).
Allerdings müsste jetzt noch, um Spiele mit mehreren 100GB oder gar über 1 TB an Speicherplatzbelegung zu vermeiden, eine Kompression für die Meshes alá Draco eingebaut werden. Eventuell müssten die Polygone der Modelle aber doch auch wieder reduziert werden, allerdings dann nur noch zu einem einzigen High-Poly-Modell und nicht zusätzlich noch drei oder mehr verschiedene Unter-LOD-Stufen, was ja ebenfalls jede Menge Arbeit spart.
 
Ich schätze mal, dass die Engine hier einfach automatisches LOD verwendet und somit weiter entfernte Gegenstände mit weniger Polygonen darstellt?



Hat mich jetzt schlagartig and diese Vaporware erinnert:
Eingebundener Inhalt
An dieser Stelle findest du externe Inhalte von Youtube. Zum Schutz deiner persönlichen Daten werden externe Einbindungen erst angezeigt, wenn du dies durch Klick auf "Alle externen Inhalte laden" bestätigst: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt.
Für mehr Informationen besuche die Datenschutz-Seite.
Das ist genau dasselbe Thema. Bei Voxeln oder PointCloudData sprechen viele von unlimited Detail. Aber die Last, die man normalen Rasterisierern dadurch nimmt, schlägt sich irgendwo anders nieder. Nanite ist da nicht anders. Die Anzahl der Polygone hängt, so wie ich es verstehe, mit der Bildschirmauflösung zusammen, es tesselliert quasi perfekt und stufenlos. Deswegen braucht es auch keine LODs und es ist egal wie viele Models irgendwo rumstehen, die Gesamtanzahl der Polygone bleibt identisch.
Beim PointCloud-System in dem Video sagten damals alle "zeigt mit ein größeres Level", "wie viel RAM wird es brauchen bei normalen Spielen", wie funktionieren Animationen. Die Einschränkungen von Nanite sind aktuell genau dieselben. Die Models sind riesengroß, ohne LOD weiß ich nicht, wie sie diese Modelle laden, muss ein 200MB Fels, der nur vier Pixel einnimmt und performant ist, trotzdem komplett im Speicher liegen? Und hoppla, funktioniert auch nur mit Static Meshes und kann weder für Skeletal Meshes, noch Foliage eingesetzt werden. Kommt einem bekannt vor.
Ich denke, dass Nanite vorerst durch den beschränkten Speicher in Spielen nicht mit den ultrahighpoly-Modellen daherkommt, die selbst LOD0 total alt aussehen lassen, sondern mit normalsterblicher Qualität. Spart einem dann immernoch LODs und LOD-Popin und ist zweifelsfrei sehr performant.
Bei Filmproduktionen siehts wieder anders aus.

PS: Dass gute Modelle Speicher fressen, ist normal und hat mit der Technik wie diese gerendert werden nichts zu tun. Es ist der Lauf der Dinge. Es ist mir ehrlich gesagt der liebste Flaschenhals, weil potenziell am günstigsten und am einfachsten zu lösen.
 
Schon krass, es gibt bereits Videos mit 312 Milliarden Polygone, eigentlich unglaublich wozu die Engine dank Nanite in der Lage ist.

Eingebundener Inhalt
An dieser Stelle findest du externe Inhalte von Youtube. Zum Schutz deiner persönlichen Daten werden externe Einbindungen erst angezeigt, wenn du dies durch Klick auf "Alle externen Inhalte laden" bestätigst: Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit werden personenbezogene Daten an Drittplattformen übermittelt.
Für mehr Informationen besuche die Datenschutz-Seite.
 
Unlimited Detail ist doch keine Vaporware. Leider hat der Entwickler Bruce Dell bei der Demonstration ausposaunt wie es in etwa funktioniert. Jetzt, ein paar Jahre später, haben die Unreal Entwickler das aufgegriffen und mit ihrer Engine kombiniert -> läuft. Hab mich schon gefragt, wann das mal jemand macht.

Die Anzahl der maximal darstellbaren Polygone ist gleich der Anzahl der Pixel der gewählten Bildschirmauflösung. Bei Full HD 1920x1080 sind es z. B. 2.073.600. Ein Suchalgorithmus, hier Nanite, sucht dann heraus, welche Polygone in welcher Größe dargestellt werden und gibt diese Daten dann an den Rasterizer -> in der Grafikkartenhardware die ROPs. Deswegen brauchen die Grafikkarten auch immer mehr davon, um eine gewünschte FPS Leistung in höheren Auflösungen bereitzustellen. Bei Foliage funktioniert das nicht. Herkömmlich werden diese Grasbüschel mit einem Polygon dargestellt, auf dem zwei gleiche Bitmapgrafiken in einem 90 Grad Winkel versetzt verankert werden d. H. es gibt für derartig dargestellte Grasbüschel keine Geometriedaten, die gerastert werden können. Deswegen gibt es in den Grafikengines das LOD System, das die Grasbüschel in der Entfernung aus der gleichen Bitmapdatei dann auf weniger Pixel herunterskaliert.

Zum Beispiel in der Cryengine war das eine Neuerung. Viele Spielenengines vor dem Erscheinen der Cryengine hatten zur Darstellung der Bäume eben bloß diese Bitmapgrafiken benutzt. In der Cryeninge hatten die Bäume dann eigene Geometriedaten und diese konnte man auch mit physikalischen Eigenschaften austatten. Die Entwickler der MWLL Mod für Crysis haben dieses benutzt, um zerstörbare Vegetation in ihr Spiel einzubringen. In der Anfangszeit der Mod konnte man damit den Spieleserver ausbremsen oder sogar abstürzen lassen, wenn man viele Bäume auf einmal kaputtgemacht hat.
 
Zuletzt bearbeitet:
Die Models sind riesengroß, ohne LOD weiß ich nicht, wie sie diese Modelle laden, muss ein 200MB Fels, der nur vier Pixel einnimmt und performant ist, trotzdem komplett im Speicher liegen?
Nanite konvertiert das Model und macht es wohl auch massiv kleiner, habs aber nur kurz überflogen.

Und hoppla, funktioniert auch nur mit Static Meshes und kann weder für Skeletal Meshes, noch Foliage eingesetzt werden. Kommt einem bekannt vor.
Jaein. Aktuell gehen nur Static Meshes, aber sie arbeiten bereits daran. Es ist ja auch bisher nur ne Preview und soll mit der fertigen Version kommen.
 
Und hoppla, funktioniert auch nur mit Static Meshes und kann weder für Skeletal Meshes, noch Foliage eingesetzt werden.

Ich hab mir da v.a. gedacht, dass es schwierig wird alle momentanen Effekte (Beleuchtung, jegliche Physik etc.) auf diese Punktdarstellung umzumützen. Oder gar gleichzeitig zu mischen mit Polygonmodellen innerhalb einer Engine.
Das halte ich für die größte Herausforderung.
 
Nanite konvertiert das Model und macht es wohl auch massiv kleiner, habs aber nur kurz überflogen.
...
Nanite sucht die Polygone heraus, die man sehen kann. Da die maximale Anzahl immer gleich ist, geht das viel schneller und effizienter, als die herkömmlichen Methode über den Z-Buffer. Es ist quasi egal, ob das Model aus 300 oder 30 Millionen Polygonen besteht. Es werden immer nur maximal in FHD 2.073.600 Polygone oder weniger gerastert und dargestellt.

Die Euclideon Engine, die so ähnlich funktioniert, läuft auch bloß auf der CPU. Die benutzt garkeine Hardwarebeschleunigung der Grafikkarte, weil es dort keine Polygone gibt.
 
Hunde Polygone... HUNDE POLYGONE... da fuuq... %-)

Hätte man nicht einfach Polygon Hunde schreiben können... das triggert mich, alda... :ugly:

Ja, krass was mit der UE5 geht und wir sind erst am Anfang!
Und schön wie der Doggo sich bettet... :)
 
Wo bleiben Demos mit beweglichen Models In der Qualität?

Solange es die nicht gibt bleibt das vapor Ware. Was bringen mir ultra detaillierte pappwände wenn alles bewegliche und animierte krass heraussticht
 
Die Einschränkungen von Nanite sind aktuell genau dieselben.
Natite hat den gewaltigen Vorteil, dass es auf Polygonen basiert statt Punktwolken. Heißt alles was mit Polygonen funktioniert, geht auch mit den Nanite Meshes also Licht, Physik, Shader, Animationen usw. Bei Unlimited Detail haben diese Dinge gefehlt oder sind nur rudimentär vorhanden.
 
Und dann läuft es auf ner 3090 mit 30 fps ohne wirkliche Vegetation und Gegnern und Physik. ist nicht die erste Demo. In 5 Jahren gezeigte Quali vielleicht mal realisiernar
Nun, da die UE5 sowieso erst Ende diesen Anfang nächsten Jahres rauskommt und Spiele auch ein paar Jährchen brauchen um vollständig entwickelt zu werden, rechne ich auch erst in 5+ Jahren mit Spielen, die diese Technik auch wirklich ausreizen. Bis dahin dürften auch die Kinderkrankheiten und Unzulänglichkeiten ausgebessert und ein paar zusätzliche Features integriert worden sein. Die Performance dürfte nebenbei mit Sicherheit auch noch in zukunft optimiert werden.

Was mich aber dann doch etwas interessiert, ist folgendes: Wenn die aktuelle Vegetations- bzw. vor allem die Gras-Darstellung noch Tricks mit Bitmaps und ähnlichem nutzt, wäre es dann mit Nanite nicht möglich auch diese Mesh- bzw. Polygonbasiert zu erzeugen und zu integrieren bzw. rendern zu lassen? :confused:
Vorausgesetzt nantürlich, dass das ganze noch für dynamische und animierte Meshes umgesetzt wird und Lumen noch weitere Features unterstützen wird, wie Semi-Transparenz... Sollte das irgendwann möglich sein, freue ich mich auf die ersten Speed Level Design Videos auf YouTube :D
 
Zuletzt bearbeitet:
Zurück