Inverse Kinematik erreicht Ziel nicht?

jccTeq

Erfahrenes Mitglied
Hallo Leute,

nach langer Zeit lass ich mich mal wieder blicken, weil ich eine Frage bezüglich inverser Kinematik in C4D habe.

Ich versuche, mittels IK die Beine eines Hexapoden zu simulieren (erstmal eines). Die Beine sollen 3 Freiheitsgrade besitzen. Die Hierarchie eines Beins sieht so aus (Namen in runden Klammern, verwendete Tags in eckigen Klammern [Phong Tag ignoriert]):

Code:
Null-Objekt (Bein)
|- Öltank (Oberschenkel Gelenk) [IK Tag][Schutz]
   |- Würfel (Oberschenkel Glied) [Schutz]
      |- Öltank (Unterschenkel 1 Gelenk) [Schutz]
         |- Würfel (Unterschenkel 1 Glied) [Schutz]
            |- Öltank (Unterschenkel 2 Gelenk) [Schutz]
               |- Würfel (Unterschenkel 2 Glied) [Schutz]
                  |- Null-Objekt (Bein Ziel) [Schutz]
Ziel der IK ist ein weiteres Null-Objekt, Ende der IK ist das Null-Objekt "Bein Ziel".

Alle Schutz-Tags haben durchgehend aktivierte Verriegelungen, bis auf:

1. Oberschenkel Gelenk - Winkel H
2. Unterschenkel 1 Gelenk - Winkel B
3. Unterschenkel 2 Gelenk - Winkel B

Der Rest ist bei allen Schutz-Tags auf default.

Was funktioniert:
Der Freiheitsgrad am "Oberschenkel Gelenk" funktioniert wie er soll.

Was nicht funktioniert:
Die Freiheitsgrade an "Unterschenkel 1 Gelenk" und "Unterschenkel 2 Gelenk" werden nicht vollumfänglich genutzt. Bewege ich das Ziel entlang der vertikalen Achse, so folgt das Ende der IK-Kette dem Ziel nur widerwillig. Der Winkel B von "Unterschenkel 1 Gelenk" verändert sich nur minimal, obwohl es keine Beschränkungen gibt... Okay, ich zeige das mal anhand eines Videos:

Statt dass das erste Unterschenkelgelenk weiter auslenkt, weichen Ende und Ziel von einander ab. Wie kommt das zustande? Kann mir da jemand einen Tipp geben?


Danke!

Viele Grüße,
Hendrik Wiese
 
Zuletzt bearbeitet von einem Moderator:
Zurück