Was an einem Rig kaputtgeht – und wo
Ein geriggtes Modell, das in einem Viewer gut aussieht und im nächsten auseinanderfliegt, hat fast nie ein Mesh-Problem. Es hat ein Skinning-Problem, und Skinning-Probleme sitzen an drei Stellen: in der Knochenhierarchie, in den Skin-Gewichten und in den inversen Bindematrizen. Dieses Werkzeug liest alle drei direkt aus der Datei.
Anzahl der Einflüsse
Jeder Vertex ist an eine bestimmte Anzahl Knochen gebunden. Echtzeit-Pipelines deckeln diese Zahl – vier ist die nahezu universelle Grenze, und mehrere Mobile- und WebGL-Pfade bevorzugen zwei. Der Reiter „Einflüsse“ liefert ein Histogramm: wie viele Vertices einen Knochen nutzen, wie viele zwei, drei oder vier – und wie viele überhaupt keine Gewichte tragen.
Die letzte Gruppe ist die wichtigste. Ein Vertex, dessen Gewichte alle null sind, fällt in dem Moment auf die Bindeposition zusammen, in dem Skinning angewendet wird; sichtbar wird das als aufgerissene Fläche oder als Spitze, die ins Nichts schießt. In der Bindepose ist das unsichtbar, im ersten animierten Frame offensichtlich.
glTF kann über zusätzliche JOINTS-Sets mehr als vier Einflüsse pro Vertex deklarieren. Fast nichts lädt sie. Wenn die Datei das tut, sagt das Werkzeug es Ihnen, denn dann ist die Deformation, die Sie im Autorenwerkzeug abgenommen haben, nicht die Deformation, die alle anderen zu sehen bekommen.
Knochen, die nichts tun
Ein Knochen, der null Vertices beeinflusst, belegt trotzdem einen Platz im Skinning-Uniform-Buffer und wird trotzdem in jedem Frame aktualisiert. Ganze Fingerketten überstehen regelmäßig einen Export, während jeder Vertex der Hand am Handgelenk hängt. Der Reiter „Knochen“ zeigt die Anzahl beeinflusster Vertices und das Gesamtgewicht pro Knochen – tote Knochen sortieren sich damit direkt ans Ende.
Inverse Bindematrizen
Jedes Gelenk speichert eine Matrix, die seine Bindetransformation rückgängig macht. Die Prüfungen hier sind konkret: Gibt es genau eine Matrix pro Knochen? Ist eine davon nicht invertierbar oder voller NaN? Und – die nützlichste Frage – ergibt die Weltmatrix des Knochens multipliziert mit seiner inversen Bindematrix die Einheitsmatrix? Das sollte sie, wenn die Datei in ihrer Bindepose gespeichert ist. Eine große Abweichung ist zulässig, aber sie ist das Erste, worauf man schaut, wenn sich eine Figur verformt, als wäre sie in der Mitte zusammengeklappt.
Namen und Wurzeln
Doppelte Knochennamen sind in glTF zulässig und für das Retargeting fatal, denn jedes Retargeting-System spricht Knochen über Zeichenketten an. Mehr als ein Wurzelknochen in einem einzigen Skelett bedeutet meist einen Exportunfall. Beides wird markiert.
Privat von Grund auf
Das Parsen läuft vollständig in Ihrem Browser. Nichts wird hochgeladen – unveröffentlichte Charaktere und Kunden-Rigs unter NDA bleiben auf Ihrem Rechner.
Tiny Online Tools







