|
›› Willkommen! ›› 101.331.402 Visits ›› 18.316 registrierte User ›› 13 Besucher online (0 auf dieser Seite)
|
|
|
Entwickler Kantenlos: Valve setzt Dx11-Feature in Dx9 um
15.02.2009 | 15:10 Uhr | von Trineas
|
18.375 Hits
31 Kommentare 1 viewing
|
|
Bald sechs Jahre sind vergangen, als Valve das erste mal die Source-Engine auf der E3-Spielemesse präsentiert hat. Seit dem wurde die Technologie ständig weiter entwickelt, mittlerweile finden sich auch viele neue Features darin, die man aus der CryEngine 2 oder Unreal Engine 3 kennt. Da mit Left 4 Dead kaum technische Neuerungen am Grafikgerüst dazu kamen, liegt die letzte große Weiterentwicklung mit den Orange Box-Spielen schon knapp anderthalb Jahre zurück. Doch Valve arbeitet bereits an weiteren Grafikfeatures.
Zusammen mit Forschern der New York University haben Jason Mitchell und Shanon Drone von Valve an einer Technologie mit dem Namen "Real-Time Creased Approximate Subdivision Surfaces" gearbeitet und in die Source-Engine integriert. Dabei geht es im Grunde darum, Models runder erscheinen lassen, ihnen Ecken und ungewollte Kanten zu nehmen. Um nicht auf das neue DirectX 11-Paket von Microsoft warten zu müssen, hat Valve diese Funktion selbst in den DX9-Renderpfad integriert.
Je mehr Polygone ein Model hat, desto runder erscheint es uns Spielern. Gleichzeitig benötigt es aber auch mehr Hardwareleistung, weshalb es immer einen Kompromiss zwischen Grafikqualität und Performance geben muss. Ein Charakter-Model wie Alyx hat rund 8.000 Polygone (Dreiecke) und bei genauem hinsehen fallen auch die Ecken am Kopf oder an Armen und Beinen auf. Mithilfe der Catmull-Clark-Methode, gibt man dem Model die Information mit, an welchen Stellen es runder sein soll. Die GPU berechnet dort mehr Polygone, macht das durch dieses Verfahren aber deutlich effizienter, als würde man das Model gleich mit 50.000 Polygonen in das Spiel laden.
Auf dem ersten Screenshot sieht man den Heavy aus Team Fortress 2, der Kopf erscheint perfekt rund. Grundsätzlich ist diese Sache nicht neu, das Problem war nur bisher, dass es zu rund wird. Nämlich auch an Stellen, die gar nicht rund sein sollen. Damit wirken die Models dann oft wie Luftballontierchen, als wären sie aufgeblasen. Diese Problematik gibt es in der Valve-Methode nicht, Model-Designer können Kanten definieren (siehe grüne Linien im zweiten Bild), die hart bleiben sollen. Den Unterschied zeigt das Auto, einmal rund aber teilweise trotzdem noch kantig, das andere mal, weniger realistisch, komplett rund.
Doch auch diese Technik hat Nachteile, so müssen Models extra für dieses Verfahren neu erstellt bzw. angepasst werden, man kann also nicht einfach das Feature integrieren und plötzlich sehen alle (alten) Spiele besser aus. Ob Valve diese Technologie in ihren kommenden Spielen verwenden wird, ist nicht bekannt. Es handelt sich dabei um eine grundsätzliche Präsentation der Methode in Fachkreisen, nicht um eine konkrete Feature-Ankündigung für neue Source-Engine-Games.
|
Falls es unter den Lesern einen technisch versierten Menschen gibt, der sich mit der Materie gut auskennt und nicht ganz zufrieden mit der Erklärung ist, bitte entsprechend ausbessern. Wir sind ja auch keine Grafikexperten - aber grundsätzlich sollte es so stimmen.
|
|
15.02.2009, 15:07 Uhr |
|
|
Was man vielleicht herausstellen sollte: Es handelt sich nicht einfach nur um die (schon lange eingesetzten) smoothing-groups (shared normals), bei denen verschiedene Polygone auf gemeinsamen Kanten die Normalen angleichen. Bei dieser Methode würden unter anderem die Silouetten völlig unberührt bleiben und auch die Kanten selbst nur aufgeweicht, aber nicht verschwinden (was teilweise zu heftigen Beleuchtungsfehlern führt). Stattdessen scheint das Verfahren eher in Richtung von Nurb-Systemen zu gehen. Sub-Divison Modeling mit verbesserter Edge-Detection zu gehen.
|
|
15.02.2009, 15:17 Uhr |
|
|
e-freak, du hast jetzt Nurbs durchgestrichen, genau so hatte ich das ursprünglich auch fast aufgefasst - mathematische Bezier-Kurven, die aus dem Mesh in Echtzeit berechnet werden.
Das ganze Dokument ist mir aber zu mathematisch (ich versteh's nicht) - daher stellt sich mir die Frage: Handelt es sich hierbei um Bezier-Annäherungen vergleichbar mit Nurbs oder werden wirklich in Echtzeit neue Polygone hinzugefügt? Wenn ich mir so den Heavy ansehe, sieht's fast mehr wie eine Methode ähnlich der Nurbs aus.
|
|
15.02.2009, 15:58 Uhr |
|
|
Hoffentlich geht dann alles auf miener Geforce 9400 GT (1024 Mb) flüssig uhhhh.
Trotzdem find ich das ne spitzenleistung.
|
|
15.02.2009, 16:02 Uhr |
|
|
Ja, da lob ich mir doch wiedermal die modulare Source-Engine (jetzt mal völlig unabhängig davon, ob es nun in einem der nächsten Spiele Einzug findet).
Während viele andere Engine-Entwickler immer nur auf High-End-Hardware bauen und der Nutzer die Features nur mit den neuesten Grafikkartengenerationen voll genießen kann, wird hier derselbe Effekt umgesetzt, ohne dass man die neueste Hardware benötigt.
Und das beste, es ist immer noch derselbe Enginekern, ohne dass etwas komplett neues aus den Boden gestampft werden musste.
I am very impressed, Dr. Freeman!
|
|
15.02.2009, 16:06 Uhr |
|
|
Wenn ich es richtig verstanden habe versucht der Algorithmus das Model in Quads zu unterteilen um dann auf Edge-Loops entlang laufen zu können. In dem Falle ist ein Bezier möglich, das Basis-Model müsste aber dann eine sehr hohe Polygondichte aufweisen, damit eben nicht alles zu sehr "bubbelt" (Kurven zu stark aus- oder einschneiden). Außerdem weiß ich nicht wie performant Nurbs berechnet werden können, deswegen hatte ich dann doch erst an Sub-D Modeling gedacht, wobei dann ja wieder das Problem mit den Silouetten auftritt.
|
|
15.02.2009, 16:12 Uhr |
|
|
Das sieht ja wirklich gut aus. Hoffentlich kriegt man das bald integriert. Aber wenn man jedes Modell nochmal nachdefinieren muss (was ist rund, was ist kantig?), dauert das sicherlich ein bissl.
|
|
15.02.2009, 16:29 Uhr |
|
|
Benutzt das Verfahren die Tesselation Unit meiner ATI karte?
|
|
15.02.2009, 16:51 Uhr |
|
|
Hab grad in der PDF kurzt geblättert, anscheinend werden die Tesselation Units der ATI karten schon benutzt, aber es gibt anscheinend Treiber probleme, sodass es (noch?) nicht wirklich schneller ist.
|
|
15.02.2009, 16:56 Uhr |
|
|
Zitat: Original von Morpheuz Das sieht ja wirklich gut aus. Hoffentlich kriegt man das bald integriert. Aber wenn man jedes Modell nochmal nachdefinieren muss (was ist rund, was ist kantig?), dauert das sicherlich ein bissl.
| Naja eigentlich muss man ja nur die "Seams" definieren, also ähnlich wie man das bei Programmen wie Unfold3D macht, die einem das UV-Unwrapping erleichtern. Und Leute, die mit solchen Programmen gearbeitet haben, berichteten mir bisher, dass sie damit zahllose Stunden gegenüber normale UV-Unwrapping gespart haben.
Es gibt also durchaus wesentlich zeitfressendere Aufgaben beim Modeling
|
|
15.02.2009, 16:57 Uhr |
|
|
Ich versteh nur Bahnhof
|
|
15.02.2009, 17:06 Uhr |
|
|
Ist damit nicht das DX11 Feature "Hardware Tesselation gemeint?
welches der GPU ermöglicht das Polygonengitter feiner zu unterteilen (durch den Tesselationfaktor bestimmt) und somit einen höheren Detailgrad zu erreichen, ohne das es im Model vorgegeben ist (wird übringens auch in abgewandelter Form in Crysis für den Ozean verwendet).
|
|
15.02.2009, 17:20 Uhr |
|
|
also ich hoffe doch mal das des bei episode three dabei ist
|
|
15.02.2009, 17:20 Uhr |
|
|
Mhm Valve macht das mit Dx9 wofür man bei Games die nicht von Valve sind also Dx11 braucht.
Bald bringt Valve ein eigenes Betriebssystem raus
|
|
15.02.2009, 17:21 Uhr |
|
|
Das wird FakeFactory aber freuen.
Hoffentlich ist es bald verfügbar...
|
|
15.02.2009, 18:10 Uhr |
|
|
klasse sache von valve, ich finds gut wenn sie mal weitere features integrieren würden. den auch hier auf hlportal angesprochenen 3d-effekt etwa gab es in anderen spielen schon lange von sich aus, nun fügt ihn nvidea selber hinzu.
das hätte ja auch von valve kommen können, wie etwa auch ein speedtree-system, neue shader effekte und vieles andere. ich will nicht sagen das valve da völlig untätig war, aber irgendwie ziehen doch andere spiele oft vorbei, wie etwa crysis oder farcy2 aber auch u3, wenn man sich da mal die entwicklungen ansieht.
|
|
15.02.2009, 18:20 Uhr |
|
|
Zitat: Original von CarnifexX klasse sache von valve, ich finds gut wenn sie mal weitere features integrieren würden
| Also für die Orangebox Games und jetzt neulich L4D wurden doch bereits viele neue Effekte hinzugefügt und ich bin mir sicher, dass für Episode 3 wieder massig neue Features eingeführt werden.
Zitat: Original von CarnifexX aber irgendwie ziehen doch andere spiele oft vorbei, wie etwa crysis oder farcy2 aber auch u3, wenn man sich da mal die entwicklungen ansieht.
| Naja, das sind aber meiner Meinung nach *räusper* (bitte nicht hauen) alles Grafikblender, die du da nennst. Also Spiele die hauptsächlich oder fast nur von ihrer Grafik leben. Außerdem braucht man doch sehr gute Hardware, um diese Spiele auf hohen Grafikeinstellungen zocken zu können.
Ich finde nicht, dass sich das bei der Source-Engine zu langsam entwickeln würde, sondern eigentlich genau richtig. Es ist nicht Next-Gen, aber eben ausgewogen, da man bei Valve eben auch auf die Performance von Non-High-End-Rechnern Wert legt und deshalb wird auch alles erst nach und nach integriert. Finde ich jedenfalls besser, als bei den anderen Entwicklern, wo man für jeden Pups gleich wieder ne neue Engine fabriziert.
Und wie man schonmal richtig erkannt hat: Grafik ist überbewertet.
|
|
15.02.2009, 18:33 Uhr |
|
|
f**k man das wird geil!! =D hoffendlich werden auch hl2 und nachfolger damit ausgestattet und nicht nur ep3 oder portal 2 falls überhaupt.. ich meine wenn es schon ein tf2 beispiel gibt dann sollten die damit nicht sparen =D
danke für die info!
|
|
15.02.2009, 18:44 Uhr |
|
|
naja ... die meisten Entwickler coden eine "billige" Engine ... die zwar schnell entwickelt ist aber nur schwerlich weiterentwickelt werden kann.
Wenn man wie bei Valve, sich Zeit lässt und eine gute modulare Engine codet, hat man bedeutend länger was davon und im Endprinzip auch eine bessere Qualität beim Endkunden.
|
|
15.02.2009, 18:46 Uhr |
|
|
achso hier wird nur etwas automatisiert, was auch manuell getan werden könnte.
verstehe ich das richtig?
|
|
15.02.2009, 19:29 Uhr |
|
Du musst dich einloggen, um Kommentare schreiben zu können Du hast nicht die erforderlichen Rechte einen Kommentar zu schreiben. Solltest du eine Account-Strafe haben, findest du nähere Informationen in deinem Profil unter Verwarnungen.
|
|
|
|