Startseite Kurzfilme IT-Projekte
"Der Mensch wird geboren, um zu leben und nicht etwa, um sich auf das Leben vorzubereiten." [Boris Leonidowitsch Pasternak (1890-1960)]
> > 3D-Modelling

4. Erstellung eines Models

Vorarbeit, Modelling in 10 Schritten, Skinning

4. Erstellung eines Models

 

4.a Vorarbeit

Bevor man das 3D-Programm überhaupt startet und wild drauf los designed, sollte etwas Vorarbeit geleistet werden.

Wichtig ist vor allem, einige Fragen im Vorfeld zu klären, um unnötige Probleme zu vermeiden:

 

-         Low Poly oder High Poly?

Wird das Model später in Echtzeit gerendert (Spiel, Simulation) oder als Bild/Video vorgerendert?

 

Im ersten Fall ist es wichtig zu beachten, dass mit steigender Polygon-Zahl auch die Ansprüche an den Rechner des Endanwenders steigen, da mehr Rechnenoperationen durchgeführt werden müssen. Somit wäre Low Poly empfehlenswerter. Wobei „Low“ (= gering) selbstverständlich relativ zu sehen ist. Werden nur wenige Objekte benötigt, können diese jeweils etwas mehr haben, als wenn es sich um viele Objekte handelt.

 

Im zweiten Fall spielt die Anzahl der Polygone eine eher zweitrangige Rolle, denn hier muss der Rendervorgang nur ein Mal beim Ersteller erfolgen. Der Endanwender hat es dann nur noch mit einer Bild- bzw. Videodatei zu tun, die keine Informationen über die ursprüngliche Anzahlt der Polygone beinhaltet. Jedoch steigt mit der Komplexität des Models die Renderdauer, was sich bei sehr komplexen und langen Videosequenzen sehr viel ausmachen kann. Benötigt man z.B. 3 Minuten pro Bild würde das bei 25 Bildern pro Sekunde und einer Länge von einer Minute beachtliche 75 Stunden zum Rendern benötigen. Diese Rechenarbeit lässt sich zwar auf mehrere Rechner verteilen, oder im professionellen Bereich gar über Rechenzentren erledigen, allerdings ist die Zeit- und Kostenfrage nicht unerheblich.

Es gilt immer: So viel wie nötig - so wenig wie möglich.

 

-         Statisch oder animierbar?

Muss ein Objekt später animiert werden, so sollte es in einer Ausgangslage erstellt werden, aus der man es ohne Probleme bewegen kann. Dient es nur als statisches Objekt, so kann es gleich in der der Endposition geformt werden.

-         Wäre eine Vorlage (Skizze, Foto, …) sinnvoll?

In vielen Fällen kann sich eine grobe Skizze oder ein Foto als sehr nützlich erweisen, da man dann von Beginn an gewisse Richtlinien hat und keine Probleme auf Grund von falschen Proportionen oder fehlenden Details bekommt.

 

-         Organisch oder industriell?

Soll das Model organisch und natürlich wirken (Person, Tier, Alien, Pflanze) so kommt es nicht so sehr auf die 100%ig korrekte Position der einzelnen Vertices an. Modelliert man hingegen industriell gefertigte / künstliche Objekte (Möbel, Auto, Raumschiff, Gebäude) so sind exakte senkrechte und parallele Linien sehr von Bedeutung.

 

-         Einsparungen von Polygonen durch Texturen möglich?

Modelliert man im Low Poly Bereich, so muss man versuchen, so viele Polygone wie möglich einzusparen. Dies lässt sich oftmals, besonders bei kleinen Details, durch geschickte Texturierung bewerkstelligen. Eine Gürtelschnalle, Schnürsenkel oder ein Riss in der Wand beispielsweise lassen sich sehr gut durch eine Textur darstellen.

 

Im nachfolgenden Beispiel soll ein Eisbär für ein Computerspiel erstellt werden.
Die Antworten auf diese Fragen lauten somit:

-         Low Poly (maximal 300 Vertices), da für ein Computerspiel

-         Zwar wird der Eisbär vorerst nur statisch benötigt, jedoch wäre es besser, die Option zum Animieren offen zu lassen und ihn in einer Standartpose zu erstellen

-         2 Skizzen, Profil- und Frontansicht

-         Organisch, da es sich hierbei um ein Tier handelt

-         Fell, Augen & Schnauze werden als Textur erstellt um Polygone zu sparen


4.b Modelling

1. Bevor es mit dem eigentlichen Modelling losgeht, werden zwei grobe Skizzen eines Eisbären im Profil und von vorne erstellt, an denen man sich später orientieren kann. Dies kann in jedem beliebigen 2D-Grafikprogramm erfolgen. Wichtig ist, dass die Bilder anschließend in einem gängigen Grafikformat wie JPG/BMP/PNG/etc. gespeichert werden.

 

Diese Bilder werden nun in MilkShape über Rechtsklick auf das entsprechende Fenster ® „Chose Background Image…“ importiert.

2. Nun müssen in Handarbeit an markanten Stellen Vertices vereilt werden, die sich an den Skizzen orientieren sollten. Dabei ist es nicht sonderlich schlimm, wenn das Model Kanten hat. Diese sind im Endeffekt unvermeidbar, sodass man nur versuchen kann diese auf ein erträgliches Maß zu reduzieren, wobei das gesetzte Ziel von 300 Vertices nicht überschritten werden sollte.

 

Es sind einige zusätzliche Punkte notwendig, die nicht auf der Skizze ersichtlich sind um vollständige, abgeschlossene Körperteile zu erhalten.

 


3. Als nächstes müssen aus diesen Punkten Flächen werden. Dies kann über zwei Möglichkeiten erfolgen:

1. Über das „Face“-Werkzeug jeweils drei Vertices hintereinander, gegen den Uhrzeigersinn anklicken.

2. Durch selektieren von 3 Vertices mit dem „Select“-Werkzeug und anschließendem Drücken der Taste F

Die Vorgehensweise ist Geschmackssache und kann von je nach Gefallen gehandhabt werden. Empfehlenswert ist das Wechseln in den „Smooth Shaded“ Modus, sowie die Aktivierung von „Draw Backfaces“ um die Ausrichtung der Vertices sehen zu können.

 

 

Wurde versehentlich eine zugewandte Rückseite erstellt, lässt sich diese im noch selektierten Zustand problemlos Durch drücken von Strg+Shift+F (“Reverse Vertex Order“) umkehren

-> Strg+Shift+F ->

 

 

Auf diese Weise werden nun die Gliedmaßen geformt.
Nach diesem Durchgang sind diese jedoch noch absolut flach, da alle Punkte in nur einer Ebene liegen.


4. Aus diesem Grund kommt nun das „Extrude“ Werkzeug zum Zuge. Dazu werden zuerst alle Vertices des Hinterbeines selektiert und dann (mit aktivierten Extrude-Button) in der Front-Ansicht etwas nach außen gezogen und anschließend über „Scale“ etwas verkleinert

 

 

 

Textfeld: Der aktuelle Stand im 3D-Fenster betrachtet

Da die extrudierte Fläche deckgleich mit dem Ursprung ist, wirkt dies sehr künstlich und eher roboterhaft. Deshalb muss sie noch bearbeitet werden, indem man einige der Vertices zusammenfasst und verschiebt.

-> Strg+N ->

Dass die Schattierung zu diesem Zeitpunkt noch absolut nicht stimmt, ist nicht wichtig; dies wird erst im Anschluss korrigiert. Zunächst die Vertices über das „Groups“-Menü zu einer Gruppe zusammengefasst und mit einen kennzeichnenden Namen (z.B. bein_hr) versehen. Über das gleiche Menü wird diese Gruppe zusätzlich zu einer Schattierungsgruppe hinzugefügt (Smoothing Goups ® Assign ® 1) und zum Schluss alle doppelten Vertices verschmolzen (Strg+W)

->


5. Das gleiche wird nun mit dem Vorderbein gemacht, sodass als Zwischenstand folgendes vorhanden ist:

Im nächsten Schritt werden die Beine in der Frontansicht in die richtige Position verschoben, sodass sie in etwa zur Skizze passen.

 

6. Mit dem Körper wird nun auf gleiche Weise verfahren, wie mit den Beinen: Vertices zu Faces verbinden, über die Front- und Top-Ansicht nach außen verschieben. Stellt man fest, es fehlt an der einen oder anderen Stelle noch ein Vertex, da sich sonst keine Rundungen nach außen erstellen lassen, so kann dieser ohne Probleme hinzugesetzt werden.

 


7. Anschließend mit dem Kopf: Vertices setzen, verbinden, extrudieren, nachkorrigieren,


Gruppe erstellen, benennen, zu Smoothing Group 2 hinzufügen & welden (Strg+W), mit dem Körper verbinden.

Dass bis jetzt alles als Hälfte entstand, war Absicht. Denn es ist viel einfacher und besser, spiegelbare Objekte zur Hälfte zu erstellen, duplizieren, spiegeln Schnittstelle verbinden und Feinänderungen vorzunehmen. Was zu diesem Schritt noch fehlt, sind vollständige Gliedmaßen und werden deshalb nun vervollständigt.

 

8. Zwei Tipps:

1. Fallen übrig gebliebene Vertices auf, so lassen sich diese durch einen Trick leicht entfernen. Dazu selektiert man alle Faces (Select®Face®Rahmen um alles ziehen) versteckt nun diese Auswahl (Strg+H) und selektiert und entfernt nun die übrig gebliebenen Vertices. Jetzt nur noch das versteckte sichtbar machen (Strg+Shift+H)

 

 

 

2. Es ist sinnvoll ab und an in den „Flat Shaded“-Modus zu wechseln, da man so verdrehte Faces besser erkennen kann. Diese dann einfach selektieren und über Strg+Shift+F wenden.


9. Sobald der halbe Eisbär fertig ist, kann gespiegelt werden.

 

Alles selektieren, duplizieren (Strg+D), spiegeln (Menü: Vertex ® Mirror Left <-->Right)

