PDA

View Full Version : IK/FK and the likes


AlexK
08-05-2004, 04:18 PM
I just stumbled over an older thread about IK/FK from Jason SChleifer. He describes a system used by Mirai and other tools (MotionBuilder, Animanium, etc.). Sounds quite interesting. How about an animation workflow like this in Messiah? Or is it already possible and I missed something?
So something I've been thinking about for a while is the whole way that Maya & Softimage deal with forward and inverse kinematics. They pretty much force the user to think about which method they're using at all times.. which usually isn't TOO big of an issue, but it can get daunting if you want to switch back and forth more than 2 or three times within a shot. And if you need to change your timing, it can get really really messy.

I was looking at how a package like Mirai handles fk/ik blending and it basically just has a skeleton that you animate pose to pose. You can lock down certain bits of the skeleton (feet, hands, torso, hips, etc), and move the rest of the body either with ik (grab a hand and move it), or fk (grab an arm and rotate it). You can even do an "inverse fk".. grab the foot and rotate the lower leg AROUND the heel, lifting the body (woah).

The trick is that you don't have "animation curves" to deal with.. you're animating pose to pose. So you can't really offset parts of the body w/out going and modifying the poses.. it's much more like stop motion or 2d animation. However, you never have to THINK about what you're doing.. if a hand is in the same spot in space for 2 poses, it's an inverse kinematic solve. It's very fast.. seems very easy to use..

I'm wondering if anyone else thinks it might be great to have sometying like that in Maya. Think about how much easier it would be to rig up fingers and hands.. you need to pin the tips of the fingers? fine. Pin 'em, move the hand. They stay where they're supposed to. Need to move 'em with FK? no problem. rotate 'em. done. Have a character falling off a building and tumbling so you need to alternately pin the chest, then hips, then feet, then head, then chest, etc? easy. just pin 'em. done.

I think that this method of animating could really push maya to the next level.. what are your opinions? (I've already logged this as a SUG through a|w, but I wanted to hear what others thought).
This quote is from the thread Future of forward/inverse kinematics? (http://www.cgtalk.com/showthread.php?t=58455&page=1&pp=20&highlight=Future)

PaulNewman
08-05-2004, 05:31 PM
Doesn't the latest messiah release offer posing? And then for those who really need to fine tune more, there's of course, more. So, if I'm not mistaken, messiah would allow you to choose your workflow according to your needs / preferences.

Or am I being too shallow here while you are referring to something deeper?

AlexK
08-06-2004, 08:24 AM
Well, posing (in Messiah) would be to save a pose for later reuse, if I understand it correctly. The above approach is totally different. While you are able to save reusable poses, too, the main concept is different. You animate not by making keyframes for you IK handle and then animate an IK/FK switch and then animate your bones FK and then fine tune the curves.
Instead, (again, if I understand it correctly) you just grab your hand and move it IK, pose done, then you want to pin the hand the next 10 frames to that chair, but move the upper arm FK. So you just pin the hand and rotate your arm. Finished. You don't have to think about IK/FK or setting it up anymore. You just pin down any element you like pinned down. That's it.

Or something like that it is supposed to work, I guess. But read the thread, it gets more cleary there.

PaulNewman
08-06-2004, 11:25 AM
That's one mean informative thread! I see what you mean with the different approach. Looks like the Maya animators are also drooling about it. Interesting that the much scorned 5 year old Biped in Max employs something similar with the footstep driven animation, except that it only comprises a subset of this paradigm. They also talk about Sega's Animanium (this link shows Animanium operational videos) (http://www.animanium.com/product_operational.htm).

http://www.animanium.com/images/movie_operation1.jpg http://www.animanium.com/images/movie_operation2.jpg http://www.animanium.com/images/movie_operation3.jpg http://www.animanium.com/images/movie_operation4.jpg http://www.animanium.com/images/movie_operation7.jpg

In 1999, Sega Future Product Research Group questioned if they could move characters the same way cell picture animation did. Our objective was to make an unprecedented 3D CG software capable of creating natural movements and desired nuances.

An encounter with a prominent Inverse Kinematics(IK)
When visiting the Nakamura Laboratory of Tokyo University Graduate School Department of Mechano-informatics studying humanoid control engineering, we were greeted by the human-shaped self-reliance action simulator program* just produced. This outstanding program calculates all body poses at once, and reacts to obstacles and ground situations and makes precise moves. This encounter with a prominent IK made SEGA | ANIMANIUM, an inventive 3D CG software possible.

An outstanding interface that reacts in real time
An optimal software has to be easy to use. Using the program made by the Nakamura Laboratory as a base, we completely inspected what a simple yet effective 3D CG software should be like. The results showed that in the creator's mind, 2D and 3D were both seen as the same 3rd dimension. To pursue the maximum interface efficiency, we called upon real animators to incorporate what they were used to doing in 2D to the software production. As a result, SEGA | ANIMANIUM is a simple software that users barely need training for, with its simple interface unthinkable from past CG software which makes top quality animations.

I've looked at Animanium on a previous occasion and the workflow is quite uninhibited, allowing the animator to animate with phenomenal ease! It would be nice if this paradigm could be implimented as an optional 'mode' in messiah - still giving you access to all messiah's other tools. Perhaps if such a mode were selectable on a per-rig basis, allowing you to mix various animation paradigms in one scene. I personally think that something like this could really take messiah to a different level. IMO it falls perfectly inside messiah's character animation focus to include something like this.

AlexK
08-06-2004, 11:46 AM
I personally think that something like this could really take messiah to a different level. IMO it falls perfectly inside messiah's character animation focus to include something like this.
That's what I was thinking. What do you think pmG?

PaulNewman
08-06-2004, 12:00 PM
Any pmG guys know Japanese? Check out the link to the Nakamura Lab (http://www.ynl.t.u-tokyo.ac.jp/) which developed stuff used inside Animanium.

And here's a list of their publications (http://www.ynl.t.u-tokyo.ac.jp/old_htdocs/publications/papers99/index.html).

And of special interest to character animation, here are English PDF publications from the year 1999 :

Dynamics Computation of Structure-Varying Kinematic Chains for Motion Synthesis of Humanoid (http://www.ynl.t.u-tokyo.ac.jp/old_htdocs/publications/papers99/icra99/katz/katz.pdf)

Development of the Cybernetic Shoulder --A Three DOF Mechanism that Imitates Biological Shoulder-Motion (http://www.ynl.t.u-tokyo.ac.jp/old_htdocs/publications/papers99/iros99/okada/okada.pdf)

Dynamics Computation of Closed Kinematics Chains for Motion Synthesis of Human Figures (http://www.ynl.t.u-tokyo.ac.jp/old_htdocs/publications/papers99/iros99/katz/katz.pdf)

There are also many other publications of interest. I just linked to a few.

dobermunk
08-06-2004, 12:00 PM
Pinning is a key feature, I'd love to see in messiah. Asked Mark Wilson about it some time back. Hope he doesn't mind me putting his reply here:

"
Well, I haven't given it a great deal of thought but... The pinning
itself is just a moveTo() to a given point which you could implement via
an expression that could be faded via a slider. Obviously doing this via
an expression would require a new expression every time you wanted to
pin something, so that's not the best way to address your problem. An
armature plugin could incorporate the moveTo idea but do all the
expression work for you, and allow you to turn it off via a button on
the interface or whatever.
"

PaulNewman
08-06-2004, 12:10 PM
Here's a 2003 publication from the same Lab.

Dynamic Computation of Musculo-Skeletal Human Model Based on Efficient Algorithm for Closed Kinematic Chains (http://www.ynl.t.u-tokyo.ac.jp/old_htdocs/publications/papers03/amam03/fujita.pdf)

So someone going to read a bit this weekend and announce an update to messiah early next week? :)

tjnyc
08-06-2004, 02:40 PM
It is not just pinning or locking somthing with moveTo, it is about how the whole IK calculation reacts to parts of the skeleton being pinned. It is an amazing feature in Mirai. If you look at the thread ambientWhisper shows an example of pinning in Mirai. I would be very impressed if pmG gets this feature in messiah.


Cheers,

AlexK
08-06-2004, 03:04 PM
If you look at the thread ambientWhisper shows an example of pinning in Mirai.
Unfortunately his video is no longer there. I tried all links in this thread, but all are 404 one's. :cry: I'd love to see this working.

tjnyc
08-06-2004, 03:15 PM
Try ambient's site, he might have it there.

I'll try to get an example of it if I can. I used to own Mirai, but I have a friend that still has his. I'll ask him if he could get a capture of pinning in action. One cool example of pinning in Mirai is how you can animate a freefall. Pin the legs and arms and pull either the pinned parts or the root of the skeleton chain which is at the belly and the rig would react like it was in freefall. Very cool stuff and easy to simulate forces on a rig, which would be very difficult in other programs. Other examples would be simulating dangling/hanging, or being forced back by an explosion and stop motion type animation.


Cheers,

AlexK
08-06-2004, 03:56 PM
:drool: stop it!! :drool: stop it!!! :drool: please!!!!!!!!!! :drool:

Gwot
08-06-2004, 05:37 PM
Animanium probably has the best workflow I've ever used in an animation package... however, it's almost too simple and somewhat limited and the pinning system is still a bit funky compared to say Motion Builder. Because of this I've found MB to be my tool of choice for most humanoid character animation. The pinning is solid and the character controls, timeline and animation control panel are pretty much all you need to crank out quality work really fast. Combine that with a nice pose system that can work on the whole body or parts, including mirror poses.

I pretty much only animate with the IK rig in MB because it gives you absolute control over your character at every joint. Combine that with the floor constraints and you can crank poses out incredibly fast because you don't have to worry about keeping your feet aligned to the floor or whether you are in IK or FK mode.

I'm not a big fan of IK/FK switching in general, especially after using MB, which doesn't really need it with the way it's IK rig is setup. It makes switching seem like a hassle comparatively, even though you have full access to this feature too anyway if you like. I definitely prefer Animaniums posing over IK/FK too. Not having to think about blending and just focussing on the pose with simple translate/rotate on the fly kicks butt. Floor constraints and improvements to the pinning/locking would really make me consider purchasing that app, despite it being over priced and lacking in other basic features.

messiah does most of this stuff too now though, with the added advantage of being easier to work with when building custom rigs... though I still find it to be more work than MB for human stuff and I'd like to see this change, as I really enjoy messiah's interface.

XSI 4 has a pin constraint now too (not sure if it was in earlier versions as I'm a new user as of version 4). From what I've seen of it, it's pretty solid.

One other thing I really use a lot in MB, and enjoyed in LW with Keytrak, or max with CS is animation layers. These are a powerful way to modify animation quickly to produce a wide variety of animation from a single source, including tweaking mocap painlessly. I would love to see layers in Messiah ASAP.

I'd love to see messiah evolve towards more powerful, workflow enhancing features like pin and floor constraints that don't require any setup work on the animator/rigger's part. This is all part of Motion Builder's charm and essentially what Animanium is trying to achieve. I'd also like to see the auto rig tools opened up more to the user so that we can create and store our own rigs and rig parts for future reuse. This is where XSI is going with it's character sdk and something I'm anxious to dig into, not to mention its large library of different constraint types.

PaulNewman
08-06-2004, 05:56 PM
Hey MarvinTMartian - great thread you started here! :thumbsup: I would really like to hear if the pmG guys have any comments on all this. Perhaps they're quiet because they're already implimenting this stuff and replying on this thread may compromise their secret agenda for messiah's next release.

tjnyc
08-06-2004, 06:03 PM
I'd love to see messiah evolve towards more powerful, workflow enhancing features like pin and floor constraints that don't require any setup work on the animator/rigger's part. This is all part of Motion Builder's charm and essentially what Animanium is trying to achieve. I'd also like to see the auto rig tools opened up more to the user so that we can create and store our own rigs and rig parts for future reuse. This is where XSI is going with it's character sdk and something I'm anxious to dig into, not to mention its large library of different constraint types.
Hey James,

I believe Lyle or Fred was stating that when AutoRig II is done it will allow users to reconfigure their own setup and be reusable.


Cheers,

Gwot
08-06-2004, 06:20 PM
Hi Tony,

Yeah I remember something one of them mentioned about that awhile back saying it was in the works. Looking forward to that when it happens. There's so much potential in the auto rig tool. Just needs some loving to grow it in the right direction.

JoeCosman
08-06-2004, 06:28 PM
....anyone considered using motion dynamics to test this sort of thing?

AlexK
08-06-2004, 06:33 PM
Like how Joe?

AlexK
08-08-2004, 09:24 AM
Oops, sorry, wrong topic. :blush:

AlexK
08-11-2004, 01:36 AM
Hey Lyle,
I see you are around today. Maybe you have the time to give a quick comment on this thread. Did you "know" about this techniques (stupid question, I'm pretty sure you knew), what's your point of view, is something like this planned for the future (or even a not so distant future)? You know a basic statement, so I can sleep well again. ;)

AlexK
11-24-2005, 02:52 PM
*bump*
I just stumbled over this thread I opened last year and think it is still something worth concidering. Maybe you guys at pmG can make a statement this time. :twisted:

CGTalk Moderation
11-24-2005, 02:52 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.