Duplicate animation


#1

Hi all,

I’m still new to Blender, so this question is a pretty basic one.

I’ve animated a box bouncing. Now I want to duplicate that box, complete with animation, and have the animation offset a little bit (lagging behind the first box). I can duplicate (shift D), but after repositioning the new box, when I move the time slider, it pops back to the original position.

Googling it, I found discussions on how to delete the new box’s keyframes, but I don’t want to do that. I just want it to stay in the new position with the same keyframes.

Anyone have any advice?

Thanks in advance, I know its a pretty basic question.

Sean


#2

Once you move the duplicate, apply location, rotation etc. as needed while still in object mode.


#3

So you’re saying redo the animation on the duplicate from scratch?

I actually discovered a way to do what I wanted. Duplicate the object, then on the duplicate, move the x and y curves until it’s repositioned where I want it. The z curve keeps the original animation, and it’s repo’ed where I need it. I was just hoping there was a quicker way.


#4

No I’m not saying that. I said APPLY not CLEAR.

When you apply the moved objects location, it zero’s out it’s position in World space. At that point the action you create can operate on the object with the object retaining it’s initial new starting position.

ASAMOF you should always apply loc, rot, scale on any object that will be animated before animation.


#5

Ah, awesome! How do you apply the new location, then? This would be perfect!


#6

Like this…


#7

Ok, tried that. The duplicate object stays where it is, but the pivot point moves to the world center. And then, when I scrub the timeline, the pivot jumps to the center of the original object, lowering the duplicate.

Sorry to keep on about this, and I appreciate the help. It just isn’t making sense yet. If I animate a box popping up and then back down again, I feel like it should be super easy to make another box doing the same thing by just duplicating it and moving it to the side.


#8

You could make the “animation” of the duplicated object “single user”. This way the animation data is not tied to the first object. This will be helpful for the animation offset.

Then make the newly duplicated object the child of an empty, and simply move the empty to where you’d like it positioned.

There’s likely a more elegant way to achieve this but it will work.

hope this helps!


#9

Thanks for the tips. The parenting works, of course, but the result, obviously, is that the object is parented.

And I’m not clear on what the single user animation means. I’ll look it up.

Really bummed there’s not an easier way to do duplicate an animated object, but ah well. I’ll live. Thanks!


#10

if you don’t use the “single user” you can’t edit the animation independently… think “materials” that share the same data block. If you change one, you change them all.


#11

Ah, like instancing. Makes sense.


#12

there is an even easier way to fix this, delete the x and y curves


#13

Ah, very nice! That’s definitely faster, because once the x & y are deleted, they obviously don’t copy over, so its super easy to duplicate more and just shift the z keyframes. Works great!

which then makes me wonder, when setting a keyframe, is there any way to set only the z when I move the first object, so I don’t even have to go in and delete the x & y, and can just get right to duplicating?


#14

change the keying se in the timeline window to available, then it will key curves that are available there is neeeded aswell but im not too sure of that one


#15

[font=Lucida Sans Unicode]I feel your pain. I saw this as another opportunity to test my progress in python scripting. Here is the result (see attachment). I have two Cubes: Cube-first and Cube-clone … both are superimposed on each other because I duplicated the first to get the clone. As expected the duplicate took all animation data from the first. What we want is a clone that does same motion but at a different location.

My script has a function called UniqClone(x,y,z). It takes three (3) parameters representing the offsets along the x,y & z axes. They are presently set to (0,0,0) at the bottom --running the script with those values will do nothing. So, try some different values and run the script – hope this solves your problem.

Note: You have to make sure the recipient (the clone) is selected or you’ll get error messages. It works on a selected object. Also, The effect is not immediately visible, you’ll need to scrub the time-line to see the results.[/font]


#16

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.