In diesem Tutorial wollen wir uns die beiden neuen Tags zu Gemüte führen. In den Arbeitsmaterialien findet ihr unsere gemeinsame Ausgangsbasis mit dem Dokument "PSD_C4D_R16_Interaktivitaet_start.c4d".
Vor dem hinlänglich bekannten Figur-Objekt befinden sich drei farbige Felder, jeweils mit einem der Grund-Bearbeitungswerkzeuge Drehen, Verschieben und Skalieren als einfaches 3D-Objekt besetzt. Mit dem Interaktions-Tag werden wir diesen Feldern nun genau diese Aufgaben für das Figur-Objekt beibringen.
Damit auch wirklich nur die drei farbigen Felder auf unsere Bearbeitung reagieren, besitzen die darauf befindlichen 3D-Objekte alle ein Schutz-Tag, das sie vor unbeabsichtigten Modifikationen schützt.
Interaktive Steuerung mit dem Interaktions-Tag
Wir beginnen mit dem blauen Drehen-Feld. Damit dieses Objekt auf unsere Eingaben reagieren kann, weisen wir ihm über das Kontextmenü per rechter Maustaste aus dem Menü CINEMA 4D Tags das Interaktions-Tag zu.
Im Einstellungsdialog des Interaktions-Tags interessieren uns zunächst die beiden Seiten Tag und Proxy. Dort stellen wir sicher, dass die Option Justieren deaktiviert ist, ansonsten würden wir bei allen Modifikationen auch das blaue Feld einschießen. Unsere interaktive Steuerung wird außerdem nur funktionieren, wenn das Objekt nicht selektiert ist. Dank automatischem Tweak-Modus ist das auch gar nicht nötig.
Auf der Proxy-Seite legen wir fest, welches Objekt die Steuerungsbefehle empfangen soll. In unserem Fall das Figur-Objekt, weshalb wir es aus dem Objekte-Manager in das Feld Proxy-Objekt ziehen.
Die Seiten Ausgabe und Poly-Info sind dafür gedacht, Informationen über die erfolgten Eingaben, Positionen etc. zu sammeln und für die Weiterverarbeitung bereitzustellen. Da wir unsere Werkzeugeingaben direkt und ungefiltert an das Proxy-Objekt weiterleiten, benötigen wir hier keine Anpassungen.
Für die Weitergabe der Steuerungsinformation ist ein kleines Skript erforderlich, das wir im Feld Skript festlegen. Als Skriptsprache entscheiden wir uns dabei für Python.
Nach dieser Eingabe klappt auch schon ein Feld namens Skript auf, in dem wir die üblichen Mauseingabe-Befehle finden, die uns beispielsweise auch beim Programmieren von Internet-Seiten und -Anwendungen begegnen.
Um für die Bearbeitung des Skripts aus dem Einstellungsdialog in den Skript-Editor zu gelangen, klicken wir ganz unten auf den Button Skript bearbeiten.
Es öffnet sich der Expression- bzw. Skript-Editor, der uns wesentlich mehr Möglichkeiten zur Eingabe und zum Test des Skripts bietet. Die meisten der Eingabeschleifen sind über die Raute # am Anfang auf inaktiv gesetzt, für unser Beispiel benötigen wir lediglich die bereits aktivierten mouseDown()-Zeilen.
Beim Ereignis mouseDown() soll statt der Platzhalterzeilen der Aufruf und die Ausführung des Drehen-Werkzeugs erfolgen. Dazu löschen wir als Erstes die von uns nicht benötigten Zeilen 8 und 9 im Skript.
Um nun den richtigen Code für das Drehen-Werkzeug zu ermitteln, rufen wir uns über das Menü Fenster>Anpassen>Befehle anpassen… zusätzlich den Befehle-Manager auf.
Dort finden wir nach Eingabe der ersten paar Buchstaben des Wortes "Drehen" beim Filter: Name schon das Drehen-Werkzeug als Eintrag. Jetzt müssen wir nur noch die Zeile des Drehen-Werkzeugs per Drag&Drop aus dem Befehle-Manager in die Zeile 8 unseres Skript-Editors ziehen.
Schon wird der Aufruf des Drehen-Werkzeugs mit der zugehörigen Befehls-ID in unserem mouseDown()-Ereignis eingetragen. Um sicherheitshalber festzustellen, ob das Skript so in Ordnung ist, klicken wir noch auf den Button Kompilieren …
… und bekommen über die grün markierte Zeile signalisiert, dass keine Fehler in unserem Skript enthalten sind. Nicht nur das Skript, sondern auch das Interaktions-Tag ist damit fertig konfiguriert. Wir können es gleich für die zwei anderen Steuerungs-Objekte weiterverwenden, da sich die Tags nur in dieser einen Befehls-ID beim mouseDown()-Ereignis unterscheiden.
Wir können den Expression-Editor daher schließen und das Interaktions-Tag im Objekte-Manager per Ziehen mit gedrückt gehaltener Strg- bzw. Ctrl-Taste auf die anderen zwei Steuerungs-Objekte duplizieren.
Passen wir nun die beiden duplizierten Interaktions-Tags auf die anderen Steuerungs-Objekte an. Im Befehle-Manager ist das Verschieben-Werkzeug schnell gefunden.
Nun können wir entweder die betreffende Zeile im Skript löschen und neu einfügen oder einfach die andere Befehls-ID im Code eintragen. Sie erscheint, wenn der entsprechende Befehl selektiert ist, im unteren Bereich des Befehls-Managers. Betroffen sind die letzten zwei Ziffern, also endet die Befehls-ID des Verschieben-Werkzeugs auf "88".
Gleiches gilt für das Skalieren-Werkzeug. Bei ihm endet die Befehls-ID auf "89", deshalb müssen wir im Skript des Interaktions-Tags die letzten Ziffern auf diese Zahl umändern. Mehr ist bei der Anpassung der Interaktions-Tags auf die Steuerungs-Objekte nicht zu beachten.
Jetzt können wir unsere interaktive Szene auch endlich testen. Achtet darauf, dass kein Objekt der Szene selektiert ist, und setzt den Mauszeiger in eines der drei bunten Felder. Während ihr nun die Maustaste gedrückt haltet und den Mauszeiger bewegt, modifiziert ihr das Figur-Objekt mit den zugehörigen Basisbearbeitungs-Werkzeugen Drehen, Verschieben bzw. Skalieren.
Nun ist unsere fertige, interaktive Szene nicht unbedingt selbsterklärend. Mit den neuen Kommentar-Tags von Release 16 können wir aber schnell eine kleine Hilfe integrieren.
Anmerkungen im Editor mit Kommentar-Tags
Auch die Kommentar-Tags befinden sich unter den CINEMA 4D Tags im Kontextmenü per rechter Maustaste. Wir weisen es dabei direkt dem Objekt zu, das die Anmerkung tragen soll.
Im Einstellungsdialog des Kommentar-Tags können wir nun auf der Kommentar-Seite einen Text und sogar einen Link per URL eingeben. Längerer Text lässt sich übrigens entweder manuell im Textfeld umbrechen oder auch über die Option Einklappen auf der Anzeige-Seite minimieren. Dort finden wir außerdem auch einige Parameter zur Gestaltung und Anzeigeoptionen für das Kommentar-Tag. Ich habe das Kommentar-Tag für unser Drehen-Steuerungs-Objekt farblich angepasst.
Das Kommentar-Tag für das blaue Drehen-Steuerungs-Objekt nehmen wir jetzt als Basis für die zwei anderen Steuerungs-Objekte. Wir duplizieren es durch Verschieben mit gedrückt gehaltener Strg- bzw. Ctrl-Taste im Objekte-Manager und passen Text und Farbe sinngemäß für das Verschieben-Steuerungs-Objekt …
… sowie für das Skalieren-Steuerungs-Objekt an.
Jetzt ist unsere Szene mit den nötigen Anmerkungen ausgestattet, sodass die Steuerung des Figur-Objekts über die dafür vorgesehenen Felder klar sein sollte.
Die Hinweise in den Kommentar-Tags hängen fest an den Objekten und sind auch bei einer Änderung der Ansicht oder Perspektive jederzeit perfekt lesbar.