• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

My shape layer keeps jumping between its pre-expression and post-expression position

Community Beginner ,
Feb 02, 2022 Feb 02, 2022

Copy link to clipboard

Copied

Attached is a video of my problem.

 

I have an expression on the x and y positions that simply links to a slider that allows me to easily move the shape layer diagonally across the canvas.

 

The bottom right position is the desired result, ie what the layer's position is supposed to be if my expression is turned on, meanwhile the top left position is what the layer's position would be if I hadn't added the expression.

 

I know I can find an easy workaround, but seriously what the heck is going on? Similar "flickering" glitches have been happening to other layers in other comps as well

 

(Tried clearing cache multiple times, restarting, etc. The comp is literally just this shape layer, so there shouldn't be any weird frame rate problems.)

 

Here is my expression for those curious:

on x position:

 

 

transform.xPosition - effect("iso z ctrl")("Slider")

 

on y position:

transform.yPosition - effect("iso z ctrl")("Slider") * effect("slope")("Slider")

 

 

 

  • Alienware Aurora R14

  • Windows 11

  • 64GB, 4x16GB, DDR4, 3200MHz, XMP

  • AMD Ryzen(TM) 9 5950X (16-Core, 72MB Total Cache, Max Boost Clock of 4.9GHz)

  • NVIDIA(R) GeForce RTX(TM) 3060 12GB GDDR6

  • 512GB NVMe M.2 PCIe SSD

TOPICS
Error or problem , Expressions

Views

196

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Feb 02, 2022 Feb 02, 2022

Copy link to clipboard

Copied

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Feb 03, 2022 Feb 03, 2022

Copy link to clipboard

Copied

Aside from the same boring answer of "Update and tweak your graphics driver" there's really not much one could say. If you haven't already, also turn of multiframe rendering. Out-of-order rendering can cause weird things when using expressions.

 

Mylenium

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Feb 03, 2022 Feb 03, 2022

Copy link to clipboard

Copied

LATEST

You have separated dimensions, moving the xPosition by adding the value of the first slider, then you move the Yposition by multiplying the value of the first slider by the value of the second slider. That means that if the first slider is set to 200 and the second slider is set to 100 X will be transformed from its current x position 200 pixels to the right and Y will be transformed from its current Y position 2000 pixels down. 

 

I am assuming you have set at least 2 keyframes on at least one of the sliders. You could also have set keyframes for X and Y positions.

 

The first thing I would do is delete all keyframes for the sliders and positions. This should stop the movement. 

 

Then I would reset the value of the first slider to 0 and the second slider (slope) to 1. Adjusting the first slider (iso z ctrl) should move the layer diagonally. Then adjust the value of the second slider to modify the Y position.

 

Your expressions do not give very usable control to the X and Y position. I'm not sure what you are trying to accomplish. You offer no design goals other than moving a layer diagonally so I'm not sure what you are trying to animate. At the very least I would multiply the value of the slope slider by .01 to give you some reasonable control on the Y position.

 

I suspect that you have multiple keyframes and that the resulting values are all over the place. Personally, I would not separate dimensions and I would use two sliders and a little math to generate an array, then set just a couple of keyframes. My solution:

 

anglCtrl = effect("iso z ctrl")("Slider");
slopeCtrl = effect("slope")("Slider") * .01;
[value[0] + anglCtrl, value[1] + anglCtrl * slopeCtrl];

 

In the future, please embed a screenshot of your timeline with the modified properties of the problem layer showing. Just press 'uu', take a screenshot, copy the file name and paste to the forum, or drag the file to the forum, and don't use the "Drag & drop or browse..." feature because it's buggy. Without knowing what is going on in the problem layer it's pretty to offer anything but a guess.

RickGerard_0-1643914893689.png

 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines