Schlagwort-Archive: Skinning

The Silurian Sea – Scorpion Animation

The swim loop

Als ich das erste mal darüber nachgedacht habe wie ich das Vieh riggen soll war schnell klar das so viel wie möglich automatisiert laufen muss. CAT ist dafür ein wunderbarer Ansatz, auch wenn es ein paar Major Bug’s hat. Also erstellte ich mir in einem leeren CAT-Operator ein eigenes, passendes Rig mit entsprechend vielen Armen und Beinen.

Mit der Default CAT-Motion kommt man bei einer Schwimmbewegung leider nicht weit (damit krabbelt er mehr). Trotzdem ist der CAT-Motion-Layer die richtige Wahl und nachdem man etliche Kurven verschoben und neu skalliert hat wird aus dem Krabbeln ein Schwimmen. Diese Basisbewegung ist der Grundstein für alle Animationen des Skorpions. Er wird dann noch entlang eines Pfades animiert und bekommt die zum Shot passende Geschwindigkeit. Letzte Feinheiten korrigiere ich nochmals mit einem extra Animation-Layer. Wenn eine Animation fertig ist wird diese per PointCache auf der Platte gespeichert und kann dann in der Masterszene geleden und positioniert werden.

Medieval Character + IdleAni

Wilhelm der Burgherr

Kleine, kurze Zwischenprojekte machen mir immer wieder Spaß. Man hat nach ein, zwei Tagen schon ein brauchbares Ergebnis und kann sich mal wieder mit einer 3D-Pipeline auseinandersetzen, quasi um sein Wissen mal wieder aufzufrischen.

Hier entstand nun in zwei Abenden ein kompletter Charakter mit ersten Animationen. Ziel des Ganzen war Alles soweit auszuarbeiten das ein .X-Modell exportiert wird das dann in DarkBasicPro weiter verwendet werden kann. Das .X-Format ist ja ein Urgestein der 3D Spiele und birgt so einige Tücken, ich hatte schon alle möglichen Fehler, von falsch exportierten Mappings bis hin zu falschen interpretationen der Animationen und auch so richtig zerschossene Modelle. Die magische Formel wie funktioniert habe ich auch nicht, aber wenn man sehr sauber arbeitet und Alles als Meshobjekt hält funktioniert es irgendwie.

Mein Character sollte eine interessante Mischung aus realem Menschen und Comicfigur sein, als Vorlage dienten mir die Figuren aus “Monkey Island 3″ mit ihren langen dünnen Beinen. Also wurden kurzerhand ein paar Skizzen gemacht und angefangen einen sympatischen alten Burgeherren zu modellieren. Schlussendlich brauchte ich ca. 2.800 Polygone, was ziehmlich wenig ist und mit Sicherheit flüssig in der Gameengine läuft.

Wenn man einmal soweit ist, kann man das Objekt duplizieren und beginnen das HighRes-Modell daraus zu entwickeln. Ich entschied mich, dass diesmal auch gleich mit in Max zu machen, da einerseits recht viele Cutins und Zusatzobjekte das HighRes ausmachen und 3dStudio ja auch ganz gute Skulptingtools bereitstellt. Oben seht Ihr ja die zusätzlichen Falten, Nähte und Knöpfe – das Modell hat in dieser Form rund 550.000 Polygone.

Realtime Modell und Shader

Nur ein hübsches Modell allein macht ja noch keinen Gamecharacter. Und so ist es wichtigt das ein sauberes Mapping die Texturen zuweist, die Details des HighRes in eine NormalMap gebaked werden und Effekte wie Ambient Occlusion oder Global Illumination vorberechnet werden und dann mit in die Textur integriert werden.

Für den Shader bietet es sich an ein DirectX Material zu erstellen, dass dann als .fx oder . hlsl exportiert wird und als solche auch gleich wieder in der GameEnginge geladen werden kann. 3ds Max bietet hervoragende Möglichkeiten diese Shader (ohne große Programmierkenntnisse) zu erstellen und kann auch Standartmaterialien sauber umwandeln. Der große Vorteil der Shadererstellung in Max ist, dass man dort im Viewport schon eine sehr genaue Dartellung des Materials erhält, die mit der in der Engine fast 1 zu 1 überein stimmt.


Unwrapping and Texturing

Ich will hier kurz nochmal auf die Texturen eingehen. Also das Unwrapping ist eigentlich per Hand in Max erstellt, Ein paar mal Peltmapping und hier und da relaxen, alles schön nebeneinander, kein Ding. Die Difuse-Textur war schon etwas meh Arbeit, sie ist ganz klassisch in Photoshop per Hand gepaintet und wird durch die berechneten AO- und GI-Maps noch nachbeleuchtet. Die NormalMap entsteht über einen Projection-Modifier und wurde auch in Photoshop noch etwas verfeinert.


Idle Animation’s

Letzte große Hürde auf dem Weg zu DrakBasic sind die Animationen. Dafür muss erstmal ein RIG her und mit einem Biped gehts schön schnell. Dieses wird dann auf den Character geskinnt und bekommt noch ein paar Zusatzbones.

Für den Anfang und fürs Testen reichen erstmal ein paar loopfähige Idle Animationen wie “In der Gegend rumstehn” und “Laufen”. Für jede Animation wird eine eigenständige .X-File erzeugt die dann in der Engine angespochen, abgespielt und überblendet werden.

Architaction – Animation

Architektur die wächst und gedeiht

Nach dem alle Kameras für die Szenen getrackt sind und soweit stimmen kann ich anfangen alle Modelle in der Szene zu platzieren und zu animieren. Diese Aufgabe splittet sich hier in zwei Hauptbereiche, einerseitz die “Virtuelle Landschaft”, die später auch gerendert wird und die Nachstellung des Charakters, der später den Schatten und die Reflektion des Menschens in der virtuellen Welt erzeugt.

In den Landschaftsobjekten sin jede Menge kleine Animationen versteckt, so ist Beispielsweise die Wasseroberfläche mit ein paar kleinen Reactorsimulationen animiert, die Entstehung der Landschaft ist eine animierte Textur die auch das Auftauchen der gescatterten Baummodelle steuert, die Windräder wachsen zeitversezt aus dem Boden und drehen sich im Wind und das auftauchen der Gebäude wurde handanimiert.

Ich als Char

Den hier verwendetten Charakter habe ich recht gut an einem Abend animationsfertig bekommen. Da er nicht direkt gerendert wird konnt ich auch auf viele Details verzichten und das eher grobe Skinning (das auch noch einige Fehler verursacht) ist halb so wild. Wichtig war das sich der Kerl schnell und einfach nach dem Backplate animieren lässt – das Biped bietet sich hier an und muss kaum modifiziert werden. Nach so einigen Tagen Handanimation hab ich zwar Alles, aber mir reichts auch erstmal.

Natalie – Morphing

Dynamisches Morphen – FaceRIG

Um die Mimik des Gesichts anzugehen entschied ich mich diesmal für den etwas ungewöhnlichen Weg, dass Gesicht selbst zu RIGen. Ich will ja auch öffter mal neue Wege für mich austesten und dieser erweist sicht als nicht ganz unbrauchbar.

Da es nich all zu viel Sinn macht die vielen Bones des Gesichts direkt an der Figur zu haben, werden sie auf ein zweites Mesh geskinnt und per Morpher auf die Figur übertragen. Da all meine Bones animiert werden können und hier keine feste Pose zum einsatz kommt ist dieser Morphtarget dynamisch.

natalie_face_morph

Bones und Controler

Als Bones entschied ich mich für Splineobjekte, da sich diese sehr genau auf dem Mesh platzieren lassen und ihre Kontrollgenauigkeit durch die einzelnen Bezierpunkte perfekt für da Gesicht ist.

Oben seht ihr für welche Kurven ich mich entschied um möglichts viele Mimiken ansteueren zu können.

Die einzelnen Bonesplines werden dann durch Instanzen angesteuert um dies wiederum vom Mesh zu trennen. Über Vertexanimationen ließe sich dann das Gesicht über einen längeren Zeitraum steuern.

natalie_face_skin

Skinnen

Die einzelnen Bones werden wieder über den Skinmodifikator auf das Mesh angewannt, wobei der Vorgang der gleich wie beim Körper bleibt ( Envelops, PaintWeights, Abs. Vertex).

Natalie – RIG

natalie_biped

Biped

Nun kommt langsam Bewegung ins Spiel …

Nach den ewigen Vorarbeiten sollte es nun auch mal einen deutlichen Schritt nach vorne gehen und so hab ich die Texturierung erstmal hinten angestellt und mich dem RIG gewidmet. Da es meiner meinung nach ein spitzen Setup ist fiel meine Wahl auf das in Max vorhandene Biped. Die Keyfunktionen und Möglichkeiten zur Speicherung von Posen und Animationen als .bip-Files machen viele Dinge einfacher und so kann man endlich mal etwas Zeit sparen.

Das klassische Biped erhielt die von mir gewünschten Boneunterteilungen und wurde dann meinem Mesh angepasst.

natalie_skin_haut

Skinnen

Ich erwähn mal kurz das ich einen ersten Versuch mit dem Physique-Modifikator gewagt habe, das stellte sich aber schnell als zu ungenau und schlecht kontrolierbar herraus.

Dann nach einer Zigarette und ein wenig Mut folg das Teil raus und der Skin-Modifikator sollte die Sache retten. Nach und nach wurden die ganzen Envelops anhand von Hartposen (maximale Auslenkungen der Gelenke) justiert. Natürlich stimmt dann immer noch nicht alles und ich hab die einzelnen Gewichtungen per Hand eingestellt oder gepaintet. Es sind auf jeden Fall die saubersten Weightmaps die ich bis jetzt gemacht hab (siehe oben), aber der Zeitaufwand zieht sich nun schon durch zwei Nächte und ich bin immer noch nicht fertig. Wahrscheinlich nehm ichs einfach zu genau.

Neben den netten Stellen, wie das sich beim Arm bewegen die Brust mitbewegt, hoff ich mall das ich die Schwirigkeiten von Schulter, Ellenbogen und Hüftgelenk über die Gismos vom Skin-Modi. geregelt kriege. Manches können dann vieleicht noch die Muskeln beheben und zur Not muss ich mit Zusatzbones gegensteuern.

natalie_skin_skelett

Da sich später das Skelett, als Ausgangspunkt für die Muskeln, auch mitbewegen muss hab ich nun auch alle Knochen geskinnt. Dabei werden größtenteils pro Bipedbone ein oder mehrere Knochen komplett zugewiesen, so dass später keine Verformungen entstehen. Schwierig wurdes vorallem bei der Wirbelsäule und dem Brustkorb, da hier nur wenige Bones viele Einzelteile ansprechen und für saubere Verdrehungen es Notwendig ist diese gleichmäßig verteilt zu rotieren.

Ich merk mal noch an das ich nun auch wieder weiß wie viele Knochen ich eingebaut habe, ziehmlich genau 152 und wenn man das so überschlägt, wird vieleicht deutlich wieviel Zeit ich hier eigentlich, auch für Kleinigkeiten, verbrate.

Evilor – Blood Mosquito

blutmücke_gif_01

Die Blutmücke

Evilors Playground ist ein nettes kleines Zwischenprojekt und eine kleine Fingerübung, die aber noch große Potenziale hat. Der Grundgedanke liegt in der Echtzeitumsetzung der DnD-Regeln in einer ähnlichen Art wie jetzt DnD 4 wird. Hauptzächlich geht es aber um die weitere Auseinandersetzung mit Quest3D, so das man erstmalkleinere Probleme lösen lernt.

blutmücke_02

einfache Low-Poly Geomtrie

blutmücke_03

selbsterstelltes RIG

blutmücke_04

HighRes in Zbrush 3.0

blutmücke_05

Maps für Quest3D

The Welder – Biped

welder_biped

Biped:

Duch die doch immer größer werdenden Probleme meines wohl eher leienhaften eigenen RIG‘s. Entschied ich mich den in Max vorhanden Biped zu nutzen. Ich verwendete die klassische Ansicht , die dann auf meinen Char skaliert werden.

welder_animation

Animation:

Mit dem Bipedsytem ist man wirklich schnell vertraut und so konnte ich schon nach kurzer Zeit meine eigene Laufanimation erstellen. Die einzelnen Bewegungen lassen sich als .bip speichern und später im MotionMixer ineinanderblenden. Nach ein paar Nächten hatte ich verschiedenste Animationen die zusammen einen 13 Sekunden Clip bilden.

MyVideo: http://www.myvideo.de/watch/1674559

The Welder – Knochen & Muskeln

welder_muscle

Knochensystem:

In meiner ersten Euphorie wollte ich mir ein eigenes CharacterRIG erstellen. Die grundlegende Bonestruktur war auch recht schnell aufgebaut und mit den entsprechenden IK‘s versehen. Um den Charakter dann zu steueren verwendete ich Kontrollobjekte. Die ersten Bewegungen sahen auch gar nicht mal so schlecht aus, aber später erkannte ich auch einige Tücken.

Skinnen:

Zum Skinnen verwendete ich den Skin-Modifier, der auch wunderbar funktioniert bis auf ein paar Probleme in Schulter- und Hüftbereich.

Muskeln:

Um mich überhaupt mal in diesen Bereich zu wagen erstellte ich nach einem ersten Test ein grundlegendes Muskelsystem mit dem Plug-in SkinFX von Lumonix.