Entwickler: Kantenlos: Valve setzt Dx11-Feature in Dx9 um
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...
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.
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.
____________________________________
iGude
[Beitrag wurde 1x editiert, zuletzt von e-freak am 15.02.2009, 16:24]
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.
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.
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.
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.
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.
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
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).