Sehr viel Maya
Der heutige Tag stand schon primär im Zeichen von Maya. Es gab zwar schon auch sonst immer wieder kleine Dinge zu erledigen, aber in Maya ist doch einiges vorwärts gegangen. Abends hatte ich ja TLV und so musste ich mich nochmals intensiver mit Blendshapes etc. beschäftigen. Hatte ja letztens mal ein geniales Plugin für’s Kombinieren von Gesichtsshapes gefunden, heute bin ich auf ein tolles Plugin für corrective Blendshapes gestoßen, und zwar auf www.b-ling.com. Habe aber ehrlich gesagt recht lange gebraucht, um die Funktionsweise zu kapieren. Auf Probleme bin ich dennoch auch ohne Plugin gestoßen
Bisher hatte ich ja nur fürs Gesicht Blendshapes erstellt, heute wollte ich mich aber explizit mit korrigierenden Shapes für Skindeformationen beschäftigen. Meinen alten Character hatte ich mit Influence Objects vollgestopft, das war wirklich ein ziemliches Drama. War sehr aufwändig und hat eigentlich nicht wirklich den gewünschten Erfolg gebracht. Das wollte ich auch den Studenten erst gar nicht antun, deshalb habe ich die Beulen und Dellen beim Abwinkeln des Ellbogens oder der Schulter eben auf eine andere Art ausgebügelt. Ganz schön tricky.
Die intuitive Herangehensweise wäre ja eigentlich die: Körper in die gewünschte Pose bringen, z.B. abgewinkelter Ellbogen. Dann Geometrie duplizieren, Duplikat verschieben, Transformationen freezen und Vertices so verschieben, dass es gut aussieht. Für die andere Seite ein Duplikat erstellen und negativ skalieren. Dann beides als Blendshape anwenden. Tada. Denkste. Nun, dass es so nicht geht, wusste ich ja eh
Folgende Probleme:
- Freeze Transformations: Die Geometrie wandert an die Stelle, wo die Blendshape-Geometrie ist. Selbst wenn man erst nach dem Erstellen der Blendshapenode freezet.
- Double Transformation: Erstellt man die Ausbügelung am abgewinkelten Objekt, verdoppelt sich beim erneuten Rotieren des Gelenks die Abwinkelung.
- Geometrie spiegeln: Geht nicht so einfach, da Maya auf Grund der Vertexnummern deformiert. Vertex 2 springt also an die Stelle, an der sich beim Blendshape der Vertex mit derselben Nummer befindet.
Problem 1 lässt sich nur dadurch lösen, dass man vom Freezen die Finger lässt und eventuell sogar die Werte nach dem Verschieben wieder sperrt. Für Problem 2 hätte ich mehrere Lösungen gehabt, die aber alle nicht wirklich prickelnd funktioniert haben: Duplizieren des Originals samt Input Graph, also samt Skelett und Skin. Abwinkeln des Duplikats, Anpassen, Gelenk wieder auf Null stellen, History löschen und als Blendshape anwenden. Das würde so auf jeden Fall funktionieren. Einzig die Manipulation der Vertices am geskinnten Objekt verhält sich leider nicht sehr straight. Verschiebt man einen Punkt nach links, kann es durchaus sein, dass er nach vor geht usw. Vielleicht müsste man an der Tweak-Node noch etwas umstellen, hab ich aber nicht probiert. Die zweite Variante wäre eher abgefahren: Geometrie zwei Mal im abgewinkelten Zustand duplizieren. An einem Duplikat gemütlich die Änderungen vollziehen, dann beide Objekte als Blendshape auf das Original anwenden. Den Weighting-Wert des manipulierten Objekts auf 1, den anderen auf -1, um praktisch die Double Transformation zu eliminieren. Klingt nett, funktioniert aber nicht sauber. Selbst wenn man die Shapes in der richtigen Reihenfolge wählt und die Deformation Orders abändert, zB auf parallel. Das oben erwähnte Plugin soll den Workflow, dass man das Objekt im abgewinkelten Zustand optimiert, ermöglichen: Gelenk abwinkeln, Script starten: Die Geometrie wird zwei Mal dupliziert: Ein Duplikat liegt abgewinkelt vor, das andere schön ausgestreckt. Alles, was man nun am abgewinkelten Objekt macht, wird auf das zweite übertragen. Schließlich muss man nur das zweite Objekt als Blendshape anwenden und voila. Funktioniert soweit ziemlich perfekt.