Konnektor
Was sind Konnektoren?
Konnektoren schränken die Bewegungen/Drehungen von Rigid Bodies und Soft Bodies (letztere nur bei Verwendung von Bullet) ein.
Konnektoren verbinden Objekte folgenden Typs:
- Rigid Bodies.
- Soft Bodies (nur in Verbindung mit Bullet Dynamics).
Die Konnektoren arbeiten also zusammen sowohl mit:
- dem alten Bullet Dynamics System, wobei die Konnektoren alter Szenen in die neuen konvertiert werden.
- dem neuen Simulationssystem.
Ohne Konnektoren würden Rigid/Soft Bodies nur auf Kräfte und Kollisionen reagieren. Es wäre damit beispielsweise sehr aufwendig, ein simples Türscharnier zu realisieren. Mit einem Konnektor (Typ Winkel, Modus Scharnier) ist das hingegen problemlos möglich.
Eine besondere Bedeutung haben die Konnektoren des Typs Fest. Diese lassen keine relativen Bewegungen zu, sondern halten Rigid Bodies einfach “nur” zusammen. Der Clou dabei: bei Überschreitung definierbarer Kräfte können diese brechen, womit das Objekt ebenfalls bricht (s.a. oben).
Konnektoren werden in der Ansicht funktionsgerecht mit einer Vorschau eingeblendet, sodass man auf einen Blick die Beschränkungen auch visuell erfassen kann.
Nicht funktionierende Konnektoren werden bei Simulationsstart rot angezeigt. Das kann z.B. passieren, wenn beide verknüpfte Partner keine Rigid Bodies sind.
Interaktiv Konnektoren erzeugen
Konnektoren können bereits mit Objekten ohne Rigid Body Tag erstellt werden. Sie wirken allerdings erst korrekt, wenn Rigid Body Tags zugewiesen wurden.
-
Selektieren Sie die im Objekt-Manager zu verknüpfenden Objekte.
-
Rufen Sie im Hauptmenü unter
einen der Konnektoren auf. -
Schieben bzw. drehen Sie den Konnektor in der Ansicht an die richtige Position (dort, wo sich ein Scharnier befindet oder parallel zur Achse eines Schiebereglers).
Beachten Sie, dass Konnektor-Objekte an sich nicht geklont werden können. Das Klonen von kompletten Setups (z.B. ein Gefährt wie im Beispiel unten, um autonom agierende Gefährte zu erstellen), ist mit dem Simulationssystem nicht möglich - wohl aber mit den Bullet Dynamics.
Das Konnektor-Objekt als Container für andere Konnektoren
Das Konnektor-Objekt ist dann eine Art Container für viele einzelne Konnektoren.
Jetzt wäre es natürlich schön, diesen vielen Konnektoren individuelle Eigenschaften zu verleihen. So soll z.B. dieser eine, spezielle Konnektor als erstes brechen. Dafür gibt es zweierlei Lösungen:
-
Bei den wichtigsten Konnektorparametern gibt es jeweils Verknüpfungsfelder (Selektion oder Wichtungen genannt), in denen MoGraph-Selektions-Tags bzw. MoGraph-Wichtungs-Maps untergebracht werden können (s.a. hier), die auf Konnektorebene entsprechende Eigenschaften steuern.
-
Das Konnektor-Objekt kann aufgelöst werden, indem Sie es bearbeitbar (Taste C) machen. Es werden dann alle enthaltenen Konnektoren wiederum als Konnektor-Objekt unter ein Null-Objekt gepackt. Diese enthalten in ihrer Objektliste immer nur genau 2 Objekte. Mit dieser Methode haben Sie dann Zugriff auf die Einstellungen jedes einzelnen Konnektors.
Konnektorposition
Die Konnektorposition und -ausrichtung ist wichtig! Diese geben nämlich die Bewegungs- und Drehachsen vor. Wenn Sie sich obige Abbildung betrachten, sind beispielsweise beim Scharnier die möglichen Drehrichtungen der Kugeln durch die Gelenkposition vorgegeben, genauso wie die Lage des Schienen-Konnektors definiert, in welche Richtung sich die Kugel verschieben kann.
Das Scharnier wird meistens auf einer Drehachse positioniert.
Nach Start der Simulation bewegen sich die Konnektoren automatisch sinnvoll mit ihren Verknüpfungspartnern mit. Das Konnektor-Objekt muss also nicht hierarchisch irgendwo untergebracht werden, um zu funktionieren.
Betrachten Sie sich folgende simple Szene: 2 Zylinder, 2 Würfel, jeweils mit einem Rigid Body Tag versehen (die fertige Szene können Sie unten herunterladen):
Aus diesen 4 Grundobjekten soll ein funktionsfähiges Gefährt werden.
Ohne Konnektoren fallen diese 4 Bauteile einfach runter, ohne groß - abgesehen von evtl. Kollisionen - miteinander zu interagieren. Um aus den Teilen ein funktionsfähiges Gefährt zu machen, brauchen Sie 4 Konnektoren vom Typ Winkel, Modus Scharnier, die die 2 Würfel jeweils an die Drehachsen der Zylinder fesseln.
Selektieren Sie dazu jeweils die beiden zu verbindenden Objekte und erzeugen Sie einen Winkel-Konnektor. Damit werden diese Objekte durch einen Konnektor verknüpft.
Der Trick dabei ist, dass 2 Konnektoren jeweils in der ersten Zylinder-Drehachse liegen und die anderen beiden Konnektoren in der zweiten Zylinder-Drehachse. Dabei ist es unerheblich, wo die Konnektoren auf der Drehachse liegen. Diese können axial verschoben werden, ohne dass die Funktionalität gestört würde. Natürlich ist es sinnvoller, sie an ihre "reale" Position zu verschieben, in diesem Falle wären das die Lager, also dort, wo in der Realität die "Schnittstellen" zwischen drehenden Objekten liegen:
Und damit haben Sie tatsächlich schon ein funktionsfähiges Gefährt geschaffen, was selbstständig auf einer schiefen Ebene rollen kann. Die 4 Objekte bilden einen festen Verbund mit drehbaren Zylindern.
Automatische Positionierung
Bei der Neuerzeugung von Konnektor-Objekten bzw. Konnektoren gelten diese Regeln:
-
Befindet sich in der Objektliste lediglich 1 Objekt, liegt der neu erzeugte Konnektor im Weltursprung. Das Objekt ist damit zunächst mit dem Weltmittelpunkt verbunden - das Konnektor-Objekt kann danach selbstverständlich frei positioniert/gedreht werden.
-
Sind in der Objektliste 2 Objekte, wird der Konnektor ebenfalls im Weltursprung erzeugt, verbindet aber beide Objekte - das Konnektor-Objekt kann danach selbstverständlich frei positioniert/gedreht werden.
-
Sind in der Objektliste 3 oder mehr Objekte - dazu zählen dann auch die Klone von Klon-Objekte - werden die Konnektoren jeweils in der Mitte der verbundenen Objektpaare positioniert. Drehen/verschieben Sie jetzt das Konnektor-Objekt, werden alle enthaltenen Konnektoren entsprechend verschoben bzw. gedreht.
Unpräzise Konnektoren?
Wenn Sie das Gefühl haben, die Konnektoren gehen nicht 100% ihrer bestimmungsgemäßen Arbeit nach, d.h. sie geben nach oder federn zu stark, dann hilft es meist, sich der Präzision der Simulations-Berechnung zu widmen (primär vertreten durch die Parameter Zwischenschritte und Iterationen).
Ein anderer Grund können extrem große Massenunterschiede der Objekte sein. Das mögen Physik-Simulationen im Allgemeinen nicht so besonders.
5 Konnektor-Befehle, aber nur 1 Tag?
Auch wenn Sie unter
4 verschiedene Konnektortypen aufrufen können, so handelt es sich doch nur um ein Konnektor-Objekt mit unterschiedlichen Typ bzw. Modus-Einstellungen. Diese können jederzeit nachträglich geändert werden.Anderes Wissenswerte
-
Sind Ihnen die Simulationen bei vielen Objekten zu gleichartig, kann das Turbulenz-Objekt Abhilfe schaffen, indem es z.B. etwas Unruhe in eine Klonansammlung bringt.
-
Wollen Sie Mauern und Türme bauen, die zum Einsturz gebracht werden sollen? Um den Federeffekt beim Setzen der Rigid Bodies zu Simulationsbeginn zu verhindern, kann Auslösung Bei Kollision definiert werden. Ebenfalls verhindern höhere Werte für Zwischenschritte allzu "elastische" feste Konnektoren.
-
Sie finden zur Anschauung in der folgenden Szene einige Konnektortypen samt Rigid Bodies in Bewegung: