• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

Time remap + loopOut() on precomp leaving junk in last frame (not blank frame)

New Here ,
Aug 17, 2022 Aug 17, 2022

Copy link to clipboard

Copied

I haven't been able to find an answer to this, apologies if I missed it.

 

I have a simple animation using multiple shapes in a shape layer that I've precomposed and want to loop in a background layer. Shapes are animated using keyframes that expand and retract them to 0 size.

 

In the precomp, I left several slides at the beginning and end that are blank on purpose: I figured it would be easier to start/end the animation while the shapes were 0 size. However, when I loop the precomp in the main comp using loopOut(), the last frame has junk on it. A blurry version of all the shapes, like it's "rewinding" the animation all in one frame to start the loop over (maybe?)

 

Things I've tried:

  • Using the solution I've seen repeatedly for the blank frame issue. In the main comp - when I step back one frame from the last keyframe on the precomp, add a new keyframe, then delete the last keyframe - the junk just appears on the new last keyframe. Wherever that last keyframe is, the junk comes back.
  • In the precomp itself, I tried putting new keyframes for every shape in motion at the very beginning and end of the comp that keyframe everything at zero size, and set the temporal interpolation on all of them to linear. No difference.
  • Clearing media and disk cache after the changes.

 

In this instance, I got around it by keyframing the opacity to zero at the very beginning and end inside the precomp (effectively forcing the blank frame thing that messes with other loops) so the junk just doesn't appear. But that won't work in most scenarios. Has anybody else experienced/resolved this?

Screencaptures
Playing within the precomp to show the intended loop behavior:

intended behavior.gif

 

Stepping through the main comp with loopOut() on the precomp to show the junk that appears on the last keyframe:

last frame junk.gif

 

Demostrating that changing the last keyframe (common fix for blank frame issue) does not work here:

keyframe change not working.gif

 

TOPICS
Error or problem , How to

Views

158

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Aug 17, 2022 Aug 17, 2022

Copy link to clipboard

Copied

I know this is just a workaround of a different sort, but I don't suppose making that last key a Hold keyframe does the trick? 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Aug 18, 2022 Aug 18, 2022

Copy link to clipboard

Copied

LATEST

Thanks for the suggestion! I'd love to test this, but now... I can't recreate my own issue.

Yesterday, I set the full background video to render using the opacity workaround and left it for the night. When I saw your suggestion this morning, I deleted the opacity keyframes and cleared all memory/disk cache to put it back exactly the way it was. And now it's rendering fine. No junk on the last keyframe.

 

It's a weird feeling to be even more frustrated after a problem solves itself.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Aug 17, 2022 Aug 17, 2022

Copy link to clipboard

Copied

When you apply Time Remapping, the last keyframe is placed after the last frame has played. If you want to see the last frame, you need to move back one frame, set a new keyframe, then delete the last one. It's always that way. 

 

It's the same with loopOut(). The loop is between the first frame and the start of the last one. The last frame never plays. If it did, you could not create a seamless loop because the first and last frames would repeat. It took me a few years to figure out what was really going on with Time remapping and Loop expressions. 

 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines