2
$\begingroup$

I'm making some animated infographic elements that I want to re-use (append) in other projects. One of the animations includes scaling up two objects and shifting their relative position. What I want to be able to do is

  1. append the objects (with animations) into a new scene,
  2. scale them and move them into the right position for the new scene, and
  3. then have the animation run relative to the new starting position and scale.

Instead the starting scale and location are hard-coded into the animation keyframes and I have to edit the starting keyframe (loc and scale) for each object every time I re-use them. Is there a way to get around this?

$\endgroup$
1
  • 2
    $\begingroup$ You can parent the animated elements to empties, and animate the scale and placement for those empties. $\endgroup$
    – user1853
    May 30, 2018 at 1:33

2 Answers 2

1
$\begingroup$

Pigging backing on that one, as I chose to use an empty parent for my own project as I am copying the same object with animation sharing in the same scene, I created an empty as a parent of my copy with the help of blender making empty parent as a child in cube parent and to moved/rotated/scaled the empty rather than the copy.

This way all the animations are performed relative to the empty, I can understand not wanting more objects, but using parents is really nice in that specific case.

$\endgroup$
2
$\begingroup$

After some digging, I think the best approach is to animate deltaLoc and deltaScale instead of Loc and Scale. That's a bit of a pain because you can't just position the object in the viewport and keyframe it. You have to use the Delta Transform section of the Properties panel (under Object properties).

  1. First keyframe the starting value at the beginning of the animation action (by pressing 'I' while hovering over the Delta Transform values in the Properties panel). The starting value will usually be 0 for DeltaLoc and DeltaRot or 1.0 for DeltaScale.
  2. Then move and/or scale the object by changing these delta values in the Properties panel.
  3. Once they object is in the correct ending position, add another keyframe for DeltaLoc and/or DeltaRot (again by pressing 'I' while hovering over the values).

Of course, you can add further keyframes for DeltaLoc and DeltaRot if you want a more complex animation.

Now when you append the object into a new scene you can position and scale it as appropriate and the animation will run relative to the object's new starting position and scale.

The advantage of this approach over using a parented empty is that you don't have to deal with an extra object.

$\endgroup$
1
  • $\begingroup$ This doesn't work since as soon as I enter a delta it shifts the animation. $\endgroup$ Dec 14, 2022 at 8:18

You must log in to answer this question.

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