Jump to: Board index » General » Fusion

Is there a "Null" Tool for custom user controls in Fusion?

Learn about 3D compositing, animation, broadcast design and VFX workflows.
  • Author
  • Message
Offline

daniel.partzsch

  • Posts: 25
  • Joined: Wed Aug 09, 2017 8:13 am
  • Location: Berlin

Is there a "Null" Tool for custom user controls in Fusion?

PostThu Nov 16, 2017 12:58 pm

Hey,

is there something like a "null" tool in Fusion. Basically I would like to have a blank tool, where I can only add custom user controls which would be used as inputs to be used with expressions on other tools. And how do I delete the controls again? Somehow I can only add and edit already existing user controls but cannot find a delete option for already available controls in the "Edit Control" window.

Thanks in advance!
Offline

Umberto Uderzo

  • Posts: 113
  • Joined: Fri Mar 13, 2015 12:19 am

Re: Is there a "Null" Tool for custom user controls in Fusio

PostThu Nov 16, 2017 2:41 pm

Don't know if it's what you're after, but you can try this one:

1) Add a custom tool
2) Config the tool showing only what you need
3) Name each parameter accordingly with your needs
4) Go to "Controls" and for each control publish it
5) Now you can Connect other parameters to that controls

Code: Select all
{
   Tools = ordered() {
      Background1 = Background {
         CtrlWZoom = false,
         Inputs = {
            Width = Input { Value = 1920, },
            Height = Input { Value = 1080, },
            ["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },
            TopLeftRed = Input {
               SourceOp = "Publish1",
               Source = "Value",
            },
            TopLeftGreen = Input {
               SourceOp = "Publish2",
               Source = "Value",
            },
            TopLeftBlue = Input {
               SourceOp = "Publish3",
               Source = "Value",
            },
         },
         ViewInfo = OperatorInfo { Pos = { 715, 115.5 } },
      },
      Publish1 = PublishNumber {
         Inputs = {
            Value = Input { Value = 0.517, },
         },
      },
      Publish2 = PublishNumber {
         Inputs = {
            Value = Input { Value = 0.219, },
         },
      },
      Publish3 = PublishNumber {
         Inputs = {
            Value = Input { Value = 0.465, },
         },
      },
      CustomTool = Custom {
         CtrlWZoom = false,
         NameSet = true,
         Inputs = {
            NumberIn1 = Input {
               SourceOp = "Publish1",
               Source = "Value",
            },
            NumberIn2 = Input {
               SourceOp = "Publish2",
               Source = "Value",
            },
            NumberIn3 = Input {
               SourceOp = "Publish3",
               Source = "Value",
            },
            LUTIn1 = Input {
               SourceOp = "CustomTool1LUTIn1",
               Source = "Value",
            },
            LUTIn2 = Input {
               SourceOp = "CustomTool1LUTIn2",
               Source = "Value",
            },
            LUTIn3 = Input {
               SourceOp = "CustomTool1LUTIn3",
               Source = "Value",
            },
            LUTIn4 = Input {
               SourceOp = "CustomTool1LUTIn4",
               Source = "Value",
            },
            NameforNumber1 = Input { Value = "Red", },
            NameforNumber2 = Input { Value = "Green", },
            NameforNumber3 = Input { Value = "Blue", },
            ShowNumber4 = Input { Value = 0, },
            ShowNumber5 = Input { Value = 0, },
            ShowNumber6 = Input { Value = 0, },
            ShowNumber7 = Input { Value = 0, },
            ShowNumber8 = Input { Value = 0, },
            ShowPoint1 = Input { Value = 0, },
            ShowPoint2 = Input { Value = 0, },
            ShowPoint3 = Input { Value = 0, },
            ShowPoint4 = Input { Value = 0, },
            ShowLUT1 = Input { Value = 0, },
            ShowLUT2 = Input { Value = 0, },
            ShowLUT3 = Input { Value = 0, },
            ShowLUT4 = Input { Value = 0, },
         },
         ViewInfo = OperatorInfo { Pos = { 550, 115.5 } },
      },
      CustomTool1LUTIn1 = LUTBezier {
         KeyColorSplines = {
            [0] = {
               [0] = { 0, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
               [1] = { 1, LH = { 0.666666666666667, 0.666666666666667 }, Flags = { Linear = true } }
            }
         },
         SplineColor = { Red = 204, Green = 0, Blue = 0 },
         NameSet = true,
      },
      CustomTool1LUTIn2 = LUTBezier {
         KeyColorSplines = {
            [0] = {
               [0] = { 0, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
               [1] = { 1, LH = { 0.666666666666667, 0.666666666666667 }, Flags = { Linear = true } }
            }
         },
         SplineColor = { Red = 0, Green = 204, Blue = 0 },
         NameSet = true,
      },
      CustomTool1LUTIn3 = LUTBezier {
         KeyColorSplines = {
            [0] = {
               [0] = { 0, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
               [1] = { 1, LH = { 0.666666666666667, 0.666666666666667 }, Flags = { Linear = true } }
            }
         },
         SplineColor = { Red = 0, Green = 0, Blue = 204 },
         NameSet = true,
      },
      CustomTool1LUTIn4 = LUTBezier {
         KeyColorSplines = {
            [0] = {
               [0] = { 0, RH = { 0.333333333333333, 0.333333333333333 }, Flags = { Linear = true } },
               [1] = { 1, LH = { 0.666666666666667, 0.666666666666667 }, Flags = { Linear = true } }
            }
         },
         SplineColor = { Red = 204, Green = 204, Blue = 204 },
         NameSet = true,
      }
   }
}
Offline
User avatar

Bryan Ray

  • Posts: 249
  • Joined: Mon Nov 28, 2016 5:32 am

Re: Is there a "Null" Tool for custom user controls in Fusio

PostThu Nov 16, 2017 10:59 pm

No, there's no Null among Fusion's built-in tools, but I have a Fuse:

Can't attach it directly, but save this code to your Fuses folder as Null.Fuse:

Code: Select all
FuRegisterClass("Null", CT_Tool, {
   REGS_Name = "Null",
   REGS_Category = "Fuses",
   REGS_OpIconSTring = "Nul",
   REGS_OpDescription = "Null node.",
   REGS_Company = "Muse VFX",
   REGS_URL = "http://www.musevfx.com",
})

function Create()
   InImage = self:AddInput("Input", "Input", {
      LINKID_DataType = "Image",
      LINK_Main = 1,
      })
   OutImage = self:AddOutput("Output", "Output", {
      LINKID_DataType = "Image",
      LINK_Main = 1,
      })
end

function Process(req)
   local img1 = InImage:GetValue(req) -- Gets the input image
   out = img1
   OutImage:Set(req, out) -- Send the result to the output

end


You can also add User Controls to Groups.

You used to be able to hide existing controls, but for some reason that option went away. If you just want to tuck a control out of sight, you can put it on another tab.
Bryan Ray
http://www.bryanray.name
http://www.musevfx.com
Offline

Sander de Regt

  • Posts: 642
  • Joined: Thu Nov 13, 2014 10:09 pm

Re: Is there a "Null" Tool for custom user controls in Fusio

PostThu Nov 16, 2017 11:07 pm

You used to be able to hide existing controls, but for some reason that option went away. If you just want to tuck a control out of sight, you can put it on another tab.


I think you can still do this, if you turn the tool into a macro after you've added the user controls and then turn off all the stuff you don't want to see.

For now I'd advise against using a group as the placeholder for your controls, since the current version of Fusion doesn't show the keyframes of animated User Controls on group inside the spline editor.
If you add them to 'regular' tools, they *do* show up.
Sander de Regt

ShadowMaker SdR
The Netherlands
Offline

Chad Capeland

  • Posts: 1504
  • Joined: Mon Nov 10, 2014 9:40 pm

Re: Is there a "Null" Tool for custom user controls in Fusio

PostThu Nov 16, 2017 11:58 pm

A piperouter will work.
Chad Capeland
Indicated, LLC
www.floweffects.com
Offline
User avatar

Bryan Ray

  • Posts: 249
  • Joined: Mon Nov 28, 2016 5:32 am

Re: Is there a "Null" Tool for custom user controls in Fusio

PostFri Nov 17, 2017 1:10 am

Chad Capeland wrote:A piperouter will work.


How is that done? The context menu from a pipe router doesn't show the Edit Controls menu, nor the Script menu.
Bryan Ray
http://www.bryanray.name
http://www.musevfx.com
Offline

daniel.partzsch

  • Posts: 25
  • Joined: Wed Aug 09, 2017 8:13 am
  • Location: Berlin

Re: Is there a "Null" Tool for custom user controls in Fusio

PostFri Nov 17, 2017 11:24 am

Bryan Ray wrote:No, there's no Null among Fusion's built-in tools, but I have a Fuse:

Can't attach it directly, but save this code to your Fuses folder as Null.Fuse:

Code: Select all
FuRegisterClass("Null", CT_Tool, {
   REGS_Name = "Null",
   REGS_Category = "Fuses",
   REGS_OpIconSTring = "Nul",
   REGS_OpDescription = "Null node.",
   REGS_Company = "Muse VFX",
   REGS_URL = "http://www.musevfx.com",
})

function Create()
   InImage = self:AddInput("Input", "Input", {
      LINKID_DataType = "Image",
      LINK_Main = 1,
      })
   OutImage = self:AddOutput("Output", "Output", {
      LINKID_DataType = "Image",
      LINK_Main = 1,
      })
end

function Process(req)
   local img1 = InImage:GetValue(req) -- Gets the input image
   out = img1
   OutImage:Set(req, out) -- Send the result to the output

end


You can also add User Controls to Groups.

You used to be able to hide existing controls, but for some reason that option went away. If you just want to tuck a control out of sight, you can put it on another tab.



Hey,

thanks but when I try this, I am getting an error saying: unexpected smybol near '{'

And how does this actually work with Fuses? I've never tried this /used them before.
Offline

Chad Capeland

  • Posts: 1504
  • Joined: Mon Nov 10, 2014 9:40 pm

Re: Is there a "Null" Tool for custom user controls in Fusio

PostFri Nov 17, 2017 4:13 pm

Bryan Ray wrote:
Chad Capeland wrote:A piperouter will work.


How is that done? The context menu from a pipe router doesn't show the Edit Controls menu, nor the Script menu.


Select another tool, add piperouter to selection, get context menu, cancel first dialog box. :mrgreen:
Chad Capeland
Indicated, LLC
www.floweffects.com
Offline
User avatar

Bryan Ray

  • Posts: 249
  • Joined: Mon Nov 28, 2016 5:32 am

Re: Is there a "Null" Tool for custom user controls in Fusio

PostSat Nov 18, 2017 12:27 am

daniel.partzsch wrote:

Hey,

thanks but when I try this, I am getting an error saying: unexpected smybol near '{'

And how does this actually work with Fuses? I've never tried this /used them before.


Hmmm... Did you use a plain text editor to save it? A word processor adds extra hidden characters that can mess with things. In any case, let's try just zipping it. Seems like a waste of time for a 1k file…

Anyway, a Fuse is a custom scripted tool. They can be a little more powerful than macros since they don't rely on existing tools, but they're not as flexible as full plug-ins. On the other hand, they work in the free version of Fusion. All you need to do to use one is to put it in the Fuses folder; it will show up in the Tools menu just like everything else. This one will appear in the Fuses category.

Chad Capeland wrote:
Select another tool, add piperouter to selection, get context menu, cancel first dialog box. :mrgreen:


Ha! I don't think that would ever have occurred to me.
Attachments
Null.zip
(484 Bytes) Downloaded 20 times
Bryan Ray
http://www.bryanray.name
http://www.musevfx.com
Offline

daniel.partzsch

  • Posts: 25
  • Joined: Wed Aug 09, 2017 8:13 am
  • Location: Berlin

Re: Is there a "Null" Tool for custom user controls in Fusio

PostMon Nov 20, 2017 12:11 pm

Bryan Ray wrote:
daniel.partzsch wrote:

Hey,

thanks but when I try this, I am getting an error saying: unexpected smybol near '{'

And how does this actually work with Fuses? I've never tried this /used them before.


Hmmm... Did you use a plain text editor to save it? A word processor adds extra hidden characters that can mess with things. In any case, let's try just zipping it. Seems like a waste of time for a 1k file…

Anyway, a Fuse is a custom scripted tool. They can be a little more powerful than macros since they don't rely on existing tools, but they're not as flexible as full plug-ins. On the other hand, they work in the free version of Fusion. All you need to do to use one is to put it in the Fuses folder; it will show up in the Tools menu just like everything else. This one will appear in the Fuses category.

Chad Capeland wrote:
Select another tool, add piperouter to selection, get context menu, cancel first dialog box. :mrgreen:


Ha! I don't think that would ever have occurred to me.


ok, cool, that worked. Thanks a lot. Thanks a s well for that brief introduction into Fuses. Do you think, with a Fuse you could also set a specific fixed render range before a saver node? I was asking this question here in the forum as well (viewtopic.php?f=22&t=66894), but so far there seem to be no solution for the current version of Fusion...?
Offline
User avatar

Bryan Ray

  • Posts: 249
  • Joined: Mon Nov 28, 2016 5:32 am

Re: Is there a "Null" Tool for custom user controls in Fusio

PostMon Nov 20, 2017 6:55 pm

That wouldn't be a job for a Fuse. It's possible it could be done, but it would be pretty hacky. A better way would be an InTool Start Render Script. Click the little gear icon in any tool to access an area where InTool scripts can be placed. It will take some cleverness to manage multiple Savers all trying to modify the render range at once. Maybe you could set up a master control Saver with a Frame Render Script that turns other Savers on or off at designated times. The other Savers could have User Controls that designate their ranges, maybe.

Okay, I'm getting a little deeper into that than I have time for at the moment!

Fusion's paradigm is that the render environment is controlled at the composition level rather than at the output level.
Bryan Ray
http://www.bryanray.name
http://www.musevfx.com

Return to Fusion

Who is online

Users browsing this forum: Google Feedfetcher and 3 guests