Der Titel sagt alles. Ein Künstler macht ein 3D-Modell eines Charakters. Wie verwendet ein Programmierer das Modell, um den Charakter herumlaufen zu lassen?
Der Titel sagt alles. Ein Künstler macht ein 3D-Modell eines Charakters. Wie verwendet ein Programmierer das Modell, um den Charakter herumlaufen zu lassen?
Antworten:
Es gibt mehrere Möglichkeiten, dies zu tun:
Der erste und beliebteste Weg besteht darin, ein Skelett für das Modell zu erstellen und dieses Skelett dann zu verwenden, um sich um die Eckpunkte des Modells zu bewegen. Dies wird normalerweise auch vom Künstler durchgeführt, da er enthalten muss, welche Bereiche von welchem Knochen betroffen sind.
Wenn die Animation fertig ist, speichert der Künstler sie in einer Datei (zum Beispiel ist das COLLADA-Dateiformat bei Programmieranfängern sehr beliebt, da es für Menschen lesbar ist, aber weil es auf XML basiert, ist es groß, sodass größere Spielefirmen Dateien verwenden wie .fbx).
Das Skelett besteht aus Knochen. Der Künstler kann definieren, welche Scheitelpunkte verschoben werden müssen, indem er ihnen ein Gewicht gibt. Je höher das Gewicht, desto mehr Bewegung wird erzeugt, wenn der bestimmte Knochen bewegt wird. Für jeden Knochen gibt es eine separate Gewichtstabelle, sodass derselbe Scheitelpunkt von mehreren Knochen beeinflusst werden kann
Der zweite Weg heißt Morphing. Es ist älter, wird aber noch heute verwendet, da kein Skelett erforderlich ist. Daher ist es besser für Dinge wie das Gesicht eines Modells oder wenn Sie die einzelnen Scheitelpunkte verschieben müssen. Anstatt ein Skelett zu erstellen, erstellt der Künstler die Zustände, in denen sich das Modell befinden kann. Anschließend lädt das Programm in jeden Frame und interpoliert zwischen ihnen im Vertex-Shader.
Im wahrsten Sinne des Wortes kann jedes Modellformat eine Animation auf diese Weise in Form mehrerer separater Dateien (wie in OBJ-Dateien) speichern, aber einige können sie nativ in einer Datei verarbeiten (eine der bekanntesten zwischen Anfängern ist die von id Software .md2-Format).
Die dritte Methode, etwas zu animieren, heißt prozedurale Animation. Es ist nicht weit verbreitet, weil es nicht zu humanen Bewegungen führt. Es kann verwendet werden , wenn Animieren Wasser oder Gras oder andere natürliche Objekte, die ein Muster in seiner Bewegung hat.
Die vierte und wohl komplexeste sind muskelbasierte Animationen. Zum Beispiel verwendete GTA IV diese Engine , die die Bewegung mithilfe einer defensiven KI und einer Skelettstruktur berechnet. Es basiert auf der ersten Technik, erfordert jedoch nicht, dass der Künstler den Körper animiert. Es ist wie Ragdoll, aber mit besseren Bewegungen.
Der fünfte Weg ist Ragdoll. Sie wissen das wahrscheinlich, es gibt sogar Spiele, die fast ausschließlich darauf beruhen, wie der berüchtigte Ziegensimulator, aber die meisten Spiele verwenden ihn für tote Charaktere. Dies erfordert auch, dass der Künstler ein Skelett erstellt, aber das Bewegen der Gelenke erfolgt mit Algorithmen. Diese Algorithmen berücksichtigen maximale Winkel und ziehen.
Animierbare 3D-Modelle werden mit einem Skelett geliefert (entweder der Modellierer oder der Animator führt diesen Modellierungsschritt aus, da er sich in einem Niemandsland befindet).
Das Skelett besteht aus Knochen, die relativ zueinander positioniert sind, und jeder Knochen wird auf eine Reihe von Eckpunkten des 3D-Modells abgebildet, wobei die Einflusswerte zwischen 0 und 1 liegen (0,2, 0,5 usw.).
Wenn dies erledigt ist, erstellt der Animator eine Animation, die je nach Format eine separate Datei sein oder in der Datei des Modells selbst gespeichert werden kann.
Animationen sind im Grunde eine Reihe von Anweisungen für jeden Knochen, die ihnen sagen, wann und wie viel sie sich bewegen oder drehen müssen.
Durch Verschieben der Knochen verschieben Sie indirekt die Scheitelpunkte des Modells.
Dies ist eine sehr heruntergekommene Erklärung, und es gibt viele verschiedene Möglichkeiten, grundlegende und fortgeschrittenere Animationen zu erstellen, von denen einige vollständig programmatisch sind. Heutzutage werden Sie jedoch nicht viele animierte Modelle in einem Spiel ohne Skelett finden (N64-Modelle hatten keine Ich glaube, Skelette, stattdessen arbeiteten die Modellstücke als Skelett.