So I just recently started using referenced actions in my animations, and one of the problems I'm having is that if I'm using a reference anywhere except for the first frame, they're almost completely useless, since I can't say what the init frame is supposed to be. For example, if in the action, everything involved in it is shrunk to 0X, 0Y, thus making it invisible, and I add it to the mainline somewhere later than frame 1, everything starts out in the init position instead of 0X, 0Y. That, however, wasn't the problem. What is though is that:
1) For some reason they gave me the init keyframes for the referenced action, even though I already have that as soon as the reference is added to the mainline,
2) The first actual keyframe of the referenced action can't be used as a frame-1keyframe, since copying it pastes the entire reference again, and changing it into a smooth keyframe to get rid of the rest of reference forces it to lose data.
Let me explain that second point. So back to the first example: I have a box action: sized, at first frame, to 0X, 0Y. So the first frame of the action is a shot of box completely gone. In the mainline, I add the reference of the action to frame 32. The reference is dropped onto the mainline at 32, starting with the init frame (i.e. frame 0). I don't need frame 0, and it doesn't keep the box at 0X,0Y anyway, so I delete it. So now I'm left with a keyframe that looks like a right arrow, and the long yellow reference bar. However, everything before frame 32 now shows the box fully-sized and shrinking until it reaches frame 32. I want the box at frame 1, so I copy the arrow keyframe and paste it at frame 1. The whole reference pastes in response. I don't need the whole action again, so I change the keyframe from a right arrow to a smooth keyframe. The reference is deleted, and I should be left with the data that keyframe represents. Wrong. For some reason, changing the animation flow of the keyframe removes all the data from it; you're basically dropping an init keyframe (i.e. frame 0).
Now for some reason I was able to get these steps to work as expected once, and only once. Everything other instance acted as described, and I didn't change any steps from each iteration. The only way I was able to get this to work consistently was to go back into the original action, copy the first keyframe, go back to the mainline, and then paste it again...for every layer involved in the action.
Is there not a better way to do this? I can't see the reason behind using a reference if it only works at frame 0. I checked the book to see if it'll shed some light, and it doesn't even discuss it much: only that it's a thing.
I'm using ASP 11.2
Proper Use of Referenced Actions
Moderators: Víctor Paredes, Belgarath, slowtiger
- BabyBlueBrush
- Posts: 6
- Joined: Mon May 17, 2021 9:51 pm
Re: Proper Use of Referenced Actions
I have never used referenced actions. I just copy them. I would be interested in knowing why people use them if they do.
This is how it works in the latest version:
1) Lets say you have animation on your timeline, and the last keyframe is on the frame 24. Now you go to the frame 48 and insert a reference of your action. The inserted reference has an initial keyframe for the animated channels, that is actually pasted on the previous frame (47) not on the current frame (48), and it is not exactly the keyframe 0 of the action, but a freeze/hold of the last state of those channels (24). It seems to be there just for convenience, so your action keeps working as expected, and you can just delete that keyframe 47 if you want to interpolate from the latest keyframe (24) to the first keyframe of your action (48) or even between 0 and 48 for those values that are not specifically keyframed on 24.
2) Here, changing the arrow keyframe to smooth gets rid of the reference but it effectively holds the value of that specific keyframe. Anyway, if that's what you want you could use a morph: a one keyframe action, that you can reference or copy. Or even without changing your action, why not just insert a copy that is easily editable? Because you know that what you are trying to achieve changing the interpolation of the keyframe to smooth deletes the reference anyway.
This is how it works in the latest version:
1) Lets say you have animation on your timeline, and the last keyframe is on the frame 24. Now you go to the frame 48 and insert a reference of your action. The inserted reference has an initial keyframe for the animated channels, that is actually pasted on the previous frame (47) not on the current frame (48), and it is not exactly the keyframe 0 of the action, but a freeze/hold of the last state of those channels (24). It seems to be there just for convenience, so your action keeps working as expected, and you can just delete that keyframe 47 if you want to interpolate from the latest keyframe (24) to the first keyframe of your action (48) or even between 0 and 48 for those values that are not specifically keyframed on 24.
2) Here, changing the arrow keyframe to smooth gets rid of the reference but it effectively holds the value of that specific keyframe. Anyway, if that's what you want you could use a morph: a one keyframe action, that you can reference or copy. Or even without changing your action, why not just insert a copy that is easily editable? Because you know that what you are trying to achieve changing the interpolation of the keyframe to smooth deletes the reference anyway.
- BabyBlueBrush
- Posts: 6
- Joined: Mon May 17, 2021 9:51 pm
Re: Proper Use of Referenced Actions
The main reason to use references instead of copying the raw keyframes is that, if you need to change how the action fundamentally works, and you used it a lot, you can change it one place, and it affects every instance of it.
The reason I don't use morphs is because the animation isn't simple enough to be summed up into only one frame of animation. Most times, mine are full animations, just mini anims, and I personally like to keep my animations, however small they are, as atomic as I possibly can, in order to facilitate plug-and-play animation.
That being said, I'd like the reference to work as a reference without me having to refer to the reference for the referenced keyframe, and just use the first keyframe from the referenced action I just pasted into the timeline.
Nonetheless, I see how that initial keyframe would be useful, now that you mention your proposed scenario; that's actually pretty helpful. However, what still remains is the jankiness of that arrow keyframe deleting everything the moment you try to change the animation style of it.
The reason I don't use morphs is because the animation isn't simple enough to be summed up into only one frame of animation. Most times, mine are full animations, just mini anims, and I personally like to keep my animations, however small they are, as atomic as I possibly can, in order to facilitate plug-and-play animation.
That being said, I'd like the reference to work as a reference without me having to refer to the reference for the referenced keyframe, and just use the first keyframe from the referenced action I just pasted into the timeline.
Nonetheless, I see how that initial keyframe would be useful, now that you mention your proposed scenario; that's actually pretty helpful. However, what still remains is the jankiness of that arrow keyframe deleting everything the moment you try to change the animation style of it.