Alright, so I’ve had this problem before but I just manually fixed it. Except I don’t want to keep having to manually fix an issue that should be working. I do not know if this is a bug, or if I’m just doing something wrong, but hopefully someone can figure out what’s going on.
It’s a simple thing, or at least it should be. I’m trying to make walk cycles/run cycles, etc, and so I animate one step like I usually do. However, when I go to paste the copied keyframes (and flip them with the built in flip keyframes function) within the action editor or dope sheet it seems to edit some frames of the original copy. Pasting over it again does not seem to fix the problem.
So then parts of the cycle are slightly out of alignment. Now this wouldn’t be such a big deal except that it often does this with the feet, and limbs that were once nicely planted on the ground would then be lifted up, or down, or sideways.
If I need to upload my .blend for this to be solved I will, though it seems to be consistent between multiple blends.
Model is not free for use, so please only use this to help me solve my problem.
It should be set on the animation I’m trying to flip, so all you’ll have to do is copy the keyframes and then paste-flip them.
One keyframe I notice a difference in after pasting the flipped animation for the other step is on frame 23. Where the foot was once nicely planted on the ground it now seems to tilt up at the foot bone. I’m probably missing something really simple here, but can’t figure out what. If I undo the flipped-past the foot on frame 23 goes back to normal. This isn’t the only place the animation seems to ‘move’ on its own from its original position either.
Haha. I hope I can figure this out, I’m really proud of the animation I have so far but can’t go any farther until I solve this.
what I think is happening is the new key frames you paste in at the end change the interpolate of the animation curves between the key frames where you have the problem.
For example, just as a test, if you keyframe every bone on frame 23 does the pose still change after pasting in new flipped keyframes?
edit: with feet sometimes I set the keyframe interpolation to vector on the step part of the run to remove any ease in or our as the foot hitting the ground is like someone punching a wall, you don’t want to slow the motion down before the impact occurs
Uhhh. Ahaha. Unfortunately I have no idea what you mean by keyframe interpolation. o-o; I’m fairly well versed with blender but there’s still a lot of things I’m learning and terminology I’m unfamiliar with. I haven’t even touched animation curves before, I just keyframe and go.
However when I key every bone on frame 23 and then add the flipped keyframes they do not move.
I’ll have to look into the interpolation/graph editor more in depth later. Just reading a documentation on something for me isn’t helpful, I’ll have to find some tutorials on it.
And motion paths! Yes! I do use those. Very helpful for getting smooth curves or pinpointing where exactly a harsh jitter/jerk in your animation is.
Unfortunately I still don’t know how to solve my problem and I really don’t want to have to keyframe every single frame before I copy/paste the flipped animation.
Change all of your keyframe handle types to Auto Clamped. (Preferences> Editing > Handles). This will ensure that your noodles( graph editor lines) do not ever go past the value you set the keyframe at. Some interpolation types will move the value above or below the keyframe value because it is trying to create the smoothest curve possible.
It’s almost never a good idea to have an extreme value that is not at the keyframe.
You can select all your keyframes in the dopesheet and change the handle types there as well. In one shot. No work lost.
According to my user preferences keyframes are already set to Auto Clamped. Making sure this is so by changing it in the dope sheet doesn’t alter anything for me.
You’d think that having every bone with a keyframe before the other foot steps would prevent the copy/paste flipped from altering the first section of animation, but that doesn’t seem to be the case, which makes me think things aren’t responding as I expect them to.
So I’m still looking for a solution to my problem.
Am I going to have to keyframe every single bone on every frame? That just sounds very… messy and not at all productive.
You really should open the graph editor and have a play with it. The way the animation curves work is that the curve inside two keyframes can be effected by the previous or next keyframe. The solution would be to add double key frames either side of the footstep being flat (so extra keyframe on frame 31 for bone Foot.R and whatever the toes are) or like I already said to convert them to vector so there is no ease in or out and the motion is constant between the two key frames.
The video below is an example on a box, first you see how the third keyframe effects the position at the mid point between the first two, and secondly see how to convert to vector and what effect that has on the curves.
When you mirror the animation and paste it on the end you are effectively adding the third keyframe from the example so change the mid point. If you already had the “third keyframe” at 31 you the extra ones wouldn’t have any effect.
You will need to understand the graph editor to see where the problems are and fix looping animations as the curves don’t match up on the start and end frame.
I selected all keyframes with Hotkey A, Hotkey T, bezier, Hotkey V, autoclamped, with the cursor at 32 and all keys selected CTRL-C, then CTRL SHIFT V to paste.
It looks good to me, but I’m not sure what I am looking for. Unfortunately, I am leaving for the day and won’t be able to get back to this until later tonight.
Nothing suggested seems to be fixing the problem, or it will fix it on one frame but then cause issues on another frame.
Changing the clamp handles to vector screws up everything. The motions are not as organic looking and the feet clip into the ground where before they did not.
Adding a keyframe on frame 31 for the foot bones changes the way the frames in front of that one react as well (the foot on frame 26 for example no longer touches the xy axis plane).
As for the curves not matching they aren’t supposed to match on frame 0 and 32, at least I would assume they aren’t. The pose on frame 32 is the flipped/opposite of the pose on frame 0, so I would expect the curves to be different since they aren’t really the same pose? As is the animation is not supposed to loop, I want to flip everything so that it will take the second step, and then loop it. I used to do all this by just copy/pasting the bones with keyframes on them manually, but that always took forever and I was hoping the copy/paste-flipped keyframes option would give me a quick alternative. It does not seem to be the case though, as this thread is testament to, hah.
The one on the left is my file without any copy/flipped-pasting. The foot sits nicely on the ground. With yours (the right) and when I attempt to copy/paste-flipped without any other hotkeys the Foot.R bone seems to tilt upwards which lifts the toes off the ground and pushes the back toe into the ground.
(Thank you for the compliment by the way! <3)
I suppose if I have to go with vector handles then I will, that will require a lot of adjustment in my animation though and I’d like to avoid that if possible.
There is no one button fix, you need to read my posts, watch my video again and work out how it applies to your foot. You also 100% need to get into the graph editor and understand how it works so you can see what the changes do.
watch this video, it’s just like the previous video but shows it happening on your model.
I’m 100% sure this is your problem
re looping, when you come to try and make the motion loop you will find it breaks in some places. When this happens load up the graph editor and look at the curves at the beginning and end of the broken component and see how the curve around these keyframes are different to the one in at the mid point of the anim.
Alright, thank you guys for your help. Fiddled with the handles on the graph curves manually between multiple sets of keyframes until I got things looking relatively nice. I’ll definitely have to learn more about the graph editor though and all its functions for future projects.