Inhaltsverzeichnis

Morphmeshes

Ein Morphmesh ist ein sich bewegendes bzw. animiertes Mesh in Gothic.

Anders als bei zCMovern bei denen die Gothic Engine ein starres Objekt bewegt oder bei Bone-Animationen bei denen Knochen/Bones und die den Knochen/Bones zugeordneten Polygone bewegt werden wird bei Morphmeshes jedes Polygon einzelnd verschoben. Wegen der Performance sollte man sich auf einfache Animationen mit wenig Poylgonen und wenig Frames beschränken. Außerdem gibts bei Morphmehes keine Kolisionserkennung. Für einige Dinge ist das ideal (Grässer, Fische im Wasser, Windmühlenräder), für andere wie Tore oder NPCs sind Morphanis aber ungeeignet. Das Beispielwindmühlrad kann man zum selber testen downloaden: http://wiki.worldofgothic.de/images/bilder/harri/Muehle.rar

Allgemeines Vorgehn:

  1. In 3dsMax ein Morphmesh erstellen
  2. Entsprechend exportieren
  3. Das Script dazu schreiben
  4. Im Spacer einfügen

Morphmesh erstellen

Ein Morphmesh wird durch eine Kopie von sich selbst gesteuert. Dazu brauch wir ein Mesh was so aussieht wie das was sich in Gothic bewegen soll. Hierbei ist es egal wie die Bewegung aussehen soll. Die Perfektion liegt an dem Geschick dessen der es animiert (Übungssache).
Ein Mesh läst sich auf verschiedene weise animieren.
z.B.: über ein Bones-Verknüpfungen

oder:
mit Space Warps (z.B: Welle)

Da ich zu ersteren die Datei mitliefere schenk ich mir die Erklärung wie man ein Mesh (hier das Windrad) baut.



Animation:

Ok, ist keine schwere Animation, aber den User sind hier keine Grenzen gesetzt ;)


So, nun müsste man alles außer Zm_Rad verdecken können (dürfte nur das Rad sein) und zur besseren Show die Mühle wieder einblenden und Animation abspielen lassen können.
Das Zm_Rad sollte sich nun drehen.

Export

Mesh-Export:


Ani-Export:


3dsMax kann man nun eigentlich schließen (Arbeit speichern versteht sich von selbst)

Script

morphMesh ("Rad_MORPH")
{
morphRef	("Rad_Mesh.ASC")
//		Ani-Name / Layer  Bl.in / hold /Bl.out /Flags / ASC-Name	/ von bis / fps
//	---------------------------------------------------------------------------------------
// Wind-Anis

morphAni	("S_WINDY"  1	  1.0	-1	1.0	.	"Rad_Morph.ASC"  0 99    SPD:3)
}

Hier wer ich nicht all zu viel dazu sagen

Im Spacer einfügen

Ein Nachteil bei zVobAnimate ist, das diese statisch nicht fest sind. Der Player kann also durchlaufen (kann man natürlich auch als Vorteil sehen z.B.: bei einer Wiese).
Ein Anderer, sie können im Spacer nicht durch ihr Visual markieren kann sondern nur in der Vobliste und komischerweise sind sie beim einfügen nicht in der Position wie in max, aber das kann man ja mit den Steuerungstasten ausgleichen - drehen.
Meine Empfehlung ist daher ein zVobAnimate an ein kleines vob z.B.: ein Stein so anzuhängen das dieser nicht stört bzw. später zu sehen ist. Dieser läst sich wenigstens im Spacerfenster markieren und dient dazu das zVobAnimate damit in die richtige Position zu schieben - drehen.

Viel Spaß beim Modden