Reaktions-Controller

Der Reaktions-Controller ist ein Prozedur-Controller, der es einem Parameter ermöglicht, auf Änderungen in einem anderen Parameter in 3ds Max zu reagieren. Der Großteil der Einrichtung für Reaktions-Controller wird in der Regel im Dialogfeld "Reaktions-Manager" vorgenommen. In diesem Dialogfeld definieren Sie einen Master, d. h. ein Objekt, das andere Objekte steuert. Für jeden Master definieren Sie beliebig viele Slaves, wobei es sich um die vom Master gesteuerten Objekte handelt. In der Spuransicht oder der Bewegungsgruppe können Sie einem Slave-Objekt aber auch direkt einen Reaktions-Controller (wie einen beliebigen anderen Controller) zuweisen. Anschließend geben Sie über den Reaktions-Manager den zugehörigen Master und andere Parameter an.

Es gibt fünf verschiedene Reaktions-Controller: Positionsreaktions-, Rotationsreaktions-, Point3-Reaktions-, Skalierungsreaktions- und Gleitreaktions-Controller. Sie können jeder animierbaren Spur in der Szene einen Reaktions-Controller zuweisen. Die Reaktion basiert nicht auf Zeit, sondern auf anderen Variablen in der Szene, wie z. B. Position oder Rotation.

Beispiel: Mit einem Reaktions-Controller können Sie eine Lichtquelle einschalten, sobald ein Objekt einen bestimmten Punkt erreicht. Muskeln können anschwellen, sobald ein Arm gebeugt wird. Ein Ball kann automatisch gestaucht werden, wenn sich die Z-Position des Balls der Ebene des Bodens nähert. Füße können sich drehen, wenn sich die Ferse vom Boden löst.

Ein Partikelsystem kann durch ein bestimmtes Ereignis ausgelöst werden. Morph-Ziel-Prozentwerte können durch Ereignisse gesteuert werden.

Vorgehensweisen

Beispiel: So lassen Sie die Position einer Kugel auf die Position eines Quaders reagieren:

    Diese Vorgehensweise zeigt eine alternative Verwendungsmöglichkeit für Reaktions-Controller auf. Der empfohlene Arbeitsablauf ist, die Einstellungen überwiegend im Dialogfeld "Reaktions-Manager" vorzunehmen: Siehe Beispiel: So verwenden Sie das Dialogfeld "Reaktions-Manager".

    Anmerkung: Objekte müssen nicht animiert sein, um Reaktions-Controller verwenden zu können. In dieser Vorgehensweise wird von einer Animation ausgegangen, damit die Reaktion leichter zu erkennen ist.
  1. Erstellen Sie auf der linken Seite des Ansichtsfenster von oben einen Quader, dessen Seite ungefähr 30 Einheiten lang ist.
  2. Animieren Sie den Quader von Position (-100,0,0) bei Frame 0 bis Position (100,0,0) bei Frame 100.
  3. Erstellen Sie im Ansichtsfenster von vorn knapp über dem Quader eine Kugel. Positionieren Sie die Kugel bei (-100,0,50).
  4. Wechseln Sie zur Bewegungsgruppe, und klicken Sie im Rollout "Controller zuweisen" auf die Positionsspur, um sie zu markieren.
  5. Klicken Sie im Rollout "Controller zuweisen" auf (Controller zuweisen).
  6. Klicken Sie im Dialogfeld "Positionsreaktion zuweisen" auf die Positionsreaktion, um sie zu markieren, und klicken Sie anschließend auf "OK".

    Dadurch wird das Dialogfeld Reaktions-Manager geöffnet. Die Reaktionsliste zeigt, dass die Kugel als Slave zugewiesen ist, und der Master-Eintrag vorhanden, jedoch keine Bewegung zugewiesen ist. Ein Reaktions-Controller steuert an Hand der Bewegung eines Masters beliebig viele Slaves.

  7. Klicken Sie mit der rechten Maustaste auf den Eintrag "Nicht zugewiesen", der sich in der Liste "Reaktionen" ganz oben befindet. Wählen Sie im Menü den Befehl "Master ersetzen".

    Dadurch wird der Auswahlmodus aktiviert, und Sie können eine Bewegungsspur eines beliebigen Objekts in der Szene auswählen und als Master festlegen.

  8. Klicken Sie in einem Ansichtsfenster auf den Quader (Quader01).

    Es wird ein Popup-Menü angezeigt.

  9. Wählen Sie im Popup-Menü "Transformieren" "Position" "X-Position".

    Der Eintrag "Nicht zugewiesen" wird durch eine Master-Spur mit der Bezeichnung "Quader01\X-Position" ersetzt.

    In der Liste "Zustände" wird ein neuer Zustand, "Zustand001", unter der Reaktionsliste angezeigt.

    Dies ist ein Beispiel für den grundlegenden Steuermechanismus des Reaktions-Controllers: Für jede Master/Slave-Kombination können Sie beliebig viele Zustände angeben, die durch Werte für Master- und Slave-Spuren definiert werden. Der erste Zustand, der automatisch beim Hinzufügen des Masters erstellt wurde, legt Folgendes fest: Wenn sich der Quader bei Position -100 an der X-Achse befindet, muss die Kugel bei Position (-100,0,50) sein. In diesem Fall steuern Sie drei Parameter (die Kugelposition an allen drei Achsen) mit einem Parameter (die Quaderposition an der X-Achse). In der Regel verwenden Sie jedoch einen eigenen Master-Parameter für jeden Slave-Parameter.

    Anmerkung: Der Reaktions-Manager definiert automatisch einen Zustand, wenn Sie einem Master einen neuen Slave zuweisen.

    Anschließend erstellen Sie einen zweiten Zustand, der festlegt, wie sich die Kugel an den verschiedenen Achsen bewegt, wenn sich der Quader an einer Achse bewegt.

  10. Ziehen Sie den Zeitschieber auf Frame 50.

    Der Quader bewegt sich zum Mittelpunkt seiner animierten Bewegungsbahn. Die Kugel bleibt an ihrer Position.

  11. Klicken Sie im Dialogfeld "Reaktions-Manager" auf die Schaltfläche (Zustand erstellen).

    Dadurch wird ein neuer Zustand (Zustand02) mithilfe der aktuellen Positionen des Quaders und der Kugel erstellt.

  12. Versuchen Sie, die Kugel im Ansichtsfenster von vorn zu bewegen.

    Die Kugel kann nicht bewegt werden, weil sie vollständig vom Master (dem Quader) abhängig ist. Sie können ihre Position auch nicht über die Koordinatenanzeige-Felder in der Statusleiste ändern. Allerdings können Sie die Position der Kugel mit den Bearbeitungshilfsmitteln des Reaktions-Managers ändern.

  13. Klicken Sie im Dialogfeld "Reaktions-Manager" ggf. auf den Eintrag "Kugel001 / Position" unter "Zustand001", um ihn zu markieren, und klicken Sie danach auf die Schaltfläche "Bearbeitungsmodus".
  14. Positionieren Sie die Kugel bei (0,0,100).

    Die Position wird in der Zeile "Kugel001 / Position" unter "Zustand002" aktualisiert. Darüber hinaus zeigt das Diagramm im Reaktions-Manager die geänderten Werte für die X- und Z-Position des Slaves (Kugel), wenn sich die X-Position des Master-Quaders ändert. Die Farben des Diagramms entsprechen denen in der Spuransicht: Rot = X, Grün = Y und Blau = Z.

  15. Klicken Sie erneut auf die Schaltfläche "Bearbeitungsmodus", um sie zu deaktivieren, und schieben Sie danach den Zeitschieber hin und her.

    Während der Quader zwischen Frame 0 und Frame 50 bewegt wird, steigt die Kugel an die Position, die für den zweiten Zustand angegeben ist.

    Für den dritten und letzten Zustand während der zweiten Hälfte der Master-Bewegung soll sich der Slave in eine andere Richtung bewegen.

  16. Wechseln Sie zu Frame 100, und erstellen Sie einen neuen Status.
  17. Klicken Sie in der Liste "Zustände" auf den neuen Zustand oder seine Slave-Spur, um ihn zu markieren.
  18. Aktivieren Sie den Bearbeitungsmodus. Positionieren Sie die Kugel bei (0,-100,100), und deaktivieren Sie anschließend den Bearbeitungsmodus.
  19. Ziehen Sie den Zeitschieber zwischen Frame 0 und Frame 100 hin und her.

    Die ersten 50 Frames wechselt die Kugel zwischen dem ersten und zweiten Zustand, in der zweiten Hälfte der Animation wechselt die Kugel zwischen dem zweiten und dritten Zustand.

    Zum Abschluss demonstrieren Sie, dass die Kugel unabhängig von der Animation nur auf die X-Position des Quaders reagiert.

  20. Gehen Sie zu Frame 0. Wählen Sie den Quader aus, und halten Sie die Taste gedrückt, während Sie mit der rechten Maustaste auf den Quader klicken.

    Dadurch wird das Quad-Menü "Animation" geöffnet.

  21. Wählen Sie im Einstellungsquadranten (rechts unten) "Ausgewählte Animation löschen".

    Dieser Befehl löscht ganz einfach alle Animations-Keys für die aktuelle Auswahl.

  22. Bewegen Sie den Quader nun in allen drei Dimensionen.

    Änderungen der Y- oder Z-Position haben keine Auswirkung auf die Kugel. Wenn Sie den Quader jedoch zwischen -100 und 100 an der X-Achse verschieben, wird die Position der Kugel unabhängig von der Y- oder Z-Position entsprechend der Definition des Reaktions-Controllers geändert.

    Dieses Verfahren verdeutlicht den Einfluss des Reaktions-Controllers. Ein anderes Verfahren, das weitere Aspekte des Reaktions-Managers aufzeigt, finden Sie unter: Beispiel: So verwenden Sie das Dialogfeld "Reaktions-Manager".

Benutzeroberfläche

Nachdem Sie einen Reaktions-Controller zugewiesen haben, klicken Sie mit der rechten Maustaste auf die Spur und wählen "Eigenschaften". Sie können auch im Menü "Animation" "Reaktions-Manager" wählen, um das Dialogfeld "Reaktions-Manager" zu öffnen.