Dort wo die Vertices nicht exakt auf der x-Achse lagen, weil man unvorsichtig verschoben hat, ergeben sich nicht saubere Kanten.

 

In diesem Fall am Kopf:

Dies ist jedoch nicht schlimm, da man diese Vertices einfach selektieren und über einander schieben kann (Strg+N).

 

An einigen Stellen kann es sinnvoll sein von Hand nachzumodellieren, da kein Lebewesen exakt spiegelgleich ist. So wäre zusammenfassen, erweitern oder verschieben, je nach ästhetischen Aspekten zu empfehlen.

 


10. Zum Schluss alles selektieren (Strg+A) zu einer Smoothing Group hinzufügen, da es sich nun um nur noch ein einziges Objekt handelt, das keine harten Schattengrenzen erfordert, (Smoothing Goups ® Assign ® 1) und welden (Strg+W).

 

 

Das Ergebnis kann sich schon sehen lassen.

Die Model Statistics lassen sich über „Menü: Tools ® Model Statistics“ aufrufen.

Unter anderem findet man hier „Triangles“ (=Dreiecke).
Die Vorgabe von maximal 300 Faces wurde also eingehalten.

 


4.c Skinning

Als letzter Schritt wird dem Modell eine Textur verpasst, die den Bären mit Fell, Augen und Schnauze ausstatten wird.

Die Textur muss eine Grafikdatei, die als Höhe und Breite eine 2er-Potenz (2^x) hat, da es ansonsten zu Darstellungsfehlern kommen kann. (Bsp.: 128x128, 256x64, 512x512, …)

Normalerweise ist es üblich, die Textur so zu erstellen, dass man jede Gruppe (Körperteile, Kleidung, Zubehör, etc.) einzeln in der Grafikdatei abbildet und diese dann separat darauf verteilt. In diesem Fall ist es jedoch deutlich ratsamer die Textur als nahtlose Fellgrafik zu erstellen und einen Bereich für die Kopfgrafik zu belassen, da sich das Fell kantenlos über den gesamten Körper erstreckt.

 

Über Materials ® New ® <none> ® Grafikdatei wird nun die neue Textur angelegt.
Die unterschiedlichen Gruppen werden nun nicht mehr benötigt und können über Strg+A (alles selektieren), Groups ® Regroup zu einer einzigen Gruppe zusammengefasst werden.

Nun kann man die Textur dieser Gruppe über Materials ® Assign zuweisen.

Jetzt muss diese Textur noch richtig auf dem Model verteilt werden. Dies geschieht im „Texture Coordinate Editor“ (Strg+T)

Hier wird die Sichtperspektive „Left“ gewählt, da die Textur von der Seite auf das Model übertragen wird.

Anschließend zieht man mit dem „Region“-Werkzeug einen Rahmen um den Bereich, den man für die aktuelle Gruppe verwenden möchte. Da es nun nur noch eine Gruppe gibt, wird der Rahmen um das gesamte sichtbare Bild gezogen.

 

 

 

 

Ein Klick auf „Remap“ projiziert nun das Gittermodel auf die Grafik. Es ist nicht sonderlich wichtig, dass dabei die Proportionen nicht stimmen. Im Endeffekt wird die Grafik über das Model gestreckt, sodass dies beim Fell nicht auffallen wird.

Ist bei „Redraw“ ein Haken gesetzt kann man die Änderungen in Echtzeit im 3D-Fenster mitverfolgen (vorausgesetzt dort ist der Darstellungsmodus „Textured“ eingestellt).

 

 

 

 

 

 

Zum Schluss müssen nur noch die Augen und die Schnauze auf die richtige Position gebracht werden. Dazu selektiert man in einem der 2D-Fenster den Kopfbereich, sodass im Textureneditor nur noch dessen Texturpunkte zu finden sind. Nun definiert man einen neuen Bereich über „Region“ um die rechte untere Ecke herum, wählt „Front“ und klickt auf „Remap“.

Die automatische Projektion ist selten ideal, sodass man die Punkte nur noch nach Gefallen zu Recht schieben muss, was durch die Echtzeitvorschau im 3D-Fenster kein Problem darstellen solle.


Ein letzter prüfender Blick

und das Model ist fertig gestellt!

 

… und befindet sich bereits wenig später im Spiel.


 

 

 

Erstellt am 15.07.04
von Ilja Herlein
http://www.iljaherlein.de

 

Quellen

 

Sämtliche Informationen stammen aus dem eigenen Wissen.

In seltenen Fällen wurde die „MilkShape3D Helpfile“ zur Hilfe genommen.

 

http://www.swissquake.ch/chumbalum-soft/files/download.php?file=MS3DHelp.chm

von

http://www.MilkShape3d.com/

 

 

 

Bildquellen

 

Selbst angefertigte Screenshots aus der Software MilkShape3D 1.7.2

Nähere Informationen unter http://www.MilkShape3d.com/

 

2 Bilder aus der Google Bildersuche zur Untermalung

http://www.google.de/imghp

 

 

 

© Ilja Herlein 2004 - 2012