AE Shader Effector
  • Hi, just bought the script and am looking forward to using it. The instruction video isn't very clear though. Any chance to upload 1080p version so I can see the settings better (they're blurry at current resolution)? Also, will you be releasing more training video's soon?

    Cheers...

    Bill
  • Hey Bill,

    I forgot to check to 1080p option on Vimeo, its updated now. Thanks for letting me know!

    And on training videos, what would you like to see?
  • Thanks Michael! If you could make another video with some more examples it would be great :)
  • Hi Michael,

    I'm in Trial mode on Mac OS 10.6.8; AE CS4.

    The three buttons at the bottom of the panel appear completely blank. Only if I click on them can I faintly see "Bake", "Fix" and "Remove".
  • can you make more examples about this script ?
  • Hi Michael,

    I'm in Trial mode on Mac OS 10.6.8; AE CS4.

    The three buttons at the bottom of the panel appear completely blank. Only if I click on them can I faintly see "Bake", "Fix" and "Remove".
    Hey Frank,

    I've opened it up in CS4 9.0.0.346 and the buttons are showing for me. Im curious if you have any of my other scripts and experience the same result? 

    can you make more examples about this script ?
    I will in about a month.
  • I do indeed, Michael. I have your Rift and Sortie scripts. And I've just noticed that when I select the "Time Affect" option in Rift the text on the "Range" button also is no longer visible.

    I've put some grabs into my DropBox for you to illustrate what happens when I select Time Affect. You will also see the three "blank" buttons on the AE Shader Effector panel.

    https://dl.dropboxusercontent.com/u/64118848/BeforeSelection.png
    https://dl.dropboxusercontent.com/u/64118848/AfterSelection.png
  • HO HO HO ;)
    Happy Hollydays,

    in my german version of AE (CS5) it dosn´t work, it trys to use "Slider Control" but thats the englisch termn, in german it would be "Schieberegler".
    Looking forward to a (international) update!

    Greetings
    Stefan



    Update: 1.0.1 works fine --> Thanks!
  • Hi Michael, in 2D space am I correct in thinking that the script samples the pixel values which lie at the same position on the sample layer as the Anchor Point of the target layer? Does this work if the affected layer and/or target layer are in 3D space; or if a camera is introduced into the comp?

  • in my german version of AE (CS5) it dosn´t work, it trys to use "Slider Control" but thats the englisch termn, in german it would be "Schieberegler".
    Looking forward to a (international) update!

    Hey Stefan, this should be working in 1.0.1. Sorry about that.

    Frank, I'm still trying to figure the button text problem for CS4. Haven't been able to reproduce it yet.

    And yes, it does use the anchor point as the sample position. Adding cameras or having the layers be 3d will not break it. I should have touched on that in the tutorial.
  • Hey Michael,
    thanks for the response! I am shure you will fix this... but first --> Family and Friends!!
    ;)
    Kindley,
    Stefan
  • Thanks, Michael.

    I'm just wondering if you can clarify how the mapping is done between the sample layer and the target layer. It seems that I can move a 3-D sample layer in z-space without there being any impact on the target layer. But once I rotate the sample layer on any axis that is no longer the case.
  • Hey Frank,


    Imagine the sample layer as a orthogonal projector casting its RGBA values onto the affected layers in 3D space. When the light hits the anchor point of a layer, it grabs that value and uses it for the interpolation calculation. As intended, rotations will affect how its projected.
  • Is there a mailing list I can sign up for to find out when this is on sale again? I meant to buy it when it first came out, but the holidays distracted me.
  • Yes you can sign up here: Notification Subscription (make sure to check the "Also notify me of new products tutorials and news" checkbox). However I would not wait for a sale as we do sales very rarely around here.  
  • Hello Michael,

    I’m about to buy your Shader Effector script, but I need information before purchasing the right number of
    licenses I need: I will install the scripts on two/three PCs which usually
    launch the renders on a network render farm. Does the Shader Effector script need to be
    installed on each render farm too? Or we need to pre-render in local before
    pushing to the render farm? Thanks, Cristina.

  • Hey Christina,

    You only need to install it on one pc to run the script with. After that, anyone can open up the AEP and see the same results.

    Thanks!
  • Thank you very much, Michael.

    And keep up the good work!
  • Hello Michael,

    I understand that this is a very powerful and times-saving script, however I'm stuck on the learning curve.

    Can you explain how I can use a fractal noise field to control the opacity of another layer?

    Currently I have pre-comped a fractal noise field, and brought that into a new comp.

    In the UI Panel, I have it selected, then on my other layer, I set low to "0" and high to "100".

    Property is set to opacity, then I click play and nothing happens.

    I can see that under the layer's opacity, the stop watch has turned red to indicate a script has been generated, but it isn't smoothly fading in and out as I had hoped.

    Any help is appreciated.

    Thanks,

    James
  • Hey James,

    Only two things I can think of.

    1. It sounds like you've ruled this out, but can you confirm that the Fractal Noise effect is inside the pre-comp? Sometimes its easy to forget to check the "Move all attributes into composition" checkbox.

    2. Did you first set the map values to something other than 0 and 100, then change it later using the UI Panel? What happens is that the script creates 2 sliders on the noise comp as many times as you run the script. So there might be duplicate sliders on the noise comp and the expression is reading from the older ones. You could try either deleting all of the sliders or adjust them to the desired values.

    If neither of those work, upload the scene so I can download and take a peek.

    Thanks.
  • I keep getting an "incompatible expression, multiprocessing disabled" when previewing when using this script. Im on Cs6. I've done some troubleshooting but am i doing something wrong or it just doesn't work with multiprocessing?
  • You're not doing anything wrong. The sampleImage() function that is used to sample the individual pixel values is not multi-threaded.

    The only thing to do is to submit a feature request to Adobe to make expressions like sampleImage() thread safe.
  • Right, kind of thought that was it. Thanks for the reply, and great script
  • Hello Michael,
    I am using AE CC; I have a fractal noise map that should control the opacity of a bunch of pieces but somehow it gives the same values to half of the pieces and another value to the other half. (half of the pieces have been flipped but I don't see why this should matter).

    Not sure how to make this work; I followed your demo video step by step.
    Thanks for any help,
    Vincent


  • Hey Vincent,

    Could you upload the project file for me to check out? It seems like you had everything setup right.

    Thanks.
  • Hi Michael,
    Here is my project:
    Thanks a lot for the quick reply.


  • Hi Michael,
    I fixed my problem.
    - import with flattening psd fx
    - but also had to apply then remove then reapply (not sure if it's because I have tons of layers)

    Thanks for help,
    Vincent
  • Hi Michael,
    Thanks for this very powerful script, but...
    I have a problem using AEShaderEffector.
    After I have chosen my Effector precomposition, if try to apply the AEShaderEffector on ALL Rotation properties of a 3D layer then I get an error message ("undefined is not an object").
    But it works if I apply successively rotation to X, Y and Z...

    After Effects CS6 (11.0.4.2)

    Macbook Pro Retina (half 2012)

    2,6 GHz Intel Core i7 / 16 Go 1600 MHz DDR3
    NVIDIA GeForce GT 650M 1024 Mo
    OS X 10.8.5
    CUDA Driver Version: 6.5.14

    Thanks
    imageimage
    Screenshot01.jpg
    1276 x 1023 - 208K
    Screenshot02.jpg
    1276 x 1023 - 218K
  • Hey Zoic,

    Thanks for the details, I'll look into it.
  • Nice script, and really useful, however the remove button just removes the expression from the selected layers, it doesn't remove the control from the sample layer.
    AE therefore seems to get confused and uses old controls when you try and update low/high values and reapply. (it doesn't seem to change to the new control on the sample layer)
    no biggie but had me struggling to use for a bit there!

    R
  • of course thinking laterally now i've posted, i could just go and amend the control sliders!! 
  • The problem with removing the controls automatically is that it assumes nothing else besides the effector layers is referencing them.

    Say you applied Shader Effector to a comp. Then did some other work in the comp and in the process you add an expression that references the controls on the sample layer. If I delete the controls when you remove expressions, you'll get a bunch of errors complaining about some missing controls. I try to avoid that kind of surprise behavior.

    I would like to find a better way however.
  • Hi Michael, what about CC2014 compatibility?
  • Hi DK,

    Yes, it's compatible with CC2014.
  • Hello, Michael!

    I've just bought the script and performing some tests. I've run into a problem trying to control light's intensity. I keep getting expression errors regarding an anchor point of a light. Also, when I select Intensity as a Selected Property, the Axis dropdown list gets activated thus (as I understand it) getting the script to look for an anchor point of a layer. Can I workaround this issue somehow? This kind of ruins my plans in many ways ) Thanks in advance.
  • Hi Tamerlantus,

    Yes, there's currently an issue with the script assuming lights having anchor points. I'm working on this plus a few other fixes that will be released all at once.

    So in the meantime, just replace the second line of the expression from this:

    var pos = map.fromWorld(toWorld(anchorPoint));

    to this:

    var pos = map.fromWorld(position);

    I'll try and get the fix up soon.

  • In your demonstration you only affect layers that are duplicated precomps of each other. Is this a requirement? Or could you apply to the shader effector to different types of layers, non-precomped?

    Thanks.
  • Hello Michael,
    Thanks for a fantastic script!
    See quoted below. I am having the same issue, however my layers are not 3D.
    When I apply shader to rotation, I get the warning "undefined is not an object"
    Did you learn why this is happening, and can you share?
    Thanks!
    Declan
    __quoted___
    Hi Michael,
    Thanks for this very powerful script, but...
    I have a problem using AEShaderEffector.
    After I have chosen my Effector precomposition, if try to apply the AEShaderEffector on ALL Rotation properties of a 3D layer then I get an error message ("undefined is not an object").
    But it works if I apply successively rotation to X, Y and Z...

  • Further comment: I have found a workaround:

    If I select the "rotation" property (in the layers to be affected) and apply Shader Effector to selected property ("rotation") it works fine.

    But not in setting rotation directly.

    Additional information (if this affects things): My layers are not precomposed, but directly from an .ai file imported as comp with "retain layer sizes" because I want the animation centered around the individual shapes.  The script seems to behave just fine, though, only trouble is with rotation.

    Thanks,

    Declan
  • Hello Michael

    is there a way to map the time to frames, rather than seconds?
    if so, it would be enable quicker & more accurate adjustments,, i reckon

    thanks
    Nic
  • Hi Michael, what about CC2015 compatibility?
  • Hi Michael, Ive used this successfully on a number of projects. Now i'm stuck though, trying to get it to work on a text layer. I want the individual characters to change position and opacity based on a pre-comped gradient wipe. I selected the amount property of an expression selector on my text layer, and the entire line shifts up as the grad goes from black to white. But I cannot get each character on the layer to move independently. Any ideas? Thx Adam