Jump to content

bone animation constraints trouble


Recommended Posts

I'm trying to animate the complex main gear of the F-104 and I'm running into trouble figuring out how to set the bones and constraints. My current iteration looks like the following (left main strut):

 

LdgGearAnimation_zps28f0f5f3.jpg

 

I currently have two HI IK Solver chains and two dummy controllers. The first IK solver chain links the upper pushrod mount to the bell crank ball socket and finally to the bell crank pivot point. The goal is the bell crank pivot point and it is linked to the strut dummy controller. The second chain is linked from the bell crank ball socket 2 to the wheel mount toe crank to the wheel mount pivot point with the goal at the pivot point linked to the strut dummy controller.

 

I'd like the bell crank and the wheel mount to rotate about their pivot point. The bell crank and wheel mount are linked to the second bones in each chain. However, if I rotate the strut dummy controller, the bell crank rotates mostly correctly, but eventually twists and aligns with the upper push rod and the wheel mount rotates correctly initially, but then gets pulled out of place.

 

I'm guessing that part of the problem is that the joints of the chain are not coplanar (or rather in real life the plane of the joints would rotate as the crank changes position) and that the HI IK solver expects the joints to be coplanar and the plane doesn't change. I've tried applying rotation constraints to a particular axis, but it doesn't seem to do much good.

 

Here's a short video clip illustrating the problem (

):

 

 

Does anyone have any suggestions?

 

Solution:

 

I've managed to work out the solution to the problem and I am creating a 3 part video series to illustrate how. Here are the first videos of the series:

 

 

 

Thanks,

Red Beard


Edited by RedBeard2
Link to comment
Share on other sites

hard to understand with text, try with a video

From experiences , twisting comes when the bones angles are approching the line to ik target

Also for mecanical parts , i would highly recommand using only dummies and no bones at all

other theory, in motion panel make sure you are in euler rotation aswell translate x,y,z

Link to comment
Share on other sites

I added a link in the first message to a short video clip which illustrates the problem. I'm not sure why the embedded video doesn't appear to work, but the link will get you there.

 

Once the problem is solved, I'll replace the video with a "tutorial" on how to get it all working correctly.

Link to comment
Share on other sites

Just a heads up, last information is that IK Links are not support by the EDM tools at this time. A workaround is to use IK links until everything is correct, and 'burn' the animation frames into the corresponding mesh or dummies before exporting

 

EDIT: Sniped by Aaron....That's what I get for clicking reply and forgetting to actually reply!

Nevada map contributer

EDM Modeling tools FAQ:

http://forums.eagle.ru/showpost.php?p=1418067&postcount=1

Seo libh a chairde is chanadh liom. Líonaigí'n oíche le greann is le spórt. Seo sláinte na gcarad atá imithe uainn. Mar cheo an tsléibhe uaine, iad imithe go deo

Link to comment
Share on other sites

That's good info. Thanks. That still leaves the problem of getting the IK animation correct before 'burning' into the animation frames, which I guess I'll have to go read about (I'm assuming it's something more than just key frames at short intervals).

Link to comment
Share on other sites

Well, I've determined that the HI IK Solver will definitely not work for this. The HI IK Solver expects all joints to be coplanar and all joint movement will be in plane.

 

The plane of movement that I need is defined by the 3 joint positions of the bell crank. This leaves the root joint of the upper push rod out of plane.

 

I'm going to see if I can figure out the HD IK Resolver params and get that to work instead. Docs for it seem sparse though.

Link to comment
Share on other sites

You're referring to "baking" the keys. Same idea, of course!

 

Bake! yup, thats the word I was looking for

 

If you figure it out let us all here know. IK links hurt my head

Nevada map contributer

EDM Modeling tools FAQ:

http://forums.eagle.ru/showpost.php?p=1418067&postcount=1

Seo libh a chairde is chanadh liom. Líonaigí'n oíche le greann is le spórt. Seo sláinte na gcarad atá imithe uainn. Mar cheo an tsléibhe uaine, iad imithe go deo

Link to comment
Share on other sites

You would think there would be an easy way to say connect THIS spot to THIS spot, and a checkbox field that selects what kind of rotation limitation.

 

For instance, Connect Mesh A to Mesh B at Mutual Pivot Point, and restrict rotation to Vertical, Horizontal, or Free Motion

Nevada map contributer

EDM Modeling tools FAQ:

http://forums.eagle.ru/showpost.php?p=1418067&postcount=1

Seo libh a chairde is chanadh liom. Líonaigí'n oíche le greann is le spórt. Seo sláinte na gcarad atá imithe uainn. Mar cheo an tsléibhe uaine, iad imithe go deo

Link to comment
Share on other sites

The HI IK Solver is not far from this, BUT you're limited to motion in a single plane.

 

I can fake the single plane for the upper push rod by creating a coplanar point for the upper ball socket and connecting the root bone to it, however, I tried this with the lower control rod and also reversing the root and goal of the IK chain on the lower bone chain. It kind of works, but the geometry is such that the farther out of plane you are, the more of a problem there is.

 

Creating a coplanar point works and it will follow the bell crank movement, but the geometry won't cause the wheel to fully rotate if that is done.

 

I was hoping to avoid manually positioning everything as I still have a shock absorber, gear retract actuator, actuator floating assembly, gear doors, and gear door push rods all connected to the retracting strut.

 

I may try to automate most of the joints using IK and just manually position the wheel mount.

Link to comment
Share on other sites

After lots and lots of experimentation and little documentation, I think I've figured out how I can do this using the HD IK Solver. At least it works in 3ds Max when I just have a bone chain.

 

Now, I just need to apply it to the model, do the animation arg keys, and check if everything holds together outside of 3ds Max.

 

Wish me luck. :-)


Edited by RedBeard2
Link to comment
Share on other sites

Hmm. Well the test didn't go as well as I expected and for multiple reasons.

 

I had the IK chains working just fine. I could grab an animation controller dummy, rotate it, and the IK chain bones would animate the parts of the model as they should be.

 

I then tried creating an arg based rotation controller for the animation controller dummy and animating it using autokey. I would move the time slider forward 10 frames rotate the animation controller dummy to the next position, and click key to create a key frame. So far so good.

 

After I got out of auto key, I tried to play the animation back using the arg based controller. When I did parts started breaking loose and generally not going where they should though some parts did animate correctly.

 

Just for grins, I tried exporting that and playing it back in the modelviewer. The IK animated parts were frozen.

 

So, it appears that either I'm not baking correctly or there is no good way to drive an arg based controller which is used to drive IK. I tried checking more about baking animation and I saw that people were exporting to FBX and importing, but I'm still not sure how that gets driven by an arg based controller. I also saw references to IK chain support for key frames, but it wasn't clear how to use that or tie that to an arg based controller.

 

If anyone has ideas, please let me know.

Link to comment
Share on other sites

Success! I've finally managed to find a way to use IK Solvers to animate parts in DCS World. I'll be writing up the process in the guide and creating a video to demonstrate the steps.

 

In short, I had to create a double bone structure. I use one set of bones for performing IK solutions. The second set of bones are controlled by arg based controllers and I use key frames to align the arg based bones to the IK bones as I animate.

 

There are more workarounds that need to be applied than just that, but that's the core of the solution.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...