FORUMS: list search recent posts

Why is complexity of a nested comp slowing down rendering of the parent comp even after that nested comp is in ram preview?

COW Forums : Adobe After Effects

<< PREVIOUS   •   FAQ   •   VIEW ALL   •   PRINT   •   NEXT >>
Robert Maric
Why is complexity of a nested comp slowing down rendering of the parent comp even after that nested comp is in ram preview?
on May 27, 2018 at 10:11:01 am

Hi there, until now I thought once a nested comp is in ram preview, it plays back with the same ease as a video until the contents of that comp are changed. What I've discovered is that this is not the case in my project. I change camera angle in the parent comp and how fast it generates that parent comp ram preview depends on the contents of my nested comps. If they have lots of complexity, it's much slower. Shouldn't it treat them as effortlessly as a flat video once the nested comp is in ram preview?

Any help would be appreciated!


Return to posts index

Dirk de Jong
Re: Why is complexity of a nested comp slowing down rendering of the parent comp even after that nested comp is in ram preview?
on May 27, 2018 at 11:47:04 am

[Robert Maric] "I change camera angle in the parent comp and how fast it generates that parent comp ram preview depends on the contents of my nested comps. If they have lots of complexity, it's much slower. Shouldn't it treat them as effortlessly as a flat video once the nested comp is in ram preview?"

Make sure the "Collapse Transformations" switch is turned off for your precomp ? Is anything in the precomp linked by expression to anything in the master comp ? These are a couple possibilities that could invalidate the cache of the precomp... But in general, yes I think what you say is true and the precomp shouldn't have to be recalculated every time


Return to posts index

Robert Maric
Re: Why is complexity of a nested comp slowing down rendering of the parent comp even after that nested comp is in ram preview?
on May 27, 2018 at 12:53:31 pm

Thank you! I found the problem.

I had an expression some nested comps which was linked to a slider outside of the comp:

temp = thisComp.layer("Pupils")("ADBE Effect Parade")("joystickLimit")("ADBE Slider Control-0001")*2;

PHEW! That's a relief. Thank you so much for your help pointing me in the right direction!


Return to posts index


Robert Maric
Re: Why is complexity of a nested comp slowing down rendering of the parent comp even after that nested comp is in ram preview?
on May 28, 2018 at 1:46:36 am

Actually I wasn't quite right, what is happening is the precomp is being put into ram but the complex expression code in the nested comp seems to still run. How can I get it to not run that code in the nested comp?


Return to posts index

Robert Maric
Re: Why is complexity of a nested comp slowing down rendering of the parent comp even after that nested comp is in ram preview?
on May 28, 2018 at 2:28:32 am

Here are the steps to experience what I'm referring to:

- Create a parent comp
- Create child comp inside it
- Create square inside child comp
- Set expression for rotation of that square (This does a 100,000 iteration for loop which pushes the CPU as a complex expression would.)

//////////
val = 0;
for( i=1; i <= 100000; i++){
val = i;
}
transform.rotation = val;
//////////

The square won't move, the point is just to emulate fairly demanding expression code. Now go play from your parent and you'll see it of course grind away as it generates the ram preview and then play smoothly once it's in ram. You'd think that it was now done with processing the contents of that child comp but it isn't so. If you make the precomp 3D enabled, add a camera and move the camera slightly and press play again, you'll see it's clearly running that child comp expression code again. Why would it do this?

To further clarify what's going on, add some heavy adjustment layer effects inside your child comp. Notice that when you press play from the parent it will work extra hard for that first time generating the child ram preview. After that, no matter what you do in the parent, it won't have to process those adjustment layers again until you edit the contents of the child comp. However, the expression code will still run.


Return to posts index

<< PREVIOUS   •   VIEW ALL   •   PRINT   •   NEXT >>
© 2018 CreativeCOW.net All Rights Reserved
[TOP]