Need help with rigging or parenting

Hello,

I’ve got an human armature with a human model that I want to attach to an object in a certain way.

Imagine that this armature is sitting on a bike. The ass is the main IK and is parented to the sattle of the bike. the hands of the armature have inverse kinematics contrain to 2 bones that are positioned at the steering bar. Now I need this two Bar_Bone_IK.L and Bar_Bone_IK.R to follow the movement of the bicicle steering and with that the rest of the armature. I tried it with copy location contrains but it doesn’t seem to work in the game engine.

Is there a way to solve this?

Resume: Ass of the guy parented to the sattle of the bike so the whole body follows the movement of the bike. arms should follow the movement of the steering bar but doesnt’t work with copy location contrains…

Thanks in advance for your help!

You do not need an IK constraint at all.

The motion of the steering bar is always the same. This means each hand follows a linear animation path.
All you need is to setup the animation from left to right steering.

After that you need a conversion from steering (of the steering bar) to the keyframes of the animation.

e.g.
steering bar rotation —> keyframe

  • 45° —> -100
    0° —> 0
  • 45° ----> -100

You simply play the pose according to the current steering.
You have the full control over the animation. No incorrect bending of the arms, no unnatural poses. You can even add more complex poses like bending the body starting from certain steering angles.

I hope you get what I mean

thanks monster, the bicicle steering bar was just an example. In my actual situation the movement is non linear (it is not a bicicle, it is a kite-bar but it is easier to imagine a bike). So the steering bar movement is influenced by another object (the kite) and the arms have to follow the bar.

You could do it like in the skatergirl demo. The character is simply not an armature.

Beside that I do not know a solution.

Make the arms with 6dof and rigid body and then animate by applying torque?

Using 6dof can make complex physical scenes, I have a unrolling robot demo I can upload next time i get on my pc,

eofs track to property script is good for lining things up to the nearest copy, this could help with chains etc, Is there any good trackto via torque scripts?

hey blueprintrandom: it would be cool if you’d upload the file. I have really no idea how to get the bone contrains to work… I set the armature actuator run armature, set target and I’ve tried it with a little update script, but nothing works…
the script:
import bge
bge.logic.getCurrentController().owner.update()

ok, I found the solution:
I had the constrains set to local space, I had to select world space. now it works perfectly with just the run armature actuator.

but now i’ve got another problem:

how can I let the head of my armature follow another object? (so the head of the human-object follows the other objects movements like the track-to actuator)

Sorry just got skyrm and ive been away from my computer. Mess with constraints and use rigid body joint on a new torso, after making a ragdoll connect all the pieces with joints that are constrained to the correct angles for.a person, next attach it to the bike via 6dof linkages and then use torque to steer so the longer the press the more torque, if done correctly well timed impules of torqe in the legs could drive the bike.

Seriously overcomplicted btw but ragdoll and rigidbodies have the ability to apply and measure torque which is all you need to operate a realworld servo motor, by measuring and applying dynamic forces, asimo walks

I have only done this once, but I believe that in order to have a bone follow another object, you have to use a Bone Constraint set to Track To, focusing the bone to its target. Then, use Armature actuators, one set to use the constraint and another set to “Run Armature”. If you need to adjust which object to look at, you could make the character look at a specific ghost or empty object, and then move that object about to direct focus (which, I believe, is the way I did it, and the correct way, as I’m not sure if changing the constraint target real-time worked for me).