Jeder, der Quake Champions liebt, ist beeindruckt von den hochwertigen Grafiken, Light Maps und Charakteranimationen. Obwohl sie beim Painting der Textdetails hervorragende Arbeit geleistet haben, bestehen die meisten ihrer Figuren nur aus mehreren hundert Dreiecken, die keine sehr detaillierte Geometrie erfassen können.
In den letzten Jahrzehnten haben Subdivision Surfaces sowohl bei Akademikern als auch bei Industrieexperten viel Aufmerksamkeit erregt, die Mitarbeiter in der Filmindustrie wenden sogar Subdivision Surfaces an, um komplexe Charaktere und flüssige Animationen zu erstellen.
In dem folgenden Beitrag werden wir ihnen kurz und bündig erklären, was Subdivision Surfaces sind und warum Sie diese im Rahmen ihrer Spiele-Programmierung verwenden sollten.
Was sind Subdivision Surfaces?
Die Idee der Subdivision Surfaces wurde 1978 von Catmull & Clark sowie Doo & Sabin eingeführt. Im Gegensatz zu herkömmlichen Spline-Oberflächen werden Subdivision Surfaces algorithmisch definiert. In letzter Zeit gab es viel Aktivität in der Forschungscommunity der Computergrafik und es wurden bedeutende Fortschritte beim Rendern, Texture-Mapping, Animieren und Kompremieren von Subdivision Surfaces erzielt. Sie wurden auch in der Produktion von Geris Spiel und A Bug`s Life verwendet. Geris Hände, Kopf, Jacke und Hose wurden jeweils mit einem einzigen Subdivision Surface modelliert. Die Flächen und die Hände von Flick und Hopper wurden ebenfalls mit Subdivision Surfaces modelliert. Momentum baut auf dem computergestützten geometrischen Design (CAGD) auf, um Subdivision Surfaces zu einem der Modellierungsprimitive zu machen.
Warum Subdivision Surfaces?
Subdivision Surfaces liegen irgendwo zwischen Polygonmeshes sowie Patchflächen und bieten einige der besten Eigenschaften. Die gut definierte Flächenormalität ermöglicht es, sie glatt darzustellen, ohne das facettierte Aussehen einer polygonalen Geometrie mit niedriger Polygonanzahl und sie kann glatte Oberflächen mit beliebiger Topologie (mit Löchern oder Grenzen) darstellen, ohne die Einschränkung in Patches, bei denen die Anzahl der Spalten und Zeilen identisch sein muss, bevor zwei Patches zusammengeführt werden können.
Zweitens werden Subdivision Surfaces durch rekursive Aufteilung und Mittelwertbildung einfach konstruiert: Bei der Aufteilung werden vier neue Flächen durch Entfernen einer alten Fläche erzeugt, bei der Mittelwertbildung wird ein gewichteter Durchschnitt der benachbarten Nodes für die neuen Nodes gebildet. Da die grundlegenden Operationen so einfach sind, sind sie sehr einfach umzusetzen und effizient auszuführen. Auch aufgrund der rekursiven Natur der Subdivision ist es selbstverständlich, dass die Subdivision die Kontrolle der Detaillierungsebene durch adaptive Subdivision ermöglicht. Auf diese Weise können Dreiecksbudgets in Regionen ausgegeben werden, in denen mehr Details erforderlich sind, indem sie weiter unterteilt werden.
Grundlagen zu Subdivision Surfaces.
Der einfache Splitting-Prozess beginnt in der Regel mit einem groben Kontroll-Mesh, die mehrmalige Iteration dieses Prozesses führt zu so genannten semi-regular Meshes. Ein Node ist regular, wenn es sechs Nachbarn (im Dreiecksmesh) und vier Nachbarn (im Vierecksmesh) hat. Vertices, die nicht regular sind, werden als extraordinary (außergewöhnlich) bezeichnet. Meshes, die aus Standardmodellierungspaketen oder 3D-Scangeräten stammen, haben in der Regel keine regelmäßige Struktur, daher ist es notwendig, diese unregelmäßigen Meshes in halben Regelmäßigkeiten zu konvertieren, ein Prozess, der als Remeshing bezeichnet wird.
Wir möchten die Thematik an dieser Stelle nicht weiter vertiefen, sondern wollten nur kurz erklären „Was es mit Subdivision Surfaces auf sich hat und warum auch Sie diese Technik im Rahmen ihrer Spieleprogrammierung nutzen sollten“. Falls noch Fragen offen geblieben sein sollten, können Sie sich gerne über das Forum an unseren Fachexperten Ismail wenden.
Vielen Dank für ihren Besuch.