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

Turbulent displace seamlessly loop for 10s

Community Beginner ,
Jul 22, 2024 Jul 22, 2024

I tried to make a seamless loop using Turbulent Displace. I added the following expression to the Evolution property: 

 

time * 36

 

 or

 

time * (360/10)

 

The Evolution does make a full circle from 0 to 360 degrees, but the animation is far  from seamless. 

Basically it starting from 0*+00°  and finishes 1*+00° 

Could somebody help me to create a real seamless loop from Turbulent Displace for 10sScreenShot_20240722115705.png

 
 
 
 
 
TOPICS
Expressions , Scripting
4.7K
Translate
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

correct answers 1 Correct answer

Community Beginner , Jul 22, 2024 Jul 22, 2024

First tick "Cycle Evolution"-checkbox and set "Cycle (in Revolution)" to 1. This makes it loopable.

Also insert this expression at "Evolution". 

const myDur = 10; //duration in seconds
const increment = 360/timeToFrames(myDur); //amount to increment per frame
const endVal = 360 - increment; //calculate the maximum value

linear(time, 0, 10, 0, endVal); //linear blend between two values

Screenshot 2024-07-22 135759.png

Translate
Community Expert ,
Jul 22, 2024 Jul 22, 2024

Instead of Evolution, could you animate the Offset (Turbulence) to move in a closed loop over 10s?

Translate
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 ,
Jul 22, 2024 Jul 22, 2024

First tick "Cycle Evolution"-checkbox and set "Cycle (in Revolution)" to 1. This makes it loopable.

Also insert this expression at "Evolution". 

const myDur = 10; //duration in seconds
const increment = 360/timeToFrames(myDur); //amount to increment per frame
const endVal = 360 - increment; //calculate the maximum value

linear(time, 0, 10, 0, endVal); //linear blend between two values

Screenshot 2024-07-22 135759.png

Translate
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 ,
Sep 19, 2025 Sep 19, 2025
LATEST

I would love to buy you a beer one day! Thank you for this great tip, I always meant to figure out how to get turbulent displacement looped, this works like magic! 

Translate
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