DaVinci Resolve Fusion Tutorial: Expressions Made Easy

แชร์
ฝัง
  • เผยแพร่เมื่อ 7 ก.ย. 2024
  • A beginner's tutorial for Fusion expressions that helps fast-forward you to a good understanding of how they work - with special tips for After Effects users. Featuring bounce/spring, orbit and "look at" expressions.

ความคิดเห็น • 86

  •  4 ปีที่แล้ว +1

    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.

    • @SimonUbsdell
      @SimonUbsdell  4 ปีที่แล้ว

      Thanks very much. Very pleased to hear you find it useful.

  • @BrentRoss
    @BrentRoss 6 ปีที่แล้ว +7

    best tutorials i've seen so far. i wish you did this regularly and had a patreon

  • @nekodificador
    @nekodificador 4 ปีที่แล้ว +3

    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!

    • @SimonUbsdell
      @SimonUbsdell  4 ปีที่แล้ว +1

      Thank you. Very glad you found it useful.

  • @maximoremedios
    @maximoremedios 5 ปีที่แล้ว +1

    Thank you so much for sharing! Best Fusion tutorials on TH-cam. 😀

  • @jpsunchase7165
    @jpsunchase7165 2 ปีที่แล้ว

    This is some good basic knowledge to gain before proceeding to the Lissajous tutorial for Fusion.

  • @kjvisual7
    @kjvisual7 3 ปีที่แล้ว

    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.

  • @DKIBUI
    @DKIBUI 7 ปีที่แล้ว +2

    Thank you very much Simon for your tutorials. They are incredibly well done and are easy to follow. They are all very appreciated

  • @henri-julien
    @henri-julien 3 ปีที่แล้ว

    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 :)

  • @AgelessSageWisdom
    @AgelessSageWisdom 4 ปีที่แล้ว

    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.

  • @YASIR.K
    @YASIR.K 4 ปีที่แล้ว +2

    Wow, it is soooooooooo useful, very big thanks to you. I love it.🍻😍

  • @HoneyJamTesla
    @HoneyJamTesla 4 ปีที่แล้ว

    Thanks a lot. I'm so happy to find your channel and very sad that I didn't know about your channel so far!

  • @user-gd6pj6oh8p
    @user-gd6pj6oh8p ปีที่แล้ว

    You are the best in my heart.

  • @danielmuhlig7097
    @danielmuhlig7097 2 ปีที่แล้ว +2

    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)

  • @jozef_s
    @jozef_s ปีที่แล้ว

    Thank you, Simon!

  • @ronydey2696
    @ronydey2696 4 ปีที่แล้ว

    Great class these is it ...sir please make a rotoscoping class on fusion

  • @morganmendieta3738
    @morganmendieta3738 6 ปีที่แล้ว +2

    Thank you for this very good tutorial. I am looking to move from After effects So this is very helpful.

  •  6 ปีที่แล้ว +1

    This is a great tutorial about Fusion Expressions. Thank you very much!

  • @Marhan93
    @Marhan93 6 ปีที่แล้ว +2

    Incredibly useful. Thanks for the tutorial :)

  • @HartmutNoerenberg
    @HartmutNoerenberg 5 ปีที่แล้ว

    Thank you for making stuff for Fusion that has really goot information in it.

  • @tor3203
    @tor3203 5 ปีที่แล้ว

    exactly what I hope to see in expression tutorial. thank you so much

  • @toocz7702
    @toocz7702 5 ปีที่แล้ว

    Thank you so much! Your tutorials are very helpful, even for a complete beginner in everything concerning video making ;)

  • @AbrEvig
    @AbrEvig 5 ปีที่แล้ว +1

    Excellent tutorial! Subscribed!

  • @Ariplaychannel
    @Ariplaychannel 7 ปีที่แล้ว +1

    Great video my friend! Liked!

  • @bigshotmovieverse2621
    @bigshotmovieverse2621 6 ปีที่แล้ว +9

    Here is where I sub.

  • @TalimaPictures
    @TalimaPictures 5 ปีที่แล้ว +2

    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.

    • @SimonUbsdell
      @SimonUbsdell  5 ปีที่แล้ว

      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.

  • @mgilb19
    @mgilb19 3 ปีที่แล้ว

    wow its simon from tokyo productions - aka my Motion5 guru.

  • @matiasgoinheix366
    @matiasgoinheix366 5 ปีที่แล้ว

    This channel is very valuable. Is there a place to see all the available functions? What language are the epxressions using?

  • @tibfox
    @tibfox 4 ปีที่แล้ว +2

    freaking amazing but I started to cry at 13:04

  • @derekburchell
    @derekburchell 5 หลายเดือนก่อน

    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?

    • @SimonUbsdell
      @SimonUbsdell  5 หลายเดือนก่อน

      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.

  • @povkh
    @povkh 7 ปีที่แล้ว

    Thanks for video tutorial. please you teach me more video..

  • @timolenton1904
    @timolenton1904 4 ปีที่แล้ว

    anyone know how to map ranges? Cant find any documentation anywhere.

  • @nssdesigns
    @nssdesigns 5 ปีที่แล้ว

    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?

  • @DieSpeckBohne
    @DieSpeckBohne 3 ปีที่แล้ว +1

    Aw hell thats to much math for me, imma go back to keyframing. Great tutorial tho

  • @robhindley3228
    @robhindley3228 4 ปีที่แล้ว

    can you please do a tutorial on inertia expressions (where a swinging elements slow down overtime)?

    • @SimonUbsdell
      @SimonUbsdell  4 ปีที่แล้ว +1

      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?

  • @thekjub
    @thekjub 3 ปีที่แล้ว

    you explain coordinates in EXPRESSION TUTORIAL ?

    • @SimonUbsdell
      @SimonUbsdell  3 ปีที่แล้ว

      Too cryptic for me, sorry. Maybe give it another go.

  • @japphoenix4939
    @japphoenix4939 4 ปีที่แล้ว

    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

    • @SimonUbsdell
      @SimonUbsdell  4 ปีที่แล้ว +1

      documents.blackmagicdesign.com/UserManuals/Fusion9_Tool_Reference.pdf (Pages 498 - 503)

    • @japphoenix4939
      @japphoenix4939 4 ปีที่แล้ว

      @@SimonUbsdell thank you so much :)
      Have a nice day!

  • @user-dh1rh5ok2w
    @user-dh1rh5ok2w 4 ปีที่แล้ว

    Hi, How to make two masks move in opposite directions? Can you say the formula?

    • @SimonUbsdell
      @SimonUbsdell  4 ปีที่แล้ว

      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.

    • @user-dh1rh5ok2w
      @user-dh1rh5ok2w 4 ปีที่แล้ว

      @@SimonUbsdell Ok I wrote, thanks for the help )

    • @SimonUbsdell
      @SimonUbsdell  4 ปีที่แล้ว

      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.

    • @user-dh1rh5ok2w
      @user-dh1rh5ok2w 4 ปีที่แล้ว

      @@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

    • @user-dh1rh5ok2w
      @user-dh1rh5ok2w 4 ปีที่แล้ว

      @@SimonUbsdell Many thanks for your help

  • @ELPLAK
    @ELPLAK 4 ปีที่แล้ว

    Awesome!! This is LUA? Where do we learn it?

    • @SimonUbsdell
      @SimonUbsdell  4 ปีที่แล้ว +1

      Fusion uses LUA for scripting not expressions. You can find the expressions syntax in the Custom Tool section of the Fusion manual pp. 956ff

    • @ELPLAK
      @ELPLAK 4 ปีที่แล้ว

      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.

  • @CptCurk
    @CptCurk 4 ปีที่แล้ว

    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 ?

    • @SimonUbsdell
      @SimonUbsdell  4 ปีที่แล้ว +2

      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

    • @SimonUbsdell
      @SimonUbsdell  4 ปีที่แล้ว +2

      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

  • @antonarap
    @antonarap 4 ปีที่แล้ว

    Great tutorial. Quite stupid that you still have to refer to number modifiers as n1, n2 etc after you have given them proper names...

  • @roryclewlow
    @roryclewlow 5 หลายเดือนก่อน

    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

    • @SimonUbsdell
      @SimonUbsdell  5 หลายเดือนก่อน +1

      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.

    • @roryclewlow
      @roryclewlow 5 หลายเดือนก่อน

      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!

    • @SimonUbsdell
      @SimonUbsdell  5 หลายเดือนก่อน

      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.

    • @roryclewlow
      @roryclewlow 5 หลายเดือนก่อน

      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 🙏

    • @SimonUbsdell
      @SimonUbsdell  5 หลายเดือนก่อน +1

      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;

  • @stosman05
    @stosman05 7 ปีที่แล้ว

    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.

    • @SimonUbsdell
      @SimonUbsdell  7 ปีที่แล้ว

      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.

    • @stosman05
      @stosman05 7 ปีที่แล้ว

      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

  • @elevatordailies
    @elevatordailies 6 ปีที่แล้ว

    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?

    • @SimonUbsdell
      @SimonUbsdell  6 ปีที่แล้ว +1

      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.

    • @elevatordailies
      @elevatordailies 6 ปีที่แล้ว

      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.

    • @SimonUbsdell
      @SimonUbsdell  6 ปีที่แล้ว

      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.

    • @elevatordailies
      @elevatordailies 6 ปีที่แล้ว

      Perfect! Thank you so much!

    • @SimonUbsdell
      @SimonUbsdell  6 ปีที่แล้ว

      No problem. Please feel free to email me at any time of you have questions you think I might be able to help with.

  • @Ecceptor
    @Ecceptor 6 ปีที่แล้ว

    is IF THEN expression works in fusion, if so what is the expression?

    • @SimonUbsdell
      @SimonUbsdell  6 ปีที่แล้ว +1

      Yes, it's as simple as this: if(x, y, z) ... in other words if x is true then return y, else return z.

  • @mycg544
    @mycg544 4 ปีที่แล้ว

    Hello, how do I write an expression to have a shift in time movement

    • @SimonUbsdell
      @SimonUbsdell  4 ปีที่แล้ว

      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?

    • @mycg544
      @mycg544 4 ปีที่แล้ว

      @@SimonUbsdell TO DIE ONE AFTER ANOTHER LEFT