Forum Replies Created

Page 54 of 1081
  • Dan Ebberts

    February 23, 2023 at 5:25 pm in reply to: Speeding up an animation with the help of sliders

    A scale expression like this might work:

    pct = effect("Slider Control")("Slider")/100;
    val = value;
    if (numKeys > 1 && time > key(1).time){
    d = (time - key(1).time)*pct;
    val = valueAtTime(key(1).time + d);
    }
    val
  • Dan Ebberts

    February 22, 2023 at 10:44 pm in reply to: Automating a text block to slide up or down

    Hard to be precise without seeing any of the details, but I’d create a position (not anchor point) expression for the text pre-comp where you calculate the current y position of the center of the text, subtract that from the y position of the center of the circle and add the result to the current value, roughly like this:

    yT = textCenter[0];
    yC = circleCenter[1];
    yAdjust = yC - yT;
    value + [0,yAdjust]
  • Dan Ebberts

    February 22, 2023 at 9:36 pm in reply to: Create null with expression or effect?

    An expression can’t do anything other than alter the value of the property hosting the expression.

  • Dan Ebberts

    February 22, 2023 at 1:31 am in reply to: Expression selector

    Here’s a simple example that will need more complexity if there are multiple lines, or if the number of characters changes:

    curChar = text.sourceText.value[textIndex-1];
    val = 100;
    t = time - thisComp.frameDuration;
    while (val > 0){
    prevChar = text.sourceText.valueAtTime(t)[textIndex-1];
    if (curChar != prevChar) break;
    t -= thisComp.frameDuration;
    val -= 10;
    }
    val
  • v = toComp(anchorPoint)[0]; 

    should give you the x position of the layer itself.

  • Dan Ebberts

    February 20, 2023 at 4:52 pm in reply to: If(this OR that)… times 5.

    I think the first test is messing things up. Try it this way:

    if (MENU  == 1 || MENU  == 2 || MENU  == 3 || MENU  == 4){
  • Dan Ebberts

    February 18, 2023 at 7:19 am in reply to: Dynamically Distribute Text Layers Horizontally

    I think something like this might get you started. Set nLayers to the number of text layers participating (they need to be contiguous) and set firstLayer to the index of the first participating text layer.

    gap = thisComp.layer("controls").effect("Gap")("Slider");
    nLayers = 4;
    firstLayer = 1;
    curEdge = 0;
    wTotal = gap*(nLayers-1);
    for(i = firstLayer; i < firstLayer+nLayers; i++){
    L = thisComp.layer(i);
    r = L.sourceRectAtTime(time,false);
    w = r.width;
    wTotal += w;
    if (i == index) myOffset = r.left;
    if (i < index) curEdge += w + gap;
    }
    x = thisComp.width/2 - wTotal/2 + curEdge - myOffset;
    [x,value[1]]
  • Dan Ebberts

    February 17, 2023 at 6:49 am in reply to: createPath in 3D space.

    Well, you can’t have a 3D path, so the best you could do is to break it into a bunch of segments, with one path layer required for each connection between 3D layers. Then you could make each path layer 3D (but the path itself would still be 2D), but then you have to worry about positioning it in world 3D space and orienting is so that it connects between the 3D layers and also presents itself to the camera in a way that maximizes its visibility (so that it’s not edge-on to the camera). Lots of work…

  • Dan Ebberts

    February 17, 2023 at 3:24 am in reply to: createPath in 3D space.

    It should work fine with the smet layers as 3D, but not the line layer.

  • Dan Ebberts

    February 17, 2023 at 1:23 am in reply to: createPath in 3D space.

    I think you’ll get that message if you’ve made the line layer 3D.

Page 54 of 1081

We use anonymous cookies to give you the best experience we can.
Our Privacy policy | GDPR Policy