Anim8or Community

Please login or register.

Login with username, password and session length
Advanced search  

News:

An update to Anim8or, v1.00b, is available with a few bug fixes. Get your copy HERE. See the "ReadMe" file for details.

Pages: [1] 2 3 ... 9

Author Topic: IK tool  (Read 13630 times)

Steve

  • Administrator
  • Hero Member
  • *****
  • Posts: 1532
    • View Profile
IK tool
« on: July 23, 2016, 06:51:32 pm »

I posted an updated IK tool in build 1247 dated September 4, 2016. The controls have been improved significantly. Here's the updated details:

To add an OK chain: In the Figure Editor, select two bones, one which is the ancestor of the other. Then apply the Build->AddIKChain command.
IK Handle: The IK Handle is shown as a small cube when the IK button is enabled in the Visibility section of the left-hand toolbars in the Figure editor.  You use this to access the IK chain's properties here. Double click to edit, move and scale it with the normal tools.
IK Widget: In the Sequence editor you move IK chains in IK mode. In addition to the IK Handle, the End Effector and move widget are shown. The End Effector is a small icosahedron positioned at the tip of the tail bone of the IK chain. Centered in the End Effector is a 3-axis cross hair for posing the chain.
IK Goal: The goal is the location that you are trying to position the end effector. As you move it around the joints in the associated IK chain will bend to try and keep the end effector aligned. If you move the goal out of range Anim8or will get as close as it can.
Undo: should work for all IK related actions.  Please report anything that doesn't work correctly.

Note: the "Rotate Children" option isn't enabled, so for the time being the child bones will be affected regardless.

To use IK:
1. Add IK controls to a Figure by selecting two bones, one which must be the parent of the other, and use the Build->AddIKChain command.
2. Create a Sequence with the Figure and click on the IK tool. The IK widgets will be shown and the animation key will be automatically enabled.
3. Click-drag on the End Effector to move the Goal in the plane of the screen. You can also click-drag the IK Handle for this. Click-drag on the different axes to move the Goal in the X, Y or Z direction relative to the Figure.
4. If the goal is unreachable, it will be shown separately from the end effector with a dashed line connecting them.
5. Anim8or adds keys for all joints in the IK chain when you move the end effector. All joints are then animated according to their individual keys. This is not the best behavior. I think a better way is to animate the end effector and use IK to position the joints accordingly at each frame. But what I have ready now is a good start :)

New to build 1247:

Locked End effector Position: In the Scene editor you can lock the position of an end effector. Then when you move any part of the figure between the locked joint and the root the position of the figure will automatically adjust to keep the effector in the same location. To lock an effector: double click on the handle and check the Lock Position check-box. Note: currently only one effector can be locked at a time.

Full Body IK: The entire body of any figure can be manipulated. Click-dragging on any bone or attached object will create a temporary IK chain from that bone to the root. This is an experimental feature. There are some issues, such as the temporary effector only moves in the plane of the screen so if you aren't in the proper view it will distort the figure. Of course the normal IK tools still work the same. Please try this out and let me know what you think.

Selected IK Controls: Build 1247 doesn't show the IK widget until you click on the handle to select it. This reduces the clutter on the screen with multiple IK chains. It also makes easier to see what it happening because the IK widgets are now drawn on top of everything.  However when several IK handles are selected the widgets can appear incorrectly drawn.

Future details: restraints on orientation of joints, IK chains that don't have to be ancestors, different IK solvers.

Joint Limits: using limits can help when you are animation.  IK favors the default angle and obeys all joint limits. Without limits you can get some strange

I've attached an updated example project on September 4, 1026.  See the Scene editor which uses the humanoid.

Have fun!
« Last Edit: September 05, 2016, 05:27:13 pm by Steve »
Logged

slex

  • Jr. Member
  • **
  • Posts: 87
  • 3D-TV
    • View Profile
Re: IK tool
« Reply #1 on: July 24, 2016, 02:04:09 am »

I like the new IK tool, but it works good only on bones and just partially on objects.
I've added the object to a skeleton and after skinning only the bone to which object is firstly added is affected with IK tool. However, 'standard' bone rotation works as it should.
Logged

Steve

  • Administrator
  • Hero Member
  • *****
  • Posts: 1532
    • View Profile
Re: IK tool
« Reply #2 on: July 24, 2016, 04:12:43 am »

Sorry, I forgot to mention that. Skinning is a work in progress. I'll attack that when I'm back from SIGGRSPH.
Steve
Logged

slex

  • Jr. Member
  • **
  • Posts: 87
  • 3D-TV
    • View Profile
Re: IK tool
« Reply #3 on: July 24, 2016, 12:16:23 pm »

Good luck  :)
Logged

Trevor

  • Full Member
  • ***
  • Posts: 167
  • Goldfinger64 Dev OS:10.0.17017 Gfx:RX480 Loc:UK
    • View Profile
    • LS Tech Services
Re: IK tool
« Reply #4 on: July 24, 2016, 04:07:03 pm »

I have to say this is awsome :)

Being able to drag a joint to a place in space and have an8 work out the angles for you is awsome.

It even works with the GoldenEye Export hacks (where x becomes Z, y becomes X and z becomes Y through the addition of locked rotated joints)

Trev
Logged

captaindrewi

  • Sr. Member
  • ****
  • Posts: 450
  • errm...errr?
    • View Profile
Re: IK tool
« Reply #5 on: July 25, 2016, 10:21:03 am »

july 23, 2016 ...a great day for the history books....enjoying.
Logged
!

neirao

  • Sr. Member
  • ****
  • Posts: 570
  • Neirao
    • View Profile
Re: IK tool
« Reply #6 on: July 25, 2016, 01:51:35 pm »

Very Nice!! Thanks Steve!! :)
Logged

captaindrewi

  • Sr. Member
  • ****
  • Posts: 450
  • errm...errr?
    • View Profile
Re: IK tool
« Reply #7 on: July 25, 2016, 02:13:17 pm »

The example test file works fine :) but i am struggling to create my own figure with IK chain, the cross hair control is created but nothing moves.When i try to make a 2 bone ik chain the cross hair thing appears in a different place than the two bone example.
Logged
!

Trevor

  • Full Member
  • ***
  • Posts: 167
  • Goldfinger64 Dev OS:10.0.17017 Gfx:RX480 Loc:UK
    • View Profile
    • LS Tech Services
Re: IK tool
« Reply #8 on: July 25, 2016, 03:12:20 pm »

works fine for me and I had a chain of  9 (3 joints, 2 connectors and 4 "converters")

when you create it you can assign the bones in the dialog or
Click the "root" (doesnt need to be the bone named root, but could be for example the shoulder) and then right click the end (eg hand)
This should result in 2 selected bones.
Build > Create IK Chain > OK

Now when you see the crosshair and click on it you will see all the bones in the chain highlight and when you drag the crosshair it will move the final bone as close as possible to the position by rotating the previous bones.

If your bones are locked then nothing will happen.

For testing purposes make your bones free.

Also, I should mention, although the screenshot I posted should be proof enough, that bone skinning actually does work with IK.
The "Problem" is that it doesnt update untill you bring up a dialog and close it.

Trev
Logged

captaindrewi

  • Sr. Member
  • ****
  • Posts: 450
  • errm...errr?
    • View Profile
Re: IK tool
« Reply #9 on: July 25, 2016, 06:28:46 pm »

Yeah working as expected now :) once i changed the bone limits to -90 0 90 values rather than default no limits.
Logged
!

Kyle

  • Full Member
  • ***
  • Posts: 185
    • View Profile
Re: IK tool
« Reply #10 on: July 25, 2016, 09:46:30 pm »

YES! This was easily my most requested feature. It sounds like its still rusty, but any progress is a start, since we only got a taste of it before.

Edit: The sample seems to work as expected, but I too am having trouble setting up my own. Guess I need more of a tutorial.
« Last Edit: July 25, 2016, 10:08:14 pm by Kyle »
Logged

daniel99

  • Sr. Member
  • ****
  • Posts: 312
  • Me : Anim8or RULLZ \m/
    • View Profile
Re: IK tool
« Reply #11 on: August 04, 2016, 09:27:15 am »

Wow, Steve! :D
And that makes anim8or the god of 3d programs :D At least in my book.

But I really believe a controller for the root would be essential.
As can be seen in my attachment img, when you move the root control, the feet would stay fixed on the ground, until the feet controls are moved.

I find it useful that the IK controller creates frames for every bone.

Also, I believe would be great to be able to hide the bones and only show the IK controls.
     Thanks Steve. You're awesome, as always :D
« Last Edit: August 04, 2016, 12:51:11 pm by daniel99 »
Logged

johnar

  • Sr. Member
  • ****
  • Posts: 814
  • Make it, Move it--Give it Life
    • View Profile
    • youtube vids
Re: IK tool
« Reply #12 on: August 05, 2016, 09:52:55 am »

Agree with daniel99
Quote
...a controller for the root would be essential...when you move the root control, the feet would stay fixed on the ground, until the feet controls are moved...
No more slipping feet!!!
 Would need a similar setup to allow for hands to stay in place ?

 It's really really excellent that anim8or now has the beginning of an IK system, and it's really, really, REALLY excellent  that we will now begin to have both IK and FK systems to choose/use and mix.
Quote
july 23, 2016 ... sure is a great day for the history books....
Yip, a really signiffagint day. A giant step on the way to the big V1

Absolutely awesome steve.!!! Anim8or for life
 
« Last Edit: August 05, 2016, 10:48:39 am by johnar »
Logged
%

daniel99

  • Sr. Member
  • ****
  • Posts: 312
  • Me : Anim8or RULLZ \m/
    • View Profile
Re: IK tool
« Reply #13 on: August 05, 2016, 11:29:21 am »

Thanks, Johnar. Btw, I've missed your characters :D
I've seen a recent post with them.
Logged

Steve

  • Administrator
  • Hero Member
  • *****
  • Posts: 1532
    • View Profile
Re: IK tool
« Reply #14 on: August 05, 2016, 04:04:06 pm »

Thanks, everybody. I finally got tired of the IK not working and spent a bunch of time finding and fixing the problem(s) with the solver.  It's not perfect but at least it's functional now.

The next part is the controls for the IK tools.  I'm still working out the details but I've made a lot of progress. There will definitely be a way to lock the position and/or the angle of the end effector though I haven't worked out the details yet.

The idea is that you lock can enable and disable the lock by frame so you can lock the left foot and move the right foot to make your character take one step, then lock the right, unlock the left and step with the left foot.  The rest of the character will follow.

There's still a bunch of work to get this implemented but this is my current project. Stay tuned I'll post an update soon ...
Logged
Pages: [1] 2 3 ... 9