Why is the dropdown "layers in other comp" empty?

Hello
I want to select an effect in an other Composition than the “active comp”
So I select the loop “layers in other comp” , then a new dropdown appears but it is totally empty … However I have compositions in my project.

If someone has the solution it would be great :slight_smile:

Thank you for your attention

Lucie

Hi @LucieDevGirl , Welcome to the forum!

This question is very basic but I will try to help up figure it up, I can also help you create an automation if you provide more information about how it need to work.

The dropdown being empty is perfectly fine in this situation because it can’t find any existing line that reference an item (project item) that in this case should reference a specific composition, lines that can store an item and would exist in the dropdown can be variable (an “item” variable) or loop (“items in the project” or “items in project folder” loop type).

you could ask - “why I have to defined the the other composition before with a variable or loop, cant I just type the name of the specific other composition in the dropdown ?”

Automations most of the times built to work on many cases and different projects so you won’t hard code names because they can be different in each project or you want to use a composition by different property, for example you want to do something to all the selected compositions in the project panel, or all the compositions with the frame-rate of 24fps or all the compositions whose name begins with the word “final_”.

so before using the loop “layers in other comp” you have to find this other comp, you can search and find a composition by looping first on the “items in the project” (this loop will go through all the project items in the project panel, all the compositions in the project will be there as well as all the footage and project folders) and checking if the current item “item type” property is composition (only compositions will work in the loop “layers in other comp”), then you should ask if this composition is the specific composition that you want, for example if you want the to search for a composition named “Comp123”, you need to ask if the name property of the item equal to “Comp123” and then inside this if you can be sure that this item (loop1) is the correct composition and use it in the loop “layers in other comp”.

This example looks like this -

  • this is only 1 example on how to search for a composition in the project, you can also create an item variable to save this composition if you find it. then you can move the loop “layers in other comp” after the loop “items in the project”.

Second Example -

Both methods will work fine, the second method will search for all the compositions and if multiple matching compositions found it will run only on the last matching composition found, the first method will run on all matching compositions (because the loop is nested inside the another loop).

I hope the explanation was simple and clear enough, if you have more questions I will be happy to answer them.
Thanks,
Alon

Hi @alonshemer thank you very much for your help. It was very clear !

I succeeded to find my “other comp” thanks to your answer but I still have troubles when trying to do the exact same process for “effects in the layer” loop , then I check if the name is the correct one (I can’t check the item type this time, maybe because it is necessarily an “Effect”.) , then I want to store my effect in a variable as you did but once again the dropdown doesn’t offer me the suggestin “this effect”

Here you can see an overview of how I solve the first problem thanks to you, and how I’m in troubles with this second loop

I put it as an answer here because I think it’s very similar to the first problem of the topic
Thank’s for your time

Lucie

you are right, it is necessarily an “Effect”.

@LucieDevGirl It is a limitation in Automation Toolkit,
you can’t save all after effects objects inside a variable because some after effects object like layers and items are independent objects and some objects like keyframes, markers, effects and properties are dependent on their index in a list.

For example if you delete layers in a composition it will not affect other saved layer variables,
but if you will save an effect in an effect variable (currently not really possible) and then remove earlier effect in the order of effects (lets say you saved effect number 3 as an effect variable and then removed effect number 1), the connection between the saved effect variable and the effect will break and it will not work anymore because the index of the saved effects has changed and an effect defined by its index.

the solution is just not save the effect as an effect variable, you can access every effect by its layer and an index (or name/…). so if you have both as variables, you can loop over the “effects in the layer” each time each time you need to access the effect.

if you will provide me more information about the automation I can create an example for it.

Ok thank you for these informations @alonshemer
I did as you described so without saving Effect in a Variable but only saving the Layer the loop on it

But in my active composition (my goal is just to copy an effect from Comp_model to my active comp) I can’t fill a specific index. My logic is like I have to add index 0 or index 1 to specify Layer[0] or Layer[1] to select the effect.

@LucieDevGirl there isn’t action to copy/paste effects from layer to another layer, as there is copy for layers, because it is not supported in scripting by adobe, you can only add new effects/presets and change their settings.

but there is a workaround-
you can simulate the regular copy/paste commands using menu command action, the process is the same as copy&paste effects from the user interface:

  1. you first have to open the composition you want to copy from (it needs to be visible in the user interface)
  2. then select only the effects from the layer you want to copy, all the other layers should be deselected
  3. simulate the copy command
  4. then you have to reopen the previous active composition
  5. select only the target layers
  6. and then simulate the paste command

it looks like this -

download the automation -
Copy effects.json (29.9 KB)

Ok Thank you very much :slight_smile: that’s a little tricky but that works thanks ! :smiley:

I know :sweat_smile: it took me a year before I managed to find this workaround of the copy&paste, but it is much preferred over saying its not possible :smiley: