Page 1 of 1

Breaking out of a mask shape

PostPosted: Sat Apr 26, 2025 5:32 pm
by Twinklybird
Dear DaVinci People,
I would like to have a circular mask on an image of microscopic cells. Seems like I can easily do this in the Color page, the Fusion page, or even with a transform effect. However, I would then like to have the image of cells gradually expand from this mask, like a growing virus. I can't seem to find a way to do this. Zooming in of course only makes the circle bigger. Keyframing the softness does pretty much the same thing.
I'd like to create the effect of the cells breaking the circle-boundaries unevenly (moving outwards from the center), like a liquid that is being spilled. Any tips on how to achieve this?
Or how to even find tutorials on this?
Any and all help would be much appreciated.
Thanks!

Re: Breaking out of a mask shape

PostPosted: Mon Apr 28, 2025 3:33 pm
by Jim Simon
The only idea that comes to mind is the tedious task of manually keyframing a Polygon mask over the duration of the clip, much like Rotoscope work of old.

Re: Breaking out of a mask shape

PostPosted: Mon Apr 28, 2025 4:26 pm
by KrunoSmithy
Not sure if this is what you are looking for, but you could use fast noise to generate random pattern, and combine it with circular mask, and bit of adding and sub-tracking masks, and you can than get something like this.

fusionrocks.gif
fusionrocks.gif (247.97 KiB) Viewed 1221 times


sshot-1219.jpg
sshot-1219.jpg (172.47 KiB) Viewed 1221 times


sshot-1220.jpg
sshot-1220.jpg (72.01 KiB) Viewed 1221 times


Copy this code to your clipboard, and paste it in the empty space of the fusion node flow. Node scan be carried over as text. You will need to replace my image with your own but mask should work same as on my end. You can than adjust speed, shape etc.

Code: Select all
{
   Tools = ordered() {
      Background4 = Background {
         Inputs = {
            GlobalOut = Input { Value = 120, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            Depth = Input { Value = 1, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            Type = Input { Value = FuID { "Gradient" }, },
            GradientType = Input { Value = FuID { "Radial" }, },
            Start = Input { Value = { 0.5, 0.5 }, },
            Gradient = Input {
               Value = Gradient {
                  Colors = {
                     [0] = { 0.333333333333333, 0, 0, 1 },
                     [1] = { 0, 0, 0, 1 }
                  }
               },
            }
         },
         ViewInfo = OperatorInfo { Pos = { -58.1009, 147.837 } },
      },
      Loader1 = Loader {
         Clips = {
            Clip {
               ID = "Clip1",
               Filename = "E:\\Green Screen\\--- images\\pexels-turek3024-10448365.jpg",
               FormatID = "JpegFormat",
               StartFrame = 10448365,
               LengthSetManually = true,
               TrimIn = 0,
               TrimOut = 0,
               ExtendFirst = 0,
               ExtendLast = 0,
               Loop = 0,
               AspectMode = 0,
               Depth = 0,
               TimeCode = 0,
               GlobalStart = 0,
               GlobalEnd = 0
            }
         },
         HoldOutput = true,
         CtrlWZoom = false,
         Inputs = {
            ["Clip1.PNGFormat.PostMultiply"] = Input {
               Value = Number {
                  Value = 1
               },
            }
         },
         ViewInfo = OperatorInfo { Pos = { -63.2352, 58.4702 } },
         UserControls = ordered() {
            MakeLocal = {
               INP_Default = 0,
               INPID_InputControl = "ButtonControl",
               BTNCS_Execute = "                  args = { tool = comp.ActiveTool, copyTree = true }\n                  path = comp:MapPath(\"Scripts:support/Loader_MakeLocal.lua\")\n                  comp:RunScript(path, args)\n               ",
               IC_ControlPage = 0,
               LINKID_DataType = "Number",
               LINKS_Name = "Make Local",
            }
         }
      },
      Letterbox1 = Letterbox {
         Inputs = {
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            HiQOnly = Input { Value = 0, },
            Input = Input {
               SourceOp = "Loader1",
               Source = "Output",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 154.726, 58.4702 } },
      },
      Instance_Ellipse1 = EllipseMask {
         SourceOp = "Ellipse1",
         Inputs = {
            SettingsNest = Input {
            },
            LayersNest = Input {
            },
            SoftEdge = Input {
               Value = 0.0913,
            },
            Invert = Input {
            },
            Height = Input { Expression = "Width", },
            CommentsNest = Input {
            },
            FrameRenderScriptNest = Input {
            },
            StartRenderScripts = Input {
            },
            EndRenderScripts = Input {
            },
            EffectMask = Input {
            }
         },
         ViewInfo = OperatorInfo { Pos = { -81.8052, -93.0801 } },
      },
      Ellipse1Width = BezierSpline {
         SplineColor = { Red = 225, Green = 255, Blue = 0 },
         CtrlWZoom = false,
         NameSet = true,
         KeyFrames = {
            [0] = { 0.3, RH = { 40, 0.3 } },
            [120] = { 1.228, LH = { 80, 1.228 } }
         }
      },
      FastNoise1 = FastNoise {
         Inputs = {
            GlobalOut = Input { Value = 120, },
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            Detail = Input { Value = 2.13, },
            Contrast = Input { Value = 20, },
            Brightness = Input { Value = -1, },
            XScale = Input { Value = 11.81, },
            Inverted = Input { Value = 1, }
         },
         ViewInfo = OperatorInfo { Pos = { 770.017, -179.282 } },
      },
      Ellipse1 = EllipseMask {
         Inputs = {
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            SoftEdge = Input { Value = 0.0961, },
            Invert = Input { Value = 1, },
            MaskWidth = Input { Value = 1920, },
            MaskHeight = Input { Value = 1080, },
            PixelAspect = Input { Value = { 1, 1 }, },
            ClippingMode = Input { Value = FuID { "None" }, },
            Width = Input {
               SourceOp = "Ellipse1Width",
               Source = "Value",
            },
            Height = Input {
               Value = 1.228,
               Expression = "Width",
            }
         },
         ViewInfo = OperatorInfo { Pos = { -85.7525, -179.282 } },
      },
      MatteControl2_1 = MatteControl {
         Inputs = {
            ProcessRed = Input { Value = 0, },
            ProcessGreen = Input { Value = 0, },
            ProcessBlue = Input { Value = 0, },
            ApplyMaskInverted = Input { Value = 1, },
            MultiplyByMask = Input { Value = 1, },
            MatteCombine = Input { Value = 4, },
            CombineOp = Input { Value = 3, },
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            InvertMatte = Input { Value = 1, },
            EffectMask = Input {
               SourceOp = "Ellipse1",
               Source = "Mask",
            },
            PostMultiplyImage = Input { Value = 1, },
            Background = Input {
               SourceOp = "FastNoise1",
               Source = "Output",
            },
            Foreground = Input {
               SourceOp = "Ellipse1",
               Source = "Mask",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 507.274, -179.282 } },
      },
      MatteControl2 = MatteControl {
         Inputs = {
            MatteCombine = Input { Value = 4, },
            CombineOp = Input { Value = 7, },
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            PostMultiplyImage = Input { Value = 1, },
            Background = Input {
               SourceOp = "Instance_Ellipse1",
               Source = "Mask",
            },
            Foreground = Input {
               SourceOp = "MatteControl2_1",
               Source = "Output",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 507.274, -93.0801 } },
      },
      BrightnessContrast1 = BrightnessContrast {
         Inputs = {
            Alpha = Input { Value = 1, },
            Contrast = Input { Value = 1, },
            Low = Input { Value = 0.406, },
            High = Input { Value = 0.489, },
            ClipBlack = Input { Value = 1, },
            PreDividePostMultiply = Input { Value = 1, },
            Input = Input {
               SourceOp = "MatteControl2",
               Source = "Output",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 532.906, 147.837 } },
      },
      Merge1 = Merge {
         Inputs = {
            Background = Input {
               SourceOp = "Background4",
               Source = "Output",
            },
            Foreground = Input {
               SourceOp = "Letterbox1",
               Source = "Output",
            },
            PerformDepthMerge = Input { Value = 0, },
            EffectMask = Input {
               SourceOp = "BrightnessContrast1",
               Source = "Output",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 154.726, 147.837 } },
      }
   }
}


..........................

If you want something more realistic or more fancy, you can use particle system in fusion to build little the "scene" and than you would have more believable and fancy version of this.

Re: Breaking out of a mask shape

PostPosted: Mon Apr 28, 2025 5:15 pm
by Jim Simon
Oh, that's much easier. :)

Re: Breaking out of a mask shape

PostPosted: Mon Apr 28, 2025 8:16 pm
by Twinklybird
Oh my god, KrunoSmithy, that's exactly what I was looking for!!
This is amazing. Thank you! I'm such a Fusion noob, I honestly can't figure that stuff out.

I've copy pasted the code into the node space.
I can't seem to get it to do what it did for you though...
Maybe because I can't replace the letterbox with media?
I've dragged my media into the node space and reconnected it to the letterbox, but I'm not sure what the letterbox is linking to and how I could replace that one?

Image

I'm doing something wrong here, but can't see it.
Very very excited about trying this though, if I can get it to do what it did for you, it's gonna be a lifesaver.
Thanks so much!

(I swear this reminds me of old internet days when there was just forums and people helping each other out. It's a bit faith-restoring. Thank you.)

Re: Breaking out of a mask shape

PostPosted: Mon Apr 28, 2025 11:11 pm
by KrunoSmithy
Twinklybird wrote:Oh my god, KrunoSmithy, that's exactly what I was looking for!!
This is amazing. Thank you! I'm such a Fusion noob, I honestly can't figure that stuff out.

(I swear this reminds me of old internet days when there was just forums and people helping each other out. It's a bit faith-restoring. Thank you.)


No problem. Glad to help.

Twinklybird wrote: I've copy pasted the code into the node space.
I can't seem to get it to do what it did for you though...
Maybe because I can't replace the letterbox with media?

I've dragged my media into the node space and reconnected it to the letterbox, but I'm not sure what the letterbox is linking to and how I could replace that one?


Looking at the image you posted, everything is connected correctly it seems, but you have strange frame numbers in two thousand and something etc. I've used 0 frame to 120 for keyframing the elipse mask expanding.

Probably you are not seeing anything because of the difference in frame. I assume you would start from frame zero.

If that indeed is the only problem, you can do several things.

You can either apply the effect in the composition starting from frame 0 and having more than 120 frames long. For example 250 frames should be enough.

Or you can move the keyframes I've animated in the keyframe editor. or you can do a simple elipse1 animation of the mask expanding in width. I've linked width and height paramterars so they expand at the same time. Elipse2 is an instance of elipse1. Essentially a clone. so if you animate first one the second should also work.

Try that and see if its working.

It should be otherwise pretty straighforward as you have connected it.

As for letterbox. Its just there because originally I used image that is too large for the canvas and of wrong aspect ratio, so letterbox tool is just resizing it to 1080p and than I could choose mode operation in the letterbox tool.

Mode

This control is used to determine the Letterbox node’s mode of operation.

- Letterbox/Envelope: This corrects the aspect of the input image and resizes it to match the specified width.

- Pan-and-Scan: This corrects the aspect of the input image and resizes it to match the specified height. If the resized input image is wider than the specified width, the Center control can be used to animate the visible portion of the resized input.

Use the Letterbox node to adapt existing images to the frame size and aspect ratios of any other format. The most common use of this node is to convert film resolution images to HD-sized frames for viewing on an external television monitor. Horizontal or vertical black edges are automatically added where necessary to compensate for aspect ratio differences. This node actually changes the resolution of the image.

If your input image is already sized correctly to match the working canvas size, in my case 1080p than you can connect your image directly to merge1 and ignore letterbox. otherwise its a useful tool if you have images of differnt aspect ratios.

As you can see, any image of video I give it should easily work. Its just mask expanding. But to make sure all is working, start from frame zero, or alternatively move or re-do elipse1 keyframes. That is the only thing animated.

sshot-1221.jpg
sshot-1221.jpg (205.03 KiB) Viewed 1119 times


sshot-1222.jpg
sshot-1222.jpg (246.92 KiB) Viewed 1119 times


sshot-1223.jpg
sshot-1223.jpg (206.49 KiB) Viewed 1119 times

Re: Breaking out of a mask shape

PostPosted: Tue Apr 29, 2025 1:21 am
by Sean Nelson
Jim Simon wrote:Oh, that's much easier. :)

Given how many lines of code @KrunoSmithy posted, I can't tell if you're being sarcastic or not... :shock:

Nice job, though, @KrunoSmithy!

Re: Breaking out of a mask shape

PostPosted: Tue Apr 29, 2025 6:45 am
by Sander de Regt
Those aren't lines of code. These are just the nodes from the Fusion comp copy/pasted in here.
Still a lot of work, but no coder was harmed during the making of this reply.

Re: Breaking out of a mask shape

PostPosted: Tue Apr 29, 2025 7:38 am
by Sean Nelson
Sander de Regt wrote:Those aren't lines of code. These are just the nodes from the Fusion comp copy/pasted in here.

Huh, you learn something new every day. So many depths in Fusion that I have yet to plumb.

Re: Breaking out of a mask shape

PostPosted: Tue Apr 29, 2025 9:35 am
by Twinklybird
You can either apply the effect in the composition starting from frame 0 and having more than 120 frames long. For example 250 frames should be enough.


I've tried different things. Tried it with the footage I have, new timeline, starting everything from 0.
Tried it with a png.

May I show you my steps? I'm doing something stupidly wrong but I don't see it.
I've tried moving the keyframes, but it doesn't do anything.

with footage:
https://drive.google.com/file/d/1tQKR1N39LtbmwSVe814F9n34hviLPaq8/view?usp=drive_link

with png:
[url]https://drive.google.com/file/d/1i8QqEyxaJ6hrvYHH1igzwdfn9Zi3uSW8/view?usp=drive_link
[/url]

Sorry I'm so slow with this.

Re: Breaking out of a mask shape

PostPosted: Tue Apr 29, 2025 2:32 pm
by Parasolka
The problem is the size of the composition and the size of Timeline. You have a timeline of 3840x2160, and the composition created by KrunoSmithy is 1920x1080. You should set 3840x2160 in the Background4, Fastnoise1, Eclips1 and Letterbox nodes in the Image tab.

Re: Breaking out of a mask shape

PostPosted: Tue Apr 29, 2025 2:57 pm
by Twinklybird
Oh wow, that's looking so much more like it!! Thank you!
Have applied the 4K settings to all those nodes.
And now I see this:
https://drive.google.com/file/d/1PJQTK7c1XL1M7Pc-UZH-_Zo6vum8XTkd/view?usp=drive_link

If I can just get the mask to actually expand/move, I'm there...
Feels like just one tiny step removed now...

Re: Breaking out of a mask shape

PostPosted: Tue Apr 29, 2025 3:11 pm
by KrunoSmithy
Ok, I see now that you are using differnt resolution. I was originally just doing it as a method on how to go about it, not really making it dynamically changing in resolution. But if you have some skills in fusion its, an easy adjustment. I just didn't know will you be using what I made as inspiration or doing something yourself.

Here is adjusted version of it, for your resolution. While I could make it dynamic, its easier to change resolution in few generator nodes.

Try this for UltraHD or 3840x2160 timeline.

Nor sure what the dimensions of your footage or clip is, but you can use letterbox or any other resizing tool to make it fit.

Code: Select all
{
   Tools = ordered() {
      Background4 = Background {
         Inputs = {
            GlobalOut = Input { Value = 124, },
            Width = Input { Value = 3840, },
            Height = Input { Value = 2160, },
            UseFrameFormatSettings = Input { Value = 1, },
            Depth = Input { Value = 1, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            Type = Input { Value = FuID { "Gradient" }, },
            GradientType = Input { Value = FuID { "Radial" }, },
            Start = Input { Value = { 0.5, 0.5 }, },
            Gradient = Input {
               Value = Gradient {
                  Colors = {
                     [0] = { 0.333333333333333, 0, 0, 1 },
                     [1] = { 0, 0, 0, 1 }
                  }
               },
            }
         },
         ViewInfo = OperatorInfo { Pos = { 334.319, 51.8712 } },
      },
      Loader1 = Loader {
         Clips = {
            Clip {
               ID = "Clip1",
               Filename = "E:\\Green Screen\\--- images\\pexels-turek3024-10448365.jpg",
               FormatID = "JpegFormat",
               StartFrame = 10448365,
               LengthSetManually = true,
               TrimIn = 0,
               TrimOut = 0,
               ExtendFirst = 0,
               ExtendLast = 0,
               Loop = 0,
               AspectMode = 0,
               Depth = 0,
               TimeCode = 0,
               GlobalStart = 0,
               GlobalEnd = 0
            }
         },
         HoldOutput = true,
         Inputs = {
            ["Clip1.PNGFormat.PostMultiply"] = Input {
               Value = Number {
                  Value = 1
               },
            }
         },
         ViewInfo = OperatorInfo { Pos = { 329.184, -37.4956 } },
         UserControls = ordered() {
            MakeLocal = {
               LINKS_Name = "Make Local",
               INPID_InputControl = "ButtonControl",
               BTNCS_Execute = "                  args = { tool = comp.ActiveTool, copyTree = true }\n                  path = comp:MapPath(\"Scripts:support/Loader_MakeLocal.lua\")\n                  comp:RunScript(path, args)\n               ",
               IC_ControlPage = 0,
               LINKID_DataType = "Number",
               INP_Default = 0,
            }
         }
      },
      Letterbox1 = Letterbox {
         CtrlWZoom = false,
         Inputs = {
            Width = Input { Value = 3840, },
            Height = Input { Value = 2160, },
            UseFrameFormatSettings = Input { Value = 1, },
            HiQOnly = Input { Value = 0, },
            Input = Input {
               SourceOp = "Loader1",
               Source = "Output",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 547.146, -37.4956 } },
      },
      Instance_Ellipse1 = EllipseMask {
         SourceOp = "Ellipse1",
         Inputs = {
            EffectMask = Input {
            },
            SettingsNest = Input {
            },
            LayersNest = Input {
            },
            SoftEdge = Input {
               Value = 0.0913,
            },
            Invert = Input {
            },
            Height = Input {
               Value = 0.303024592592593,
               Expression = "Width"
            },
            CommentsNest = Input {
            },
            FrameRenderScriptNest = Input {
            },
            StartRenderScripts = Input {
            },
            EndRenderScripts = Input {
            }
         },
         ViewInfo = OperatorInfo { Pos = { 310.614, -189.046 } },
      },
      Ellipse1Width = BezierSpline {
         SplineColor = { Red = 225, Green = 255, Blue = 0 },
         CtrlWZoom = false,
         KeyFrames = {
            [0] = { 0.3, RH = { 40, 0.3 } },
            [120] = { 1.228, LH = { 80, 1.228 } }
         }
      },
      FastNoise1 = FastNoise {
         Inputs = {
            GlobalOut = Input { Value = 124, },
            Width = Input { Value = 3840, },
            Height = Input { Value = 2160, },
            UseFrameFormatSettings = Input { Value = 1, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            Detail = Input { Value = 2.13, },
            Contrast = Input { Value = 20, },
            Brightness = Input { Value = -1, },
            XScale = Input { Value = 11.81, },
            Inverted = Input { Value = 1, }
         },
         ViewInfo = OperatorInfo { Pos = { 1162.44, -275.248 } },
      },
      Ellipse1 = EllipseMask {
         Inputs = {
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            SoftEdge = Input { Value = 0.0961, },
            Invert = Input { Value = 1, },
            OutputSize = Input { Value = FuID { "Custom" }, },
            MaskWidth = Input { Value = 3840, },
            MaskHeight = Input { Value = 2160, },
            PixelAspect = Input { Value = { 1, 1 }, },
            UseFrameFormatSettings = Input { Value = 1, },
            ClippingMode = Input { Value = FuID { "None" }, },
            Width = Input {
               SourceOp = "Ellipse1Width",
               Source = "Value",
            },
            Height = Input {
               Value = 0.303024592592593,
               Expression = "Width",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 306.667, -275.248 } },
      },
      MatteControl2_1 = MatteControl {
         Inputs = {
            EffectMask = Input {
               SourceOp = "Ellipse1",
               Source = "Mask",
            },
            ProcessRed = Input { Value = 0, },
            ProcessGreen = Input { Value = 0, },
            ProcessBlue = Input { Value = 0, },
            ApplyMaskInverted = Input { Value = 1, },
            MultiplyByMask = Input { Value = 1, },
            MatteCombine = Input { Value = 4, },
            CombineOp = Input { Value = 3, },
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            InvertMatte = Input { Value = 1, },
            PostMultiplyImage = Input { Value = 1, },
            Background = Input {
               SourceOp = "FastNoise1",
               Source = "Output",
            },
            Foreground = Input {
               SourceOp = "Ellipse1",
               Source = "Mask",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 899.694, -275.248 } },
      },
      MatteControl2 = MatteControl {
         Inputs = {
            MatteCombine = Input { Value = 4, },
            CombineOp = Input { Value = 7, },
            Filter = Input { Value = FuID { "Fast Gaussian" }, },
            PostMultiplyImage = Input { Value = 1, },
            Background = Input {
               SourceOp = "Instance_Ellipse1",
               Source = "Mask",
            },
            Foreground = Input {
               SourceOp = "MatteControl2_1",
               Source = "Output",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 899.694, -189.046 } },
      },
      BrightnessContrast1 = BrightnessContrast {
         Inputs = {
            Alpha = Input { Value = 1, },
            Contrast = Input { Value = 1, },
            Low = Input { Value = 0.406, },
            High = Input { Value = 0.489, },
            ClipBlack = Input { Value = 1, },
            PreDividePostMultiply = Input { Value = 1, },
            Input = Input {
               SourceOp = "MatteControl2",
               Source = "Output",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 925.326, 51.8712 } },
      },
      Merge1 = Merge {
         Inputs = {
            EffectMask = Input {
               SourceOp = "BrightnessContrast1",
               Source = "Output",
            },
            Background = Input {
               SourceOp = "Background4",
               Source = "Output",
            },
            Foreground = Input {
               SourceOp = "Letterbox1",
               Source = "Output",
            },
            PerformDepthMerge = Input { Value = 0, }
         },
         ViewInfo = OperatorInfo { Pos = { 547.146, 51.8712 } },
      },
      MediaOut1 = MediaOut {
         Inputs = {
            Index = Input { Value = "0", },
            Input = Input {
               SourceOp = "Merge1",
               Source = "Output",
            }
         },
         ViewInfo = OperatorInfo { Pos = { 547.146, 133.899 } },
      }
   }
}

Re: Breaking out of a mask shape

PostPosted: Tue Apr 29, 2025 3:20 pm
by Twinklybird
What you made is exactly what I was trying to do, only I spent days messing it up :)
So I tried copying node code exactly, because I just need it to expand like this for 30 seconds from a small circle to full 4K vertical resolution. (We're projecting it onto the side of a building)

The resolutions seem perfect now, only thing is that the mask is still and doesn't expand/move.
So so so close.

Re: Breaking out of a mask shape

PostPosted: Tue Apr 29, 2025 3:24 pm
by KrunoSmithy
Twinklybird wrote:The resolutions seem perfect now, only thing is that the mask is still and doesn't expand/move. So so so close.


That seems strange. Going back to your frames. Can you preview the individual nodes in fusion viewer? Either pressing 1,2 buttons or drag and drop them to viewer. You should see mask expanding from I think frame 0 to frame 120 if I recall correctly. I'm not at resolve at the moment. But in your video I think I saw that you are at some pretty large frame number. Go to frame zero in the viewer and preview it in the viewer.

Re: Breaking out of a mask shape

PostPosted: Tue Apr 29, 2025 10:52 pm
by Twinklybird
Oh man, so silly of me. I was using the second part of a long clip (source footage). I tried out different things, and finally exported the part I needed as both .mov and .png, making it start from 0 and it works absolutely perfectly!

This is great. I'm so so thankful for all of your help.

Am trying to see how I can slow down the animation a bit, making it occur over 30 seconds (double as long).
I've extended the png on the edit page and have tried to stretch all the nodes (I've also adjusted the background node a bit as you'll see, less glow).
Can't seem to add any keyframes that help slow down the animation, the arch/mask expansion keeps its peak around 300 frames, no matter how far I drag the end keyframe.
When I try to add a keyframe, I can't really change its position much without it pausing the expansion altogether.

Curious to see if it's possible, if not there's definitely a workaround, I could always export this one and just time stretch it.

https://drive.google.com/file/d/1Fglb3-yBWiv2gTydNxlAQl44jYjyJ3eC/view?usp=drive_link

Re: Breaking out of a mask shape

PostPosted: Wed Apr 30, 2025 4:34 pm
by Parasolka
Hello. You have three keyframes. The third is not needed. To slow down the animation, remove the third key and move the second one 750 frames (30 sec). To delete a keyframe, select it and click the backspace. And one more thing... In the keyframe editor, you need to move Mattcontrol seven frames to the left, because the animation will start just without the Fastnoise effect.

Re: Breaking out of a mask shape

PostPosted: Wed Apr 30, 2025 7:37 pm
by Parasolka
My mistake... I apologise. This is Mattecontrol2_1. It's going to be like this.