0
$\begingroup$

I have a complex walk animation (downloaded from Mixamo). For each bone, it contains a number of keyframes, let's call them x_1, ..., x_17 for an animation of length 17.

I would like to play the animation in a loop, but it wasn't created for it: for some of the bones x_1 is far from x_17. For example, there is a root "Hips" whose Y location is moving forward. I would like to edit the animation such that:

  • the last keyframe matches the first one (x_1 = x_17),
  • the edit is made in a linear way, ie. there is no change to x_1, the change to x_17 is (x_17 - x_1) and change to x_9 is (x_17 - x_1)/2.

I tried doing it in the graph editor in these ways:

  1. select x_1, cursor value to selection, select x_17, selection to cursor value, but this only edits x_17 (and doesn't apply proportional editing, even when it is "on")
  2. select x_17, G Y, eye-ball the position of x_1 and move x_17 to the same Y, and in the "move" window change proportional size to 16 (size of animation minus one).

Doing the edit in the second way

The second option works, but is tedious and imprecise. Is there a better way?

$\endgroup$
1
  • 1
    $\begingroup$ can you show us how you are trying to do the proportional editing in graph editor? maybe a video or at least a screenshot? for me it works... $\endgroup$
    – Chris
    Commented Nov 3, 2021 at 6:52

2 Answers 2

0
$\begingroup$

FYI, In Placer addon doesn't delete keyframes. It zeros out keyframes like you wanted. You can check the codes if you want. I don't know how you get the impression that it deletes the keyframes.

$\endgroup$
1
  • $\begingroup$ Thanks for the comment about InPlacer. As I commented there, I don't think it edits the curve in the way that this question was asking for: zeroing is not what I wanted (even though the gif shows the case where the resulting keyframes are zeroed). $\endgroup$
    – sygi
    Commented Nov 13, 2021 at 14:49
0
$\begingroup$

As I wasn't able to find a convenient workflow for that, I wrote a very short add-on that does it here.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .