360º Smartbones using cycles

Wondering how to accomplish a certain animation task? Ask here.

Moderators: Fahim, Distinct Sun, Víctor Paredes, erey, Belgarath, slowtiger

Post Reply
Daxel
Posts: 100
Joined: Wed Mar 27, 2019 8:34 pm

360º Smartbones using cycles

Post by Daxel » Sun Apr 05, 2020 12:37 am

I have a character rig with smartbones for 360º head turn, torso turn and pelvis turn. The thing is that those smartbones make those parts turn but when the bone reaches its full rotation, it doesn't go further, giving me problems to animate the character on those bone angles.
As far as I know, there are techniques that can solve this: I remember reading about using cycles but I can't find those techniques explained anywhere, so I've been trying to figure this out by myself with the little hints I found here and there but sadly I didn't succeed. So, can you help me?
hayasidist
Posts: 2192
Joined: Wed Feb 16, 2011 8:12 pm
Location: Kent, England

Re: 360º Smartbones using cycles

Post by hayasidist » Sun Apr 05, 2020 10:53 am

one approach:

in the action have the SB go from 0 to 720 (linear) over, say, frames 1 to 121.
put the turn animation in frames 1 to 61 (linear!), looped from 61 to 2 (so that the SB will be at frame 62 when the turn animation skips back to 2)
start with the SB set at 360 so you can rotate it in ascending or descending -- the interpolation mode on the mainline for the SB rotation can be whatever you want.

(plenty of other ways as well...)
Daxel
Posts: 100
Joined: Wed Mar 27, 2019 8:34 pm

Re: 360º Smartbones using cycles

Post by Daxel » Mon Apr 06, 2020 4:47 pm

hayasidist wrote:
Sun Apr 05, 2020 10:53 am
one approach:

in the action have the SB go from 0 to 720 (linear) over, say, frames 1 to 121.
put the turn animation in frames 1 to 61 (linear!), looped from 61 to 2 (so that the SB will be at frame 62 when the turn animation skips back to 2)
start with the SB set at 360 so you can rotate it in ascending or descending -- the interpolation mode on the mainline for the SB rotation can be whatever you want.

(plenty of other ways as well...)
Thank you, I will try that!
User avatar
Greenlaw
Posts: 4648
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: 360º Smartbones using cycles

Post by Greenlaw » Mon Apr 06, 2020 8:55 pm

What I like to do is use two Smart Bone Actions, one Action for a complete single-direction turn (a 'loop' bone) and a second Action to overdrive the first Action in both directions (a 'turn' bone). This big advantage with this workflow is I only need to create animation for one complete loop in one direction.

To do this, animate your 'loop' Action from front to back to front. Make sure the movement is linear and that the cycle can continue seamlessly back to frame 1. I suggest duplicating the rotation in frame 0 to frame 1 and setting frame 1's interpolation to linear. Leave frame 0's mode to Smooth or whatever you with the default to be during animation. (Naturally, you want Copy Previous Key enabled.)

Then, in the 'turn' Action, animate the 'loop' bone to complete at least two cycles for one direction, and then for the counter 'turn' action, animate the 'loop' bone in reverse for at least two cycles. Again, make sure you're using linear keys for the loop. The reason for cycling twice in both directions is to so I can overdrive the turn when I need to. In some situations, I'll add an additional cycle.

For the 'turn' bone, I normally like to constrain the bone rotation 180 degrees in each direction so there is a complete turn for 90 degrees of rotation. This means I don't have to move the bones nearly as far to complete a turn and I don't over turn it unnecessarily. You can disregard that if you prefer to use a full 360 degrees in both directions the bone; this will give you a smoother turn. (IMO, the extra smoothness isn't needed most of the time but that depends on what the character needs to do.)

Finally, since I want to avoid animating the 'loop' bone, I'll set it to Shy. (With my MQC panel, I can easily Shy and Un-Shy these bones with a button click.)

This is what I've been doing for characters in our TV shows for a few years now. IMO, it's less work to set up turns this way and works remarkably well.

(Note: I wrote the above quickly from memory. Will compare with one of my rigs later today to make sure I got the details correct and didn't miss something important.)
D.R. Greenlaw
Artist/Partner - Little Green Dog | Little Green Dog Channel on Vimeo | Greenlaw's Demo Reel 2019 Edtion
Lead Digital Animator, Dreamworks Animation

Image
Daxel
Posts: 100
Joined: Wed Mar 27, 2019 8:34 pm

Re: 360º Smartbones using cycles

Post by Daxel » Thu Apr 09, 2020 4:05 pm

Thank you so much!

I'm learning a lot of things.

I managed to make the hayasidist's method and fit it to my liking. I wanted the bone to look at the same direction as the head (for clarity I guess, or maybe TOC).

This is a simple demo of it: https://1drv.ms/u/s!AiyKCw6Xey5TgY9CBM-UtZP1xcF4OA
For begginers: to use this kind of bone, you have to animate it using Transform Bone Tool, because Manipulate Bone Tool won't do more than a full rotation, it will find the shortest path instead, turning to the other side (this was a headache for me).


Greenlaw wrote:
Mon Apr 06, 2020 8:55 pm
This big advantage with this workflow is I only need to create animation for one complete loop in one direction.
I don't know if I understood this. I tried to follow the steps and did this: https://1drv.ms/u/s!AiyKCw6Xey5TgY9BZE10RZjmgKtRIA
But I don't understand the advantage over using only one bone and one action like on the other file.
User avatar
Greenlaw
Posts: 4648
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: 360º Smartbones using cycles

Post by Greenlaw » Thu Apr 09, 2020 4:55 pm

Daxel wrote:
Thu Apr 09, 2020 4:05 pm
I don't know if I understood this. I tried to follow the steps and did this: https://1drv.ms/u/s!AiyKCw6Xey5TgY9BZE10RZjmgKtRIA
But I don't understand the advantage over using only one bone and one action like on the other file.

For me, it's simpler to setup, modify, and animate a turn this way. The first bone and action is strictly to animate a single loop in one direction, so it may contain many keyframes. This bone is then hidden so it doesn't get unintentionally animated. The second bone and action is bi-directional (so two actions actually) and is used for animating the first bone. This one is very simple because it essentially just animates the first bone forward and in reverse.

This is mainly a UI thing I guess...the rotation positions of the second dial and its keyframing is very clear to understand visually and is easy to edit. Where I work, I've had to create Moho rigs for many other animators to use so I like the controls to be as obvious as possible.
D.R. Greenlaw
Artist/Partner - Little Green Dog | Little Green Dog Channel on Vimeo | Greenlaw's Demo Reel 2019 Edtion
Lead Digital Animator, Dreamworks Animation

Image
Daxel
Posts: 100
Joined: Wed Mar 27, 2019 8:34 pm

Re: 360º Smartbones using cycles

Post by Daxel » Thu Apr 09, 2020 5:47 pm

Greenlaw wrote:
Thu Apr 09, 2020 4:55 pm
Daxel wrote:
Thu Apr 09, 2020 4:05 pm
I don't know if I understood this. I tried to follow the steps and did this: https://1drv.ms/u/s!AiyKCw6Xey5TgY9BZE10RZjmgKtRIA
But I don't understand the advantage over using only one bone and one action like on the other file.

For me, it's simpler to setup, modify, and animate a turn this way. The first bone and action is strictly to animate a single loop in one direction, so it may contain many keyframes. This bone is then hidden so it doesn't get unintentionally animated. The second bone and action is bi-directional (so two actions actually) and is used for animating the first bone. This one is very simple because it essentially just animates the first bone forward and in reverse.

This is mainly a UI thing I guess...the rotation positions of the second dial and its keyframing is very clear to understand visually and is easy to edit. Where I work, I've had to create Moho rigs for many other animators to use so I like the controls to be as obvious as possible.
I see. Also, with this method you can use the Manipulate Bone Tool and it will work correctly.

The disadvantage I see is that, as far as I know, moho let me animate the loop smartbone in the timeline of the turning smartbone, but if my loop smartbone has other bones being animated in its smart action, those won't move when I rotate the turn smartbone (I talked about this limitation here: https://www.lostmarble.com/forum/viewto ... 13&t=33376)
Is that correct?
User avatar
Greenlaw
Posts: 4648
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: 360º Smartbones using cycles

Post by Greenlaw » Thu Apr 09, 2020 7:28 pm

When nesting Smart Bones, I think you can only go one additional layer deep. I wish that wasn't a limitation but, TBH, it really hasn't been a showstopper for me, and I've built a lot of very complex character rigs for the TV shows at my workplace.

In general, I try not to put too much animation into a into a single Smart Bone control, keeping the function of each dial narrow and specific. For example, for turn dials, I put only the animation for a given body part into dial (i.e., torsoTurn, headTurn, armTurnR, etc.,) For placement and stacking order of the limbs during a turn, IMO, it's better to keyframe this manually rather than build it into the turn action. This increases the custom posing possibilities for the animator, which can make the animation more lively, and it hardly takes more effort to animate.

Putting too much animation into a single Smart Bone Dial tends to limit the character to performing only what that Smart Bone action allows. This can become very frustrating during animation.

Tip: Take a look at the Puss-In-Boots rig here: https://vimeo.com/269815494. This isn't a tutorial video but the opening does show the rig in action mostly using the setup I describe. This was one of my earliest 360-degree rigs and I hadn't yet figured using nested Smart Bones yet, but it does have the arms and legs position animations separated from the body turn. This allowed me to do a lot more fun poses with the character for this interactive episode which you can see later in the video.

Re: Manipulate Bone, this is the tool I use most of the time for bone animation. I find it faster to animate with since I can easily switch between IK and FK modes by holding down the Alt key. Normally, I only switch to Translate Bone when I need to move a child bone from its parent or stretch a bone. Learning the hotkeys can really speed up animation (Z and T in this case, and B for Select Bone.) Or keep the Tools window un-docked and closer to where your character is. (This is what I do when working with a tablet.)

Hope this helps.
D.R. Greenlaw
Artist/Partner - Little Green Dog | Little Green Dog Channel on Vimeo | Greenlaw's Demo Reel 2019 Edtion
Lead Digital Animator, Dreamworks Animation

Image
User avatar
Greenlaw
Posts: 4648
Joined: Mon Jun 19, 2006 5:45 pm
Location: Los Angeles
Contact:

Re: 360º Smartbones using cycles

Post by Greenlaw » Thu Apr 09, 2020 7:31 pm

I think have a few tricks for working with nested Smart Bones but I can't recall them at the moment. I'll dig into my notes later and see what turns up. It seems like I once used target bones to keep nested Smart bones 'active' in the timeline, or something like that. Let me see if I can track down what that was about.
D.R. Greenlaw
Artist/Partner - Little Green Dog | Little Green Dog Channel on Vimeo | Greenlaw's Demo Reel 2019 Edtion
Lead Digital Animator, Dreamworks Animation

Image
Daxel
Posts: 100
Joined: Wed Mar 27, 2019 8:34 pm

Re: 360º Smartbones using cycles

Post by Daxel » Fri Apr 10, 2020 2:42 pm

Greenlaw wrote:
Thu Apr 09, 2020 7:31 pm
I think have a few tricks for working with nested Smart Bones but I can't recall them at the moment. I'll dig into my notes later and see what turns up. It seems like I once used target bones to keep nested Smart bones 'active' in the timeline, or something like that. Let me see if I can track down what that was about.
That would be coo! Actually I use different smartbones for each turning body part, because you suggested that somewhere, months ago. But I animate the spine bones, for example, on the torso turn smartbone. And I have some bony eyebrows that follow the head turn... things like that.

Now that I'm editing my smart actions I'm wondering if you know some way to click on an action and see wich layers are animated by it. I see I can do the opposite, click on a layer and see in wich actions is animated, but now that I'm about to reposition a lot of keyframes from multiple layers on the smart action, I would love to see wich layers are affected by this action to turn their "show on the timeline" on.
Post Reply