Xpresso - Unkontrollierte Drehungen

stuffjm

Mitglied
Hallo Community
Ich bin gerade dabei in Cinema 4D ein Uhrwerk zu modellieren und zu animieren. Bei der Animation der Zahnräder stoße ich jedoch auf folgendes Problem:
Ein paar der Zahnräder machen im Verlauf der Animation plötzliche Sprünge (deren Winkel ändert sich zufällig). z.B. änderst sich bei Einem der Zahnräder der Winkel so:

Bild Winkel
1497 255.054
1498 255.038
1499 255.022
1500 234
1501 233.984​

Wie zu sehen gibt es in der Mitte (bei Bild 1500) der Animation von 3000 Bildern einen großen Sprung, ähnlich ist es auch bei Bild 1 und Bild 3000. Warum nun ausgerechnet Anfang, Mitte und Schluss von dem Problem befallen sind, weiß ich auch nicht. Ebenso ist mir unklar warum nur manche und nicht alle Zahnräder davon betroffen sind, denn es sind alles die gleichen Objekte, auf die alle die gleiche Formel in einer langen Xpresso Schaltung angewendet wird. :confused:

Bei der Zahnradverkettung bin ich diesem Tutorial gefolgt und hab die Schaltung konsequent mit verschieden Radien fortgesetzt (Momentan 20 Zahnräder die den Winkel des "Vordermanns" als Ausgangswert benutzen und sich so realistisch drehen sollten, aber eben nicht tun)

Hat jemand eine Ahnung woran das liegen könnte ? Für jede Hilfe wäre ich dankbar :)

PS: Als Basis der Animation dient eine auf dem ersten Zahnrad liegende Änderung des Winkels (B) um 720 ° in 3000 Bildern (Key 1: Interpolation Linear; Key 3000: Interpolation Stufe)
 
Hi!

Hm, häufig kommt es zu "Sprüngen" wegen dem HPB-System: da ist eine Rotation nicht eindeutig bzw. läßt sich durch andere "Werte" ebenso darstellen. Diese Sprünge sind aber meist ein vielfaches von 90° ... und ich wüsste auch nicht, wieso dieses Problem bei einem simplen Zahnrad auftreten sollte ... :(

-> kannst Du mal eine abgespeckte Version (auf den Fehler reduziert) hochladen, dann kann man sicher mehr sagen :)

Liebe Grüße,
Mark.
 
Danke schon mal für die Antwort.
Ich hab nun mal einen Teil aus der Kette herausgenommen;)
 

Anhänge

  • Zahnräder Problem mit Xpresso.zip
    15,6 KB · Aufrufe: 37
Ich hab mir das Ganze eben mal angeschaut. Du bist der Meinung, das Problem tritt nur beim letzten (roten) Zahnrad auf ... tatsächlich aber ist es nur das einzige, bei dem der Fehler sichbar ist. Diese Sprünge gibt es bei allen der letzten 3 Zahnräder.

Der Grund liegt in dem Sprung bei den ersten Zahnrädern von 360° auf 0°. Du halbierst ja immer, wegen der Anzahl der Zähne, die Drehgeschwindigkeit in Bezug auf das erste Zahnrad. So drehen sich die Zahnräder pro Umdrehung des ersten Zahnrades erst 360°, dann 180°, dann 90° und am Ende nur noch 45°. Und genau das ist der Knackpunkt. Bei 45° (bzw. 135°=3*45°) sieht man den Sprung, bei 90° eben nicht.

Wenn du die Zahnräder immer weiter laufen lassen würdest, also z.B. bis 36000°, würde dieser Fehler nicht mehr auftreten.

MfG, TOMahawk
 
Zuletzt bearbeitet:
Hi!

Fieser Fehler ;)
Es liegt an den globalen Winkeln, die Du verwendest. Der Fehler ist bereits bei der ersten Verknüpfung zu sehen: hänge mal an "14 Zahnrad 2" und "15 Zahnrad 2" jeweils am Globalen Winkel.B ein Ergebnis-Node an und betrachte das Resultat. Da wird nicht nur das Vorzeichen verändert (Negieren), sondern der Winkel in den Bereich 0-2pi umgerechnet. So wird aus z.B. 0.29 => 5.993, statt -0.29 und diese "Fehler" steigern sich bis zum Ende immer mehr...

Abhilfe schaffen zwei Möglichkeiten: Lokale Winkel verwenden (Winkel.B), diese werden nicht "korrigiert" oder nicht jeweils den Vorgänger nutzen, sondern für jedes Zahnrad ab erstem Zahnrad die Berechnung vollführen... :)

Liebe Grüße,
Mark.

//edit: noch ein kleiner Tipp, wenn Du jeweils die Zahnradspline und die Spline für den "Ausschnitt" zu zwei Segmenten einer einzigen Spline verbindest, brauchst Du nur diese in ein Extrude-Nurbs setzen und kannst auf das (eklige ;)) Boole-Objekt verzichten :)

//edit2: und noch eine kleine Anmerkung: Multiplizieren und Negieren läßt sich natürlich durch Multiplikation mit einer negativen Zahl erreichen ;)
 
Ich habe mal alle globalen Winkel durch den normalen Winkel ersetzt, denn der globale Winkel startet meines Wissens nach 359° wieder bei 0° -> Sprung bei der Berechnung.

€ mein großer Auftritt wurde also vermiest -_- :D
 

Anhänge

  • Zahnräder Problem mit Xpresso.zip
    15,7 KB · Aufrufe: 22
Hi!

Tschuldigung, konnte nicht die Finger vom Thema lassen ;) Anbei eine Schaltung, die ein Zahnrad jeweils vom Zahnrad darüber (im Objektmanager) abhängig macht: Beim Zahnrad den Radius wählen und folgend werden die Zähne und die Drehung automatisch zu dem Zahnrad darüber angepasst. Und da die Nodes in der Schaltung relativ sind (Vorheriges Objekt, Dieses Objekt), kann ein Zahnrad einfach dupliziert und positioniert (das hätte man natürlich auch automatisieren können ;) ) werden und schon ist es mitten in der Berechnung :)

Liebe Grüße,
Mark.
 

Anhänge

  • zahnraeder.jpg
    zahnraeder.jpg
    39,6 KB · Aufrufe: 68
Also erstmal vielen Dank für die schnellen und hilfreichen Antworten :). Die Schaltung funktioniert wunderbar und erspart mir einiges an Arbeit . Ich denke, dass ich in nun in Zukunft öfters auf XPresso zurückgreifen werde ;)

Viele Grüße, Johannes
 

Neue Beiträge

Zurück