Benutzer-Werkzeuge

Webseiten-Werkzeuge


………………………………………………………. ……………………………..

zCMoverControler

Wer Kenntnisse über MoverControler erlangen will und dieses Wiki durcharbeiten, der sollte bereits Vorkenntnisse in den Themen….

erlangt haben.

1. Allgemeines

Was kann ein zCMoverControler?

Der zCMoverControler gibt einem Mover bestimmte Anweisungen, wie er sich zu verhalten hat. Dabei kann man den Controler folgendermassen programmieren:

  1. GOTO_KEY_NEXT - Der Mover geht nach jeder Ansteuerung durch den Controler einen Frame weiter.
  2. GOTO_KEY_PREV - Der Mover geht nach jeder Ansteuerung durch den Controler einen Frame zurück.
  3. GOTO_KEY_DIRECTLY - Der Mover geht nach der Ansteuerung auf einen im Controler angegebenen Frame.
  4. DISABELD - MOVER stoppt.

WICHTIG

  • Der Mover selbst, kann aber diese Anweisungen des Controlers nur ausführen, wenn der Mover selbst in seinem Objektfenster auf moverBehavior:NSTATE_SINGLE_KEYS eingetsellt wurde.

Das totale Verständnis der Komponenten - Mover, MoverControler, Trigger, Triggerlist, Mobs und der Kombination und Verschaltung aus diesen, ermöglichen dem Modder, der diese Elemte virtuos und kombinatorisch einsetzt, ganz neue, ungeahnte Möglichkeiten.

Wir können damit auch umgehen, dass wenn ein Mover mal auf den Status NSTATE_LOOP gesetzt wurde, dass dieser nach dem 1.aktivieren nie mehr abschaltbar ist, indem wir den Loop über die Keyframes programmieren und den Controler einsetzen mit der Option GOTO_KEY_NEXT und den Loop somit simulieren und jederzeit unterbrechen können.

Als Beispiel habe ich diesmal ein Zahnrad ausgesucht, das wir mit 8 Frames um sich selbst rotieren lassen wollen

Warum brauchen wir dafür einen zCMovercontroler?

Wir könnten doch wie wir im Moverwiki gelernt haben die Drehung des Zahnrades mit bspw. 8 Frames erzeugen 360°

  • Geht leider nicht, da aus mir nicht bekannten Gründen bei den Frames der Rotation eines Movers um seine Mittelachse, die Bewegungsgeschwindigkeiten zwischen den einzelnen Frames, auch wenn die Distanzen gleich sind zwischen den Frames, sehr unterschiedlich (schnell/langsam) sind und somit für eine gleichmässige Rotation unbrauchbar.
  • Manchmal, warum auch immer, dreht sich bei Rotations-Frames > 180° der Mover auch wieder rückwärts, was unerwünscht ist
  • Ausserdem benögt man den Movercontroller, um unseren „Loop“ per Script unterbrechen zu können.Siehe auch 7.b_zCMoverController

2.Vorbereitung

Rotation

  • Wir starten den Spacer und öffnen die zu bearbeitende *.ZEN
    • Wir nehmen uns das ObjektPagesFenster vor, setzen einen Haken bei „Hold“ und stellen jetzt die Zeit auf etwa 12:00. Jetzt wird es, egal wie lange wir arbeiten, nicht regnen im Spacer und auch nicht dunkel werden. 12:00 habe ich gewählt, weil es da eigentlich am hellsten sein müsste.

Damit das überhaupt einen Sinn ergibt,mit dem zCMoverControler zu arbeiten, müssen wir zuerst mal einen Mover einsetzen und die Zugehörigen Frames der Rotation programmieren. Wir setzen den Mover ein, wie in den Wiki´s über Mover beschrieben Mover Level 1 und Mover 2 → Mover Level 2.

Als Mesh habe ich ein 16-zahniges Zahnrad gewählt. Wer das Zahnrad haben will, zum mitüben, hier der Download (WoP):http://upload.worldofplayers.de/files10/wiki_Zahnrad.3DS

16 Zähne habe ich deshalb gewählt, da ich die Rotation mit 8 Frames/Round anlegen will.Damit kann man immer 2 Zähne weiterschieben kann und und erhält annähernd gleiche Distanzen zwischen den Frames. Das ist wichtig wegen der gleichmässigen Geschwindigkeit. Es gibt ja leider keine Mess-Skala im Spacer für die Gradzahl einer Drehbewegung. Es wäre unsinnig ein 17 zähniges Zahnrad zu verwenden und dann 17/8 zu teilen und alle 2,125 Zähne einen Frame zu setzen… wer will das abschätzen? Ich nicht!

pic_01

Programmierung von Moverframes - bei Unkenntnis bitte hier nachlesen → Mover_KeyFrames

  • Frame 0 Wir setzen im ObjektPagesfenster den ersten Frame, den Frame 0, indem wir einfach bei angewählem Mover auf „new key“ klicken. Es färbt sich jetzt im ObjektPagesFenster oben rechts unterhalb des Schriftzuges Keyframes die graue „Null“ schwarz.
  • Frame 1 Wir drehen mit der „Pos1-Taste“ bei aktiviertem Move-Modus „M-Taste“ das Zahnrad um exakt zwei Zähne im Uhrzeigersinn nach rechts. Ihr könnt das auch am Koordinatenkreuz, beim Übungszahnradmodell der senkrechte weisse Balken, erkennen, das dieser sich ebenfalls im Uhrzeigersinn dreht. Alsdann klicken wir wieder auf „new key“ im ObjektPagesFenster und die „schwarze Null“ wechselt zu einer „schwarzen 1“.

pic_02

  • Frame 2 - 7 Das wiederholen wir für die Frames 2 bis 7, jeweils zwei Zähne weiter drehen (0-7 = (8 Frames)

3. zCMoverControler Einsetzen

zurück zur Seite Steuerelemente → Steuerelemente

quickstart/movercontroller.txt · Zuletzt geändert: 2016/03/09 13:24 von zollaidal