THIS is one valuable tutorial. Half way through I am thinking "does this guy offer a course?" because I have to know more. Simon, thank you for demystifiing a useful feature of expressions.
Most excellent tutorial! Thank you for sharing the information. I am brand new and you answered so many questions. I hope you will continue to make tutorials. Everything I have watched from you has been great. Trying to wrap my mind around a few things before I dive in and your information has been awesome. Thank you Simon.
This is not for benginers. This is not easy. That's why I loved so much. Thank you for getting to the point. Now I can "translate" my AE expressions knowledge to this software. Subscribed!
Your tutorials are much appreciated. I have been searching for the list of math functions available in fusion, no luck so far. Could you kindly recommend where I can get a comprehensive list? Thank you.
If you search the Fusion Tools manual and look the the Custom Tool section, you will find all the documentation that's available. It's not very thorough and you will have to supply the gaps from your knowledge of other expression languages. It really should be better.
Simon I am using v 18 of Davinci and everthing in this tutorial worked fine except for the very last section using "-atan2(n1,n2)". I've double checked everything up to this point and it's all correct. Do you know of a reason why this might not work?
I'm sorry. I don't know where you have gone wrong. I just (painstakingly and double checking everything) remade it myself here, following my own instructions, and it's working fine in both Fusion Studio and Resolve Studio.
Do you mean a pendulum? If so, you can use the following expression on the rotation of the pendulum object: sin(time*n1)*(n2*n3), where n1 is the speed (frequency) of the swing, n2 is the amplitude of the swing and n3 is the control you animate from 1 down to zero in order to get the pendulum to slow to a halt. Although maybe you're asking for a more scientifically-based answer?
I think you might have got the email address wrong. If you prefer you can download the example here: tokyo-uk.com/Motion/MaskConnection.zip Step 1: Animate Mask 1 Step 2: Modify Center of Mask 2 With >Expression. Step 3: Connect "Point in 1" of the Expression to the Mask 1 path Step 4: in the Number Expression fields enter 1-p1x and 1-p1y If you only want to invert the X but not the Y, use p1y for the Y expression. And vice versa.
@@SimonUbsdell Strange, I checked the mailbox, he is correct. Your comp does a miracle, everything works as I wanted) True, I still do not understand the correct procedure, now I'm trying to do everything myself and it turns out some kind of nonsense If I connect your masks everything works perfectly, I do it myself the same way and it does not work XD
got little trouble there Simon... What's the expression to offset the beginin of that bounce ? Exemple : I'm making appear an object from size 0 to 1, then I want a little bounce (using the expression you made here !) But When I'm adding this expression, it's bouncing at the beginin of my fusion comp. How to make the object coming from 0 to 1 then bounce ?
Here's an expression you can try for the Point Expression Y, where n1 is the Frequency, n2 is the Amplitude, and n3 is the Delay before the bounce begins: if(time
If you need an expression to animate the Size from 0 to 1 over n frames, then try this expression (where n1 is how long you want that animation to take): if(time
Simon Ubsdell Hooo, I got confused, now I understand why my expressions didn’t work. Thank you!! I am stock with this: math.random(0,359) It rotate randomly but at hi speed, how I reduce its speed? Also I found this in the manual: "Inside this text box you can enter one line scripts in Lua with some Fusion page specific shorthand.
the problem is, i don't know where is the document about the syntax in fusion, variables name, built in functions or something like that can you have me
Hi Simon. I need your help! I make content for live visuals for music, I am moving from Motion to Fusion and I am really missing the Parameter Behaviour tool - Oscillate! I relied heavily on being able to input the BPM of the track I was working on and change the wave form to quickly create movements in time with the music. I have been trying to figure out how to make a custom tool and use expressions to make this in fusion but I just can't figure it out. can you help me? Thank you
To get an oscillate behavior in Fusion you need to add an expression using sine (or cosine), which is the same thing. Right-click on any parameter anywhere and choose Expression (or use the equals sign in the number field to add an expression) and then type sin(time/x), where x is your chosen divisor for time (which is counted in frames). Experiment with different values of x to get exactly the BPM you want. If you are looking to dial in specific numbers then you will need to multiply time by pi as well: sin(time*pi/4) will complete the oscillation within 8 frames. (You have managed to land on pretty much the only tutorial in which I don't use this function!) PS. Different oscillate types require different expressions but I am pretty sure you mean a sine oscillation since that's the Motion default.
Thank you so much for replying! I really appreciate your time! What I really want though is to be able to input a BPM, so based on what you said there this is what I’ve come up with… sin(time*pi/((60/BPM)*FPS)) So I’m trying to get it to calculate the time between beats at a given BPM, then * that by the frame rate to get the frames per beat (in given BPM). That is very nearly working! But it seems to be slipping out over an extended period of time, is that because the number of frames im calculating there is fractions of frames and not whole numbers? and it’s rounding that frame number down by default maybe? So maybe i need an if statement or something to get it some control over that and make it round either up or down? Or am i going down the wrong path with that thinking? Ultimately I am try to recreate the Apple oscillate tool (with all its functions) in fusion, but I think that is quite ambitious for someone of my current abilities but for now even if I could just get a BPM driven sine wave oscillator expression nailed it would be very useful Thanks again!
Try entering this expression making sure to include the colon at the start : rate=24; BPM=120; freq=rate*60/BPM; amp= .2; return sin(time*pi/freq)*amp; Adjust the 'rate' value to the frame rate you want and the 'BPM' value to the BPM you want, adjust the 'amp' value to get the amplitude of the wave. Works perfectly for me even for a very long timeline.
That is working great!!! Honestly, thank you so much for taking the time to do this for me. I am a long time follower of your videos and I didn’t expect you to take the time for me! Very grateful 🙏
Thanks for letting me know. If you want a triangular wave instead you can try this: : rate=24; BPM=60; freq=rate*60/BPM/pi; amp= .1; y = 2 * abs((time/freq - pi/2) % (2*pi) * (1/pi) - 1) - 1; return y*amp;
hello Simon I recently subs because of your excellent motion tutorials. I have a question but can't find an answer anywhere. so I'll as you in hopes you can help. I created a text element that had some basic material properties and a screen blend mode. I duplicated that layer and moved it to a new group. I then changed the text and put a different keyframed movement on it. There is an overlap an the forward text(duplicate layer) has a transparency to it where the back layer(original text) shows through. I want the text to be opaque as it moves over the back one. what possible settings am I missing? thanks for any help in advance.
Did you remember to change the blend mode of the foreground layer to Normal rather than Screen? If that's not the answer, please feel free to email me your project and I will take a look.
Simon Ubsdell yes yes yes. that was the issue. so much depth in timeline and overall properties I some how overlooked that detail. thanks for the help, I would love to send over my finished product once I've completed sound design just to show what your videos have helped me create. keep it up I love it
You don't need expressions for that. Are your rectangles bitmaps or are you using the rectangular mask tool? If it's the latter, then just chain your two masks together.
The masks are rectangular using the rectangle tool which are connected to each other and then are applied to a loader. I want the masks to travel by same amount but in oposite directions on the horizontal axis with the vertical axis being the same.
Link the two masks with a pickwhip (or by typing the path if you're being very clever) and invert the linked version. Your expression should read: "Point(1-Rectangle1.Center.X, Rectangle1.Center.Y), assuming that Rectangle1 is the mask you are linking to.
I don't understand the question. "time" is a variable that you can use in an infinite variety of ways to create time-based and time-dependent effects. What kind of effect are you wanting to achieve?
Very powerful and some what irritating UNLESS there's a Cheat Sheet explaining ALL names of the abbreviations for functions like sin, cos, atan etc otherwise I'm as lost as can be... maybe read the manual?
Every now and then I come back to this great video and relearn how to write expressions in Fusion. Thanks for sharing this great tutorial.
Thanks very much. Very pleased to hear you find it useful.
This is some good basic knowledge to gain before proceeding to the Lissajous tutorial for Fusion.
best tutorials i've seen so far. i wish you did this regularly and had a patreon
THIS is one valuable tutorial. Half way through I am thinking "does this guy offer a course?" because I have to know more. Simon, thank you for demystifiing a useful feature of expressions.
Thank you so much for sharing! Best Fusion tutorials on RUclips. 😀
This was such a fantastic introduction to expressions! There's so much more to learn, but I don't feel as overwhelmed anymore. Thank you :)
Most excellent tutorial! Thank you for sharing the information. I am brand new and you answered so many questions. I hope you will continue to make tutorials. Everything I have watched from you has been great. Trying to wrap my mind around a few things before I dive in and your information has been awesome. Thank you Simon.
Thank you very much Simon for your tutorials. They are incredibly well done and are easy to follow. They are all very appreciated
Thanks a lot. I'm so happy to find your channel and very sad that I didn't know about your channel so far!
This is not for benginers. This is not easy. That's why I loved so much.
Thank you for getting to the point. Now I can "translate" my AE expressions knowledge to this software. Subscribed!
Thank you. Very glad you found it useful.
Wow, it is soooooooooo useful, very big thanks to you. I love it.🍻😍
Thank you for making stuff for Fusion that has really goot information in it.
This is a great tutorial about Fusion Expressions. Thank you very much!
Excellent tutorial! Subscribed!
Thank you and welcome.
16:26: The formula displayed on screen is wrong. The n2 should be factored in on the result of cos/sin (ie. cos(n1)*n2+p1x)
exactly what I hope to see in expression tutorial. thank you so much
Incredibly useful. Thanks for the tutorial :)
You are the best in my heart.
Thank you so much! Your tutorials are very helpful, even for a complete beginner in everything concerning video making ;)
Thank you, Simon!
Thank you for this very good tutorial. I am looking to move from After effects So this is very helpful.
Great class these is it ...sir please make a rotoscoping class on fusion
Your tutorials are much appreciated. I have been searching for the list of math functions available in fusion, no luck so far. Could you kindly recommend where I can get a comprehensive list? Thank you.
If you search the Fusion Tools manual and look the the Custom Tool section, you will find all the documentation that's available. It's not very thorough and you will have to supply the gaps from your knowledge of other expression languages. It really should be better.
Great video my friend! Liked!
This channel is very valuable. Is there a place to see all the available functions? What language are the epxressions using?
Simon I am using v 18 of Davinci and everthing in this tutorial worked fine except for the very last section using "-atan2(n1,n2)". I've double checked everything up to this point and it's all correct. Do you know of a reason why this might not work?
I'm sorry. I don't know where you have gone wrong. I just (painstakingly and double checking everything) remade it myself here, following my own instructions, and it's working fine in both Fusion Studio and Resolve Studio.
can you please do a tutorial on inertia expressions (where a swinging elements slow down overtime)?
Do you mean a pendulum? If so, you can use the following expression on the rotation of the pendulum object: sin(time*n1)*(n2*n3), where n1 is the speed (frequency) of the swing, n2 is the amplitude of the swing and n3 is the control you animate from 1 down to zero in order to get the pendulum to slow to a halt. Although maybe you're asking for a more scientifically-based answer?
Hi, How to make two masks move in opposite directions? Can you say the formula?
Please email me (simon@tokyo-uk.com) and I can share an example composition with you. It's difficult to explain this in the comments.
@@SimonUbsdell Ok I wrote, thanks for the help )
I think you might have got the email address wrong. If you prefer you can download the example here: tokyo-uk.com/Motion/MaskConnection.zip
Step 1: Animate Mask 1
Step 2: Modify Center of Mask 2 With >Expression.
Step 3: Connect "Point in 1" of the Expression to the Mask 1 path
Step 4: in the Number Expression fields enter 1-p1x and 1-p1y
If you only want to invert the X but not the Y, use p1y for the Y expression. And vice versa.
@@SimonUbsdell Strange, I checked the mailbox, he is correct. Your comp does a miracle, everything works as I wanted) True, I still do not understand the correct procedure, now I'm trying to do everything myself and it turns out some kind of nonsense If I connect your masks everything works perfectly, I do it myself the same way and it does not work XD
@@SimonUbsdell Many thanks for your help
got little trouble there Simon... What's the expression to offset the beginin of that bounce ?
Exemple : I'm making appear an object from size 0 to 1, then I want a little bounce (using the expression you made here !) But When I'm adding this expression, it's bouncing at the beginin of my fusion comp. How to make the object coming from 0 to 1 then bounce ?
Here's an expression you can try for the Point Expression Y, where n1 is the Frequency, n2 is the Amplitude, and n3 is the Delay before the bounce begins:
if(time
If you need an expression to animate the Size from 0 to 1 over n frames, then try this expression (where n1 is how long you want that animation to take): if(time
anyone know how to map ranges? Cant find any documentation anywhere.
freaking amazing but I started to cry at 13:04
Awesome!! This is LUA? Where do we learn it?
Fusion uses LUA for scripting not expressions. You can find the expressions syntax in the Custom Tool section of the Fusion manual pp. 956ff
Simon Ubsdell Hooo, I got confused, now I understand why my expressions didn’t work. Thank you!!
I am stock with this: math.random(0,359) It rotate randomly but at hi speed, how I reduce its speed? Also I found this in the manual: "Inside this text box you can enter one line scripts in Lua with some Fusion page specific shorthand.
the problem is, i don't know where is the document about the syntax in fusion, variables name, built in functions or something like that
can you have me
documents.blackmagicdesign.com/UserManuals/Fusion9_Tool_Reference.pdf (Pages 498 - 503)
@@SimonUbsdell thank you so much :)
Have a nice day!
Here is where I sub.
wow its simon from tokyo productions - aka my Motion5 guru.
Hi Simon. I need your help! I make content for live visuals for music, I am moving from Motion to Fusion and I am really missing the Parameter Behaviour tool - Oscillate! I relied heavily on being able to input the BPM of the track I was working on and change the wave form to quickly create movements in time with the music. I have been trying to figure out how to make a custom tool and use expressions to make this in fusion but I just can't figure it out. can you help me? Thank you
To get an oscillate behavior in Fusion you need to add an expression using sine (or cosine), which is the same thing. Right-click on any parameter anywhere and choose Expression (or use the equals sign in the number field to add an expression) and then type sin(time/x), where x is your chosen divisor for time (which is counted in frames). Experiment with different values of x to get exactly the BPM you want. If you are looking to dial in specific numbers then you will need to multiply time by pi as well: sin(time*pi/4) will complete the oscillation within 8 frames. (You have managed to land on pretty much the only tutorial in which I don't use this function!) PS. Different oscillate types require different expressions but I am pretty sure you mean a sine oscillation since that's the Motion default.
Thank you so much for replying! I really appreciate your time! What I really want though is to be able to input a BPM, so based on what you said there this is what I’ve come up with…
sin(time*pi/((60/BPM)*FPS))
So I’m trying to get it to calculate the time between beats at a given BPM, then * that by the frame rate to get the frames per beat (in given BPM). That is very nearly working! But it seems to be slipping out over an extended period of time, is that because the number of frames im calculating there is fractions of frames and not whole numbers? and it’s rounding that frame number down by default maybe? So maybe i need an if statement or something to get it some control over that and make it round either up or down? Or am i going down the wrong path with that thinking?
Ultimately I am try to recreate the Apple oscillate tool (with all its functions) in fusion, but I think that is quite ambitious for someone of my current abilities but for now even if I could just get a BPM driven sine wave oscillator expression nailed it would be very useful
Thanks again!
Try entering this expression making sure to include the colon at the start
: rate=24; BPM=120; freq=rate*60/BPM; amp= .2; return sin(time*pi/freq)*amp;
Adjust the 'rate' value to the frame rate you want and the 'BPM' value to the BPM you want, adjust the 'amp' value to get the amplitude of the wave. Works perfectly for me even for a very long timeline.
That is working great!!! Honestly, thank you so much for taking the time to do this for me. I am a long time follower of your videos and I didn’t expect you to take the time for me! Very grateful 🙏
Thanks for letting me know. If you want a triangular wave instead you can try this:
: rate=24; BPM=60; freq=rate*60/BPM/pi; amp= .1; y = 2 * abs((time/freq - pi/2) % (2*pi) * (1/pi) - 1) - 1;
return y*amp;
you explain coordinates in EXPRESSION TUTORIAL ?
Too cryptic for me, sorry. Maybe give it another go.
hello Simon I recently subs because of your excellent motion tutorials. I have a question but can't find an answer anywhere. so I'll as you in hopes you can help. I created a text element that had some basic material properties and a screen blend mode. I duplicated that layer and moved it to a new group. I then changed the text and put a different keyframed movement on it. There is an overlap an the forward text(duplicate layer) has a transparency to it where the back layer(original text) shows through. I want the text to be opaque as it moves over the back one. what possible settings am I missing? thanks for any help in advance.
Did you remember to change the blend mode of the foreground layer to Normal rather than Screen? If that's not the answer, please feel free to email me your project and I will take a look.
Simon Ubsdell yes yes yes. that was the issue. so much depth in timeline and overall properties I some how overlooked that detail. thanks for the help, I would love to send over my finished product once I've completed sound design just to show what your videos have helped me create. keep it up I love it
Question: I have rectangles I want use as a mask. I want one mask to go to the left and the other one to the right. What expression would I use?
You don't need expressions for that. Are your rectangles bitmaps or are you using the rectangular mask tool? If it's the latter, then just chain your two masks together.
The masks are rectangular using the rectangle tool which are connected to each other and then are applied to a loader. I want the masks to travel by same amount but in oposite directions on the horizontal axis with the vertical axis being the same.
Link the two masks with a pickwhip (or by typing the path if you're being very clever) and invert the linked version. Your expression should read: "Point(1-Rectangle1.Center.X, Rectangle1.Center.Y), assuming that Rectangle1 is the mask you are linking to.
Perfect! Thank you so much!
No problem. Please feel free to email me at any time of you have questions you think I might be able to help with.
Hello, how do I write an expression to have a shift in time movement
I don't understand the question. "time" is a variable that you can use in an infinite variety of ways to create time-based and time-dependent effects. What kind of effect are you wanting to achieve?
@@SimonUbsdell TO DIE ONE AFTER ANOTHER LEFT
Thanks for video tutorial. please you teach me more video..
is IF THEN expression works in fusion, if so what is the expression?
Yes, it's as simple as this: if(x, y, z) ... in other words if x is true then return y, else return z.
Very powerful and some what irritating UNLESS there's a Cheat Sheet explaining ALL names of the abbreviations for functions like sin, cos, atan etc otherwise I'm as lost as can be... maybe read the manual?
Aw hell thats to much math for me, imma go back to keyframing. Great tutorial tho
Great tutorial. Quite stupid that you still have to refer to number modifiers as n1, n2 etc after you have given them proper names...