Parenting Masks to other layers

Here's my problem. I would like to parent a masked out section of video to the position and scale parameters of a still image. I understand that if you drop an object into a layer it will take on the animation parameters of that layer. The problem is when I do that for the masked layer, it becomes horribly aliased. How do I hold onto the smooth edges of my mask and have its position and scale parameters correspond to the first layer....easily?

Masks cannot change over time. They are tied to the layer and that is what you are seeing - a video layer is just one layer, even if its content changes. Indeed using frame animation or using dedicated layers would be the only way to get what you are looking for.
Mylenium

Similar Messages

  • Why do masks change position when I move them to other layers?

    I created both a simple shape mask and also a complex bezier shape mask. When I move these masks to other layers they change their position. Is there a way to change this behavior?

    They are positioned in relation to the original object, and the Group that object is in.  Copying them to another object may sometimes require you reposition them.

  • How can I mask one layer which is enough for other layers?

    Hi,
    I want to know how can I mask an image on one layer which should enogh for other movie clips. Like the following ...
    1) First layer ........................ Actionscript
    2) Mask layer ....................... Rounded rectange with some design
    2) Image layer ...................... Best image (as a background for all other movie clips)
    3) Movie Clips layer .............. 10 Movie clips (which are like slides and will be act like one webpage each)   
    What I want is the mask layer (Layer 2) should be enogh for all the movie clips in layer 3. No need to mask in each movie.
    I tried in the same sequence but it did not work for me.
    How can I do that?
    Thanks.             

    mouse down (and hold down) on the movieclip layer (at the left of your timeline) and slowly move the mouse up until you see that the movieclip layer is indenting to indicate it's going to be masked.

  • How to share the same mask across multiple layers?

    Say one needs multiple layers, one above another, to share the same layer mask. Is there any smart way to tell all those layers they have to use the same mask? As opposed to copying the same mask into all layers. The latter approach has the disadvantage that, when you need to change the mask, you need to copy it again into all layers that must share it.
    Thank you.

    Put the Layers in a Set and apply the mask to that.

  • Why use layer masks and adjustment layers?

    I've been using PSE and CS successfully for years.
    One thing I have never understood is: why use layer masks and adjustment layers, instead of simply creating a copy of the subject layer (the one I want to make changes to) and experimenting with that?  It's quick (Ctrl-J), I can do it as many times as I want, I'm not affecting my Background layer.  If I like the changes, I can keep them.  I can switch the copy on and off to compare with the Background layer.  I can do any type of blend or combination I desire.  I can insert Gradient layer(s), select any part of the copy and (Ctrl-J) create a new layer containing only the selected part.  I can adjust size, rotate, do anything.
    It almost seems that "layer mask" and "adjustment layer" are mainly another layer of terminology; can anyone explain (preferably in 50 words or less) how they are intrinsically different from or superior to working with copies of the Background layer?  What can be done with them that can't be done simply using copies of the Background layer?

    Here's a very basic example of the advantage of using a layer mask.
    I have this picture of a sunflower and I want to convert the background to black & white, leaving just the flower in color.  I duplicated the Background layer, converted it to B&W and proceeded to use the Eraser to uncover the flower color. But I made a mistake and erased outside the flower.  There is no way to correct this other than deleting the layer and starting again.
    Now let's use a layer mask on the B&W layer. Set the Foreground/Background colors to the defaults black/white. Using the Brush tool paint on the mask with black to reveal the color.  Here I painted too far, revealing a green leaf in the background.  No need to start over.  Simply switch to white and paint the excess to convert back to the B&W.
    Tip: while painting you can type "X" to toggle between black and white.
    You could also select the flower using the various selection tools and then fill the selection with black. If it turns out the selection was not 100% accurate you can then fine-tune the result by painting on the mask with black or white as necessary.

  • Edit ActionScript to be behind other layers?

    I used some ActionScript to create a snow effect for my flash animation. Right now, the snow falls in front of my other layers, and sending to back isn't working. I'll post the ActionScript below.
    I have a treeline background, with snow falling on top of that. I have pieces of a logo flying in, and I want that to be OVER the snow. Currently, when I play the animation, all I can see is the treeline and snow, and I'm guessing the logo is flying together behind it.
    Can anyone be kind enough to point out how I can get this done? Thanks so much.
    Snowfall ActionScript that I used (not mine) :
    var snowflakes:Array = new Array();
    var snowflakeProps:Dictionary= new Dictionary(true);
    var max_snowsize:Number = .04;
    // pixels
    var snowflakesCnt:Number = 900;
    var oheight:Number;
    var owidth:Number;
    init();
    function init():void {
              owidth = width;
              oheight = height;
              // quantity
              for (var i:int=0; i<snowflakesCnt; i++) {
                        var t:MovieClip = new SnowFlake();//
                        t.name = "snowflake"+i;
                        t.alpha = .2+Math.random()*.6;
                        t.x = -(owidth/2)+Math.random()*(1.5*owidth);
                        t.y = -(oheight/2)+Math.random()*(1.5*oheight);
                        t.scaleX = t.scaleY=.5+Math.random()*(max_snowsize*10);
                        var o:Object = new Object();
                        o.k = 1+Math.random()*2;
                        o.wind = -1.5+Math.random()*(1.4*3);
                        snowflakeProps[t] = o;
                        addChild(t);
                        snowflakes.push(t);
              addEventListener(Event.ENTER_FRAME, snowFlakeMover);
    function shakeUp():void{
              for (var i:int=0; i<snowflakes.length; i++) {
                        var t:MovieClip = snowflakes[i] as MovieClip;
                        t.x = -(owidth/2)+Math.random()*(1.5*owidth);
                        t.y = -(oheight/2)+Math.random()*(1.5*oheight);
    function snowFlakeMover(evt:Event):void {
              var dO:MovieClip;
              var o :Object;
              if(visible && parent.visible){
              for (var i:int = 0; i < snowflakes.length; i++) {
                        dO = snowflakes[i] as MovieClip;
                        o = snowflakeProps[dO];
                        dO.y += o.k;
                        dO.x += o.wind;
                        if (dO.y>oheight+10) {
                                  dO.y = -20;
                        if (dO.x>owidth+20) {
                                  dO.x = -(owidth/2)+Math.random()*(1.5*owidth);
                                  dO.y = -20;
                        } else if (dO.x<-20) {
                                  dO.x= -(owidth/2)+Math.random()*(1.5*owidth);
                                  dO.y = -20;

    My tree movieclip is named Bitmap2 and my logo movieclips (actually in 4 pieces that fly together) are Object1, Object2, Object3, and Object4.
    I'm getting an 1120 error (undefined property).
    Here's what I've got so far (and I apologize for any errors I'm making here, I'm a beginner) :
    addChild(Bitmap2);
    var snowflakes:Array = new Array();
    var snowflakeProps:Dictionary= new Dictionary(true);
    var max_snowsize:Number = .04;
    // pixels
    var snowflakesCnt:Number = 900;
    var oheight:Number;
    var owidth:Number;
    init();
    function init():void {
              owidth = width;
              oheight = height;
              // quantity
              for (var i:int=0; i<snowflakesCnt; i++) {
                        var t:MovieClip = new SnowFlake();//
                        t.name = "snowflake"+i;
                        t.alpha = .2+Math.random()*.6;
                        t.x = -(owidth/2)+Math.random()*(1.5*owidth);
                        t.y = -(oheight/2)+Math.random()*(1.5*oheight);
                        t.scaleX = t.scaleY=.5+Math.random()*(max_snowsize*10);
                        var o:Object = new Object();
                        o.k = 1+Math.random()*2;
                        o.wind = -1.5+Math.random()*(1.4*3);
                        snowflakeProps[t] = o;
                        addChild(t);
    addChild(Object1);
    addChild(Object2);
    addChild(Object3);
    addChild(Object4);
                        snowflakes.push(t);
              addEventListener(Event.ENTER_FRAME, snowFlakeMover);
    function shakeUp():void{
              for (var i:int=0; i<snowflakes.length; i++) {
                        var t:MovieClip = snowflakes[i] as MovieClip;
                        t.x = -(owidth/2)+Math.random()*(1.5*owidth);
                        t.y = -(oheight/2)+Math.random()*(1.5*oheight);
    function snowFlakeMover(evt:Event):void {
              var dO:MovieClip;
              var o :Object;
              if(visible && parent.visible){
              for (var i:int = 0; i < snowflakes.length; i++) {
                        dO = snowflakes[i] as MovieClip;
                        o = snowflakeProps[dO];
                        dO.y += o.k;
                        dO.x += o.wind;
                        if (dO.y>oheight+10) {
                                  dO.y = -20;
                        if (dO.x>owidth+20) {
                                  dO.x = -(owidth/2)+Math.random()*(1.5*owidth);
                                  dO.y = -20;
                        } else if (dO.x<-20) {
                                  dO.x= -(owidth/2)+Math.random()*(1.5*owidth);
                                  dO.y = -20;
    Thanks a million.

  • How do I subtract the shape of a layer (a scanned shape) from my other layers - but when the shape hasn't been drawn in photoshop

    Im trying to subtract a shape I have previously painted and scanned in from my other layers...can this be done?

    If this is the effect you want, add a white bottom layer, and create a mask of the heart art to drop it out of image layers
    or... do  you want color only in the heat shape and the rest of the page white?

  • Clipping Mask over Multiple Layers

    Hi,
    I have a multiple layer file and I want to apply a clipping mask over the entire design as my last step to block out all of the excess around the edges of the clipboard. Every time I try this the layers are merged into one but I want to maintain the layers.
    Is it possible to have a mask and keep the layers?

    Make a new layer and drag all the existing layers into in, making them sublayers. Draw your mask in this master layer, select it, and go to Make Clipping Mask in the Layers panelette.

  • Isolating a layer (hiding all other layers)

    I have started writing my first script but I am struggling to find out how to isolate an active layer.
    Part of my script reads;
    var doc = app.activeDocument;
    doc.activeLayer = doc.artLayers.getByName('mk stone');
    at this point I would like to hide all other layers in the document. I will then select one of the RGB channels then unhide the other layers.
    I have worked out the selection part. So all I really need to know is how to hide and unhide all other layers.
    Any help would be much appreciated.

    There will be a number of layers to turn on and off.
    The way it works is to create a folder and select a layer with the corresponding name. i.e create a new layerset called "stone set", then select an existing layer in the scene, this would be called "mk stone".
    I would then select an individual RBG channel, load the selection and then make the "stone set" the active layer and apply the layer mask to the layerset.
    I have got all this working fine. The only problem is when I try it with more than one layer because it just keeps seeing the highest up layer in the stack and reapplying these selections to all layersets.
    I need to tell it to make "mk stone"  the only layer shown, make a RGB selection and then return back to the previous visibilty state. I would then apply the layer mask as previously mentioned select another layer "mk brick" hide all other layers make the RGB selection return to the previous visibilty state apply layer mask to the layerset etc....
    It would be alot better if it could return to a previous visibilty state as some files I use have certain layers/layersets turned off and would be useful not to turn all these back on. If not I could work in an external file, but ideally in the same. What I really need is exactly the same as 'alt' clicking the the eye icon on a layer and 'alt' clicking to return to the previous state.
    Hope this makes sense. Many thanks for any help.

  • How to make a ramp affect other layers

    I'm trying to create a lower thirds that will include some motion, otherwise I might try Photoshop for this. But basically, I'm trying to create a gradient using ramp in AE so that the lower thrids I've created fades away on the sides. Similar to the image I've attached. I don't know how to make the layer that I put the ramp effect on affect the other layers. Can anyone help?

    Dave's method is great.
    Like all things AE, there are many ways to accomplish the same thing.
    Some alternatives are: Make a black & white gradient ramp on one layer, and use it for a track matte on another matte. You can also use the Set Matte effect to copy the alpha of one layer to another.
    There are direct ways to create alpha ramps using 3rd party plug-ins like Ramp Alpha that's in Red Giant's Key Correct and Image Lounge.

  • Unlocking Background Layer with lots of other layers

    I've been looking at the similar questions, but no script has worked perfectly yet. I have a series of phoshop actions that I run on a regular basis. I have two version of each, one for if there's a locked background layer, and one for when its already been unlocked. Otherwise my actions error.
    I'd like to simplify the process and have a script run that finds any locked layers (ie: background) and unlocks it, even if there are 15 other layers and even if I have another layer selected. It should also run without errors if there are no locked (background) layers to be found.
    I don't know the first thing about writing my own scripts, so can somebody tell me what lines of code I'd need? Thank you Thank you!

    function makeActiveByIndex( index, visible ){
        var desc = new ActionDescriptor();
        var ref = new ActionReference();
        ref.putIndex(charIDToTypeID( 'Lyr ' ), index )
        desc.putReference( charIDToTypeID( 'null' ), ref );
        desc.putBoolean( charIDToTypeID( 'MkVs' ), visible );
        executeAction( charIDToTypeID( 'slct' ), desc, DialogModes.NO );   
    function getNumberOfLayers(){
        var ref = new ActionReference();
        ref.putProperty( charIDToTypeID( 'Prpr' ), charIDToTypeID( 'NmbL' ) );
        ref.putEnumerated( charIDToTypeID('Dcmn'), charIDToTypeID( 'Ordn' ), charIDToTypeID( 'Trgt' ) );
        return executeActionGet( ref ).getInteger( charIDToTypeID( 'NmbL' )) ;
    function getProperty( psClass, psKey, index ){// integer:Class, integer:key
        var ref = new ActionReference();
        if( psKey != undefined ) ref.putProperty( charIDToTypeID( "Prpr" ), psKey );
        if(index != undefined ){
            ref.putIndex( psClass, index );
        }else{
            ref.putEnumerated( psClass , charIDToTypeID( "Ordn" ), charIDToTypeID( "Trgt" ) );
        try{
            var desc = executeActionGet(ref);
        }catch(e){ return; }// return on error
        if(desc.count == 0) return;// return undefined if property doesn't exists
        var dataType = desc.getType(psKey);
        switch(dataType){// not all types supported - returns undefined if not supported
            case DescValueType.INTEGERTYPE:
                return desc.getInteger(psKey);
                break;
            case DescValueType.ALIASTYPE:
                return desc.getPath(psKey);
                break;
            case DescValueType.BOOLEANTYPE:
                return desc.getBoolean(psKey);
                break;
            case DescValueType.BOOLEANTYPE:
                return desc.getBoolean(psKey);
                break;
            case DescValueType.UNITDOUBLE:
                return desc.getUnitDoubleValue(psKey);
                break;
            case DescValueType.STRINGTYPE:
                return desc.getString(psKey);
                break;
            case  DescValueType.OBJECTTYPE:
                return desc.getObjectValue(psKey);
                break;
            case  DescValueType.LISTTYPE:
                return desc.getList(psKey);
                break;
            case  DescValueType.ENUMERATEDTYPE:
                return desc.getEnumerationValue(psKey);
                break;
    var doc = app.activeDocument;
    var layerCount = getNumberOfLayers();
    var invisibleLayers = [];
    var loopStart = Number(!doc.layers[doc.layers.length-1].isBackgroundLayer);
    for(var layerIndex = loopStart;layerIndex<=layerCount;layerIndex++){
        if(!getProperty( charIDToTypeID('Lyr '), stringIDToTypeID( 'visible' ), layerIndex )) invisibleLayers.push(layerIndex);
    for(var hiddenIndex=0;hiddenIndex<invisibleLayers.length;hiddenIndex++){
        makeActiveByIndex( invisibleLayers[hiddenIndex], true);
        if(doc.activeLayer.allLocked) doc.activeLayer.allLocked = false;
        if(doc.activeLayer.pixelsLocked) doc.activeLayer.pixelsLocked = false;
        if(doc.activeLayer.positionLocked) doc.activeLayer.positionLocked = false;
        if(doc.activeLayer.transparentPixelsLocked) doc.activeLayer.transparentPixelsLocked = false;
        doc.activeLayer.visible =  false;

  • Photoshop 3d obj interacting strangely with other layers

    After Effects and Photoshop CS5.
    I have an imported photoshop 3d object which on its own behaves as it should.
    But, when I place it in front of other layers (2d in 3d space) I can see the other layers through the photoshop 3d layer. They are all behaving in space as they should, apart from the fact that the photoshop layer seems to be made of glass (which it isn't).
    I can't for the life of me work out what I am doing wrong.
    Apart from this, I can't get shadows to work in this comp, where in another comp which is exactly the same apart from the imported PS 3d object, they are working fine. (If I hide the PS 3d object, shadows and lighting work fine with the rest of the objects)
    Or is all of this impossible because I'm using a PS 3d object?
    I would be grateful for any ideas, because I am totally stumped.

    Well, you completely misunderstand how this works, I'm afraid. PS Live 3D is merely an intra-layer effect and does not in any way interact with AE's own 3D beyond responding to the camera. That's no differtent than using 3D-ish effects like Trapcode Particular - the effect may look 3D, but is applied to a 2D layer. And that also explains all your otehr issues - any form of 2D layer inbetween 3D layers breaks 3D rendering order. You need to re-structure your project by splicing the stuff to separate comps and cross-linking the cameras to get the illusion.
    Mylenium

  • Copy values from one Parent node to other Parent Node

    Hi all,
    I have a 2 Parent node each having 3 child nodes. I want to copy the values of all the attributes of all the child nodes of one Parent Node to corresponding other node.
    Both the Parent Nodes as well as their Child Nodes have different name but their attributes have same name.For ex:
    Parent Node -A
    Child Nodes - a, b,c
    Child Node "a" has attributes "x" and "y"
    Parent Node -B
    Child Nodes - d,e,f
    Child Node "d" has attributes "x" and "y" .
    Now I want to copy the values od attributes "x" and "y" from one Parent Node to other Parent node.
    Please help me out.
    Helpful answers will be rewarded.
    Thanxs in advance...

    Hi Jin,
    To use copy service API, u need to satisfy 2 condition for the attributes of source node and target node:
    1. The name of the attribute should be same (including the case of the name)- Abc is different from ABC
    2. Type of the attribute should also be the same.
    copy elements works for copying values from Model node to context and does not work vice-versa. To enable the copying of context node to model node, use copycorresponding API.
    Eg:
    int contextNodeSize = wdContext().node<contextNodeName>().size();
    for(int i = 0; i < contextNodeSize; i++)
         <modelNodeName> modelObject = new <modelNodeName>();
         <contextNodeName>Element contextObject = wdContext().node<contextNodeName>().get<contextNodeName>ElementAt(i);
         WDCopyService.copyCorresponding(contextObject, modelObject);
    This will copy the values from Context Node to Model Node.
    Hope this helps you.
    Regards,
    Poojith MV

  • How to create a "dummy" layer to link other layers to the dummy.

    Here is my problem:
    I have a bunch of Layers, I want to behave the same way (here scaling, but I had also rotation before). My approach (as used formerly with my 3D applications) is to create a "dummy" layer, where the channnels of the other layers are linked to. For this I used the "Placeholder" item, but rendering obviously got me an error message, because the "placeholder" is intended for other use.
    So my question: How do you solve such a situation the intended way?
    L.

    Found the possible answer by sniffing on other peoples problems: The dummy is called "Null" here!
    Unfortunetly, I cannot offer to myself the 10 points!

  • Scripting: One layer to adjust opacity of other layers?

    Hi there,
    i've a lot of layers in my comp which names start with "POINTER_".
    I would need those layers to fade out at the same time.
    But i can't subcomp them or use stencil alpha.
    I'm sure it is possible to do a script on an adjustment layer that would do just that.
    All it needs to do is enable me to do opacity keyframes on that adjustment layer which are then linked to the opacity to all layers starting with "POINTER_".
    I'm not a scripting guy so it would be awesome if somebody could show me how to do that.
    Thanks a lot!
    cheers,
    Chris

    You don't need a script for it; you need an expression.
    You can very easily link properties between layers with expressions. In this case, you would apply an Expression Effect Slider to your null layer (or just use the opacity property of an adjustment layer). Then alt-click the opacity property for one of your layers and use the pick whip to choose the slider effect or the opacity property of your controlling layer. Now, when you change the value of the one layer, the others follow. You can copy and paste the expression that resulted from your pick whip to the other layers. (You can even choose to copy the expression only and then paste that to the rest of the layers.)

Maybe you are looking for

  • Album art not tagged properly iPhone 4

    In iTunes, ALL my songs have their album art covers TAGGED PROPERLY! Upon transfer to iPhone, the art covers are NOT Synced/Tagged properly as the art covers of songs uses art covers from other songs! EVERY TIME I correct this, it still is messed up!

  • Trick to group multiple albums into one?

    Ive got about 20 albums from one artist and it takes up a huge amount of space in the album view. Is there a trick, other than changing all the names of the album to group them all into one?

  • Unable to install Tiger on a Mini

    I bought a refurbished Mac Mini from Apple last week, and it came with OS X 10.3.7 installed. It also came with a 2 CD set that has Tiger on it. When I boot from the Tiger CD, I get an error that says that this software cannot be installed on this co

  • Identifying the xml file

    String contextName = request.getContextPath(); String imageDir = contextName + "/resources/images"; String xmlName = "Resources.xml"; String contextDir = contextName + "/resources/xml/" + xmlName; String userName = (String) session.getAttribute("User

  • Can't get rid of "my websearch" browser

    Does anyone know how to get rid of the "my websearch" browser.  I went to "find any file" but it failed to remove the files it found.  When I opened up a "Finde" window, I couldn't find the files under Mac HD.  Alternately, if you can give me the nam