Techblog

Unser Artikel 19 der Kinderrechtskonvention: von der Idee zum Modell

 und Maya Pillai

10. März 2020

Am 20. November 1989 wurde das Übereinkommen über die Rechte des Kindes von der UN-Generalversammlung angenommen. 30 Jahre später wird in Hamburg der “Platz der Kinderrechte” eingeweiht.

Zu diesem Anlass initiierte der Kinderschutzbund die Errichtung einer „verborgenen Statue“ – verborgen deshalb, weil die Statue eigentlich nur aus einem Würfel besteht und ihre wahre Form erst durch den Einsatz einer App offenbart: Es handelt sich um eine Augmented-Reality-Statue. Auf den Würfel werden verschiedene Modelle projiziert, genau genommen 41 Statuen, eine pro Artikel in der UN-Kinderrechtskonvention.

Wir entschieden uns, einen Beitrag in Form einer digitalen 3D-Statue zu leisten. So entstand unsere Interpretation von Artikel 19 über den „Schutz vor körperlicher und geistiger Gewaltanwendung und Misshandlung”.

Das Hauptelement unserer Statue ist ein Sockel mit Kinderspielzeug, symbolisch für die Unversehrtheit des Kindes. Ein beschützendes Paar Flügel wehrt alle Bedrohungen - die Stacheln - ab. Im Folgenden beschreiben wir die Entstehung von der Idee zum Modell.

Abbildung 1: Statue "Wings of Protection"

 

Konzeption

Die Anforderungen an ein 3D-Modell  sind vor allem Performanz und Optik. Beides hängt maßgeblich von der Polygonanzahl des Modelles ab: je mehr, desto realistischer, aber desto mehr Rechenleistung wird auch für die Darstellung benötigt.

Der maximale Polygoncount wurde unter Berücksichtigung unserer eigener Erfahrungen und der Angaben von St. Elmo’s - den Entwicklern der AR-App, die die Statuen zeigen wird - auf ca. 5.000 gesetzt. Aufgrund dieser Limitierung entschieden wir uns für ein sog. Low-Poly-Modell. Low-Polygon beschreibt einen Modellierstil, bei dem zu Gunsten der Performanz bewusst auf Details, damit aber auch auf Realistik, verzichtet wird.

Um die Einbußen beim Detailgrad gering zu halten, haben wir das Low-Poly-Modell bei den Texturierungen mit einem High-Poly-Modell kombiniert. 

Abbildung 2: Low-Poly vs. High-Poly

Low-Poly Erstellung

Beim Modellieren sollte man stets darauf achten, im Ursprung zu arbeiten. Dies ist vor allem für den späteren Export relevant, jedoch auch, wenn nachträglich weitere Objekte in das File integriert werden, die am Ende zusammengeführt werden sollen, beispielsweise weil mehrere Künstler am Projekt mitarbeiten. Des Weiteren muss beachtet werden, dass die lokalen Achsen der Einzelteile des 3D-Objekts parallel zu den globalen Achsen der Szene stehen, damit es bei Modifikationen nicht zu Fehlern kommt. Eine Rotation sollte immer nach Ende des Modellierens sattfinden.

Wir beginnen mit dem  schwierigsten und wichtigsten Merkmal: Den Flügeln. Als Referenz dient eine Plane mit 2D-Textur im Hintergrund der Szene. Die Form der Flügel wird anhand der Vorlage mit Polygonen, angefangen mit einer Plane, deren Seiten immer wieder extrudiert werden, grob nachgebildet. Da hierdurch lediglich eine flache Ebene mit Umrissen der Flügel entstanden ist, bedarf es eines Modifiers. Es eignet sich der sog. Shell (engl. für Hülle), welcher der Plane eine festgelegte Dicke verleiht. Von Anfang an wurde darauf geachtet, dass die einzelnen Federn eine saubere Topology haben: An Stellen, welche später einer besonders großen Krümmung ausgesetzt sein werden, müssen genug Edges, beziehungsweise Polygone, vorhanden sein, da es sonst zu Fehlern durch Modifier kommen kann.

Abbildung 3: Planare (links) und unplanare (rechts) Face

Bend, ein weiterer Modifier, krümmt das Modell. Gibt es an stark zu krümmenden Stellen zu wenige Polygone, entstehen unplanare Faces, die für eine falsche Darstellung in der Engine verantwortlich sein könnten. Man spricht von einer unplanaren (oder non planar) Polygonface, wenn diese mehr als drei Vertices besitzt, die nicht in der gleichen Ebene liegen.

Die Federn werden auf unerwünschte n-Gons (Polygone mit mehr als vier Vertices) überprüft. Überflüssige Polygone, die nicht sichtbar sind, werden manuell entfernt. Es kann passieren, dass an einigen Ecken doppelte Vertices vorhanden sind, was u.a. zum Bruch des Edgeflows, also “Löchern” in der Oberfläche, führt. Diese kann man mit dem Weld-Tool (engl. für anschweißen) von 3ds Max beseitigen. Die einzelnen Objekte können dann durch ein “Collapse Mesh” zusammengefügt werden. Ist die Flügelhälfte in ihrer Grundform fertig, wird sie mit dem Symmetrie-Modifier an der z- Achse gespiegelt. Für eine unabhängige Nachbearbeitung werden beide Flügel voneinander getrennt.

Sitzt der Pivot an der richtigen Stelle, wird einer der Flügel mit einem Twist- und weiteren Bend-Modifier in die schützende Position gebracht. Ist man mit der Form zufrieden, kann der Modifier-Stack kollabiert werden. Es ist absolut empfehlenswert, immer eine Sicherheitskopie des Modells zu machen, bevor irreversible Aktionen wie diese durchgeführt werden!

Für die "Bedrohung" wird eine einzelne Stachel aus einem Cube modelliert (sog. Subdivision oder Box Modelling). Das Array-Tool eignet sich hervorragend für Fälle wie diesen, wo mehrere gleiche Objekte vervielfacht und vereteilt werden sollen und sparte uns an dieser Stelle viel Zeit. Eine individuelle Bearbeitung, z.B. die Biegung einzelner Spikes, ist im Anschluss natürlich noch möglich.

Alle anderen Elemente der Statue wurden mit minimalen Abweichungen auf dieselbe Art durch Box oder Surface Modelling erstellt.

Zum Schluss werden alle Einzelobjekte, in unserem Fall die von beiden Künstlerinnen,  in einem 3ds Max-File vereint. Dank vorheriger Absprachen zu Einheiten, Polycount und der Ex- und Importfunktionalität von 3ds Max ist dies problemlos möglich und es muss lediglich richtig skaliert und platziert werden. Vor dem nächsten Schritt wird über jedes Object ein Reset xForm Modifier gelegt. Nachdem man ein Objekt skaliert oder rotiert hat, setzt dieser Modifier diese Werte  im Parameterfenster wieder auf 0, was nicht nur für den späteren Import in die Game Engine relevant ist, sondern auch für den UV Unwrap, weil die UV-Faces ansonsten verzerrt dargestellt werden können, was sich negativ auf die Textur auswirkt.

Vorbereitung für die Texturierung

Unsere Figur soll später aus wenigen Polygonen bestehen. Als Vorbereitung für die spätere Texturierung haben wir trotzdem ein High-Poly-Modell erstellt: So können wir den Texturen durch Baking dennoch einen hohen Detailgrad geben.

In 3ds Max gibt es drei verschiedene Möglichkeiten, ein 3D-Objekt zu duplizieren. Neben der normalen Kopie gibt es die bereits genannte Referenz. Diese ist abhängig von dem originalen Mesh aus dem diese erzeugt wurde. Wird etwas in dem Original verändert, wirkt es sich auf die Referenz aus, aber nicht umgekehrt. Dadurch behält in diesem Fall das Original der Statue die Low-Poly-Eigenschaften ( also keinen Turbosmooth Modifier). Die dritte Option ist die Instanz. Sie ist der Referenz ähnlich, mit dem Unterschied, dass sich Modifikationen in beide Richtungen auswirken.

Abbildung 4: Auf das lila-farbene Objekt wird jeweils ein Turbosmooth gesetzt. Bei der Instanz ändert sich auch das Original (grau), bei einer Referenz nicht.

Aus dem Low-Poly-Mesh wird eine Kopie erstellt, aus der wiederrum eine Referenz gezogen wird. Über die Referenz wird ein Turbosmooth-Modifier gelegt. Der Turbosmooth teilt jede Face jeweils durch vier. Die Kopie wird für das Einsetzen von Support Edges, also Kanten nahe der Mesh-Kanten, verwendet. Die Kanten der Referenz werden so genauer definiert, da der Turbosmooth sie bedingt durch die höhere Anzahl an Faces weniger ausgleichen kann, was widerum zu einem besseren Ergebnis beim Normal-Map-Bake führt. Für diese Methode des Erstellens eines High-Polys ist eine gute Topology Voraussetzung. Triangles und n-Gons sollten bestenfalls nicht im Mesh vorhanden sein, da sie den Edge Flow durchbrechen.

Unser Fazit

Mit der Kombination aus Low-Poly-Modell und High-Poly-Modell haben wir einen für uns zufriedenstellenden Spagat zwischen Performanz, die gerade bei einer Smartphone-Anwendung wichtig ist, und dem Detailgrad, geschafft. Das hat uns eine gute Grundlage gegeben für die nächsten Schritte auf dem Weg zu „unserem“ Artikel 19 - der Texturierung.

Neuen Kommentar schreiben

Public Comment form

  • Zulässige HTML-Tags: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd><p><h1><h2><h3>

Plain text

  • Keine HTML-Tags erlaubt.
  • Internet- und E-Mail-Adressen werden automatisch umgewandelt.
  • HTML - Zeilenumbrüche und Absätze werden automatisch erzeugt.

ME Landing Page Question