HISE Logo Forum
    • Categories
    • Register
    • Login

    How do i display a scriptnode modulation on my UI via Slider/Knob

    Scheduled Pinned Locked Moved Solved ScriptNode
    14 Posts 2 Posters 899 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • StraticahS
      Straticah
      last edited by Straticah

      Hey there i am currently exploring scriptnodes modulator capabilities for the first time and wanted to ask if there is a way to get a scriptnode modulation visualized as a dial on my UI.

      The sliderpack works well but i would prefer a dial for customization purposes.

      HiseSnippet 1349.3ocuXszbiTCDViiUdXxtrgZKJN5CbHaQvkcHaHTb.mmfqEmL0ZuoxdJkxLxwBOizTyHmXCEUwQ9YwOI9G.cOZdl37xKKNWrTqt0W28W2sbrCUN7nHUHwZk9SC3DqUo8lJ0C2eHSHIcNfXQoS1ZaxdSCXQQbWhk0B+HJxZkpj3O+8OrGyiIc34aQHmpDN7eV3Kz46Z29MBOuiXt79B+Bmdq1cbTx8Udpw.LVf1jDvbFwtjeLCOVEJwZwCcEZUXOMSyiHVU2S4Ns2P00Ry4OUDItviiKZQ5AFxr8QJOWDw3tj8GJ7bsSc2HBXE6bmeAiy+RZWgqHa+7fvKhETOWihwCqJkg2BkfWqhvqYA3MCHYU.RUMPZMZOmPQfNWBhmOg1Qp4gCXPXuHTLmkX8Wz8UvAj5F9rQ7iBgEYJr9qa1bi5a1r4q99AikNZgRVWIOVo4mHW+U09sZqT62qU+lhFLXlxvqIT44wCmoXLSGdeJttbr+E7vMpeEyaLO6ff6WNlRu6XZwTtiwqKbPkriTnOIfKuKh.IITAw+JInBNpNN5+7jneOOgKOjHff7Rz2HUWzhDC3hbdRlxUMJ+YkT1FH0wF3Yz7MxLC0BsfKSyHVeJcmFMrGc1W0H9Cg7tNGfBfDbBTA3GvC0BLxXc.+JnXyvVVgd.OZjVED6K9AJI5XVK+fdyjLO4OFzdZta8ksiz7fdhekWrh2mkedxlsCRilc.KtLsqxs9QmAUwgPALP55DeO84.bvfTFpV5IDlJbeuuH9d+cb4WKb0Cwv5FPfcHWb4PMtxMtQzsJxdAp1XOltbMO1nKQ.PZKUngUSxHgdZwvx+YMBdrPbMpsP6Lb1XrxLvHxw+Hfwj1mOid3fAbGcN.qRgbwG+dkTy8WKgIA2Id4Yjgh.33w947JrwhUEvWR6a9mz7dTAgbfBy6qr8XSWOh4G3weKf5MpegmxYDVSb6FaIrw8vSrtyPlTx8hlm9eK9niSst+zzaUi0B4kcY5PATEQw..Lo0gueB5RiAIqal1LpGW5Fu3efOIBagqsRD1JUXdGTxwb80pvQwInjuCE5lrgux87ASH654otFaCHR3rFGhGFEuXIZyFveliYq7lFLTIENXtynTJv20WMVpSQ+Owh5yDdHuu23Hncu6IxdvgieXBx6NV4BeawiXNPXcpMCaOrFEGX.jUdXCmLRaFRy4MwrQH5am1SKxfZznoubwD0.L5G2cCe2xBnbLVjb6Tz70PyatsRf4kE.S1IJCgG60YU35Vk5fjwyAfGPtk2GxaTP7S51pl21oOK7RtNJYBkj6XxqwdM1V94T7Icad90gBH1QrKNYXY5oH0ukYzfGeR5rtCDQAPk2digdJlJ9R6.q6Hc4SvlLeMncgTC.2rUv26JjmlLkE4VjtrIIqWj1ZGXidYi3nzVvZLrkNv5zxi4+h1j6xzstoo29NL8pzti8zh.OAXiL02BjRdbv1XpYY5mQ200supm3RIyiTR8OXauJ8cAvCT3cQtUoS+nM8l2goqAOmEXlhq32Dy4OzobFtjj3YA3JXRWECT6DcJJ0IOJ.cIJTUbCFYo5hOOtPDZN2nzYdZEG2fLWblSokHhMzXiUNDFG3B+rkCxeJ3ubVv2k9TvRr7JEh6UenTpoyVRs1ti0JeHWF+NAxbZlMuuj0LZN7gm.2SoF4yhGuLWOJ9+kgg9LmP04ITHz4VNdGf1Hi+AsqP6hqqOieBgO7iLO2worotkhaNuJ9MyqhaMuJ954UwsmWE+14UwcdXEw+G.IUN37MfjaenoN05PICdNV7KLI+KX.CrxC
      

      Since a dial can be easily customized with laf or filmstrips i think this might be the best way, any ideas? :)

      StraticahS Christoph HartC 2 Replies Last reply Reply Quote 0
      • StraticahS
        Straticah @Christoph Hart
        last edited by Straticah

        @Christoph-Hart

        i just got it to work!

        The problem was that i compiled my scriptnode as dll.

        Also, saving the node will make it impossible to build the vst without manually compiling.

        So dont save Scriptnodes that contain global cables.

        Dont use Hardcoded MasterFX on nodes that use global cables :)

        1 Reply Last reply Reply Quote 0
        • StraticahS
          Straticah @Straticah
          last edited by

          I had the clocked ramp in my first example, this one moves without pressing play

          HiseSnippet 1352.3ocuW0raabCDlqsnisyOMoHnm0gdvAHPPx0IME8PT7esBI1YQVWijSFz6RYwpcIWvkJ1pEEnGKPOzy4VeM5s7.zGlBzGf1Y39G2HamD0lHewjblgeyLeyLb80pPdVlRS7V4foobh20nASklQaMhIjjAaS7nzy139jMmlxxx3QDOuE+F7HuUZQr+9qGtIKlIC40aQHGpDg7mHRDl5c86+XQb7trH9AhDGo2n+fPkbKUrZB.iEocIorvwrS36yPwVfR7VZmHgQoCLLCOi30ZSUzzfQpSk4xenHSbbLGWziD.FJe6cUwQHhwcIaMRDG4W5tYDvJ90N+h4N+so6IhDU6WGDto8f10Z3FO7VnI7VrA754ButNv6bfjmCjZkCoaQCB0hTS8IHdtJcfzv0CYPX2EJ4xR7dMcKEHfzzIgMluqFVTovZ2qa261d8tcuyWObhLzHTx1J49JC+ox0typ+3pqr5OsZ627ngCO2yvqQqhi45y8XLSquLEWSNI4Xt9tseIKdBuRPv8aFSoWbL0MkGl60NBpjCjBySS4xKhHPJBUP7egBTAhZrQ+aTD8ChEQbMQ.A4qPerTcbOhEvtbdRkxsxU9SanrOPpsF35z5MpLC0CsPDyvHdeB8Ac1YhP8Ucr+Hjuav13APBt.p.7S4Zi.iLdayeITrkyVVgtMOarQkZ8kjTkDcLukeqdyYUdxOOr+zZ25y6mY3oAhef6Vwmvpkmrd+zxn4.vhKS2SE0d2mCUwZn.FHcCr2yAb.NXPpBUW48HL4beuvEeu3Bt7SEQlQUh8Zc+QbwIiLtJRlsX6ln5ShYll09XCuhC.xaiBNrpRlILScCO+u0P3cEh2h5KLgiNeLtv4fQjq+A.iEsQuNcmgC4glZ.1hB4jO78Lo42+pELJ3NwKuhT3Bf8mjTyuvFLdK.9RY+yegV2qJUyApL+.keLa5ZYrjzX9y.Te21GGqBGi0Fy1fqfUtIJwZgiXRIONad5Ctz6bbp2kmldlZhQHOYOlQKfpIJF.fItg7sJPWYLnXc2xlRAbYjcw+.+JNrGt1q3vdkGV2IkrO2bpRO1lfJ9enfOOajnhNZ3YjGEGqNEaGHJ3r4NDWmYWbEZ2Nve4h4qhmlNRIEgXtKWoRf+nD0DrcRN5+VV1ALQLx6CljAs8idpL.D19.Ej2suJB9uk1kEBg0o9LrMwsn3fCfrx0cBqHsUHsl2XYiPz2ur2VVNpQiV9Bl7nFfwDaWN78KKhmiwhhamhleUz742VCvbaGvTIQSH7tdcdNW2RT.xoMupqBWkl2wdPihiK29sbl+PH0ccNfoOgaxJFTI4g4oUqSicmuAEeY25GcpV.gNhu6.hkoGhL+d4SHh4mUNxaaQVJT3s4DnkRdAeicHX+sH9YkbvcfxnH3YeV0K4kNoKH5TsBBJ6IjG5LH+2e0q9iGtG6rCaLbu+u0On4TPqbAi4mlGNca9iw5qQ84ZgJx9PWGa82KQ9yesO4R.f82L..LavLigghuKD.Wk9DkJEZZnMjYL+Gg6eIXlogSlwJMxDDWZjsONtZJlQswvAYGhmFxhKMDTg6vneC5TCl8mYKhfFqcZHy6UYTq2fI5NunwRWNHZklbP74bc99mmV8btFrwEbRFspSFTr6mShfR6Aqy6JUTn7nIFUBDksy3IyoYVmzPRxaqx9+dBbSkZbByNZXtdX6GkAYIrPs5nBJD5bKa2AnMR6GktBcObc6y4y.RfOT7nvvllZFEWedU7KlWE2XdU7dyqh2edU7KmWEevaWQ763KpbvgS.I2em75TucjL3oT1Afj+EDX.dZB
          
          1 Reply Last reply Reply Quote 0
          • Christoph HartC
            Christoph Hart @Straticah
            last edited by

            Use the a global cable that's precisely what they are made for:

            HiseSnippet 1507.3ocuX0sSabDEdVfgDbIoIUQQ8xUQ8BGIpqcBgFonp.XfDqTSrhcPMWQG1cr8HlclUyNFvsJR8x9rzK6SPunpOO8MH8blcs2cASB0oola7Lmelu4LemeLcL5.dRh1P7Vo23XNwaUZ2wJ6vlCYBEo0NDOJ8r02fr83XVRBOj34s3yPQdqrDw84ue51LISEvy2hPNPKB3euHRXy2syluPHk6wB48DQEzd8MaEnUM0R8H.FKRqShYAGyFv2mgps.k3s7tgBq1z0xr7Dh2RaqCG2cn9TUp9GHRDGI43hFjtfiR2dOsLDQLtKo4PgLryjqaBA7Rm7K+hoW96PaKBES2OOHbKm.+bKJFO7VnL7VrD7ZTDd0K.uY.IuBPZoTHcaZ2.iH1lKAwymQaorbSeFD1KBkTcIK7WdzlZPCksVD6X9dFXwTKp9n50Wy+A0qe+mToBD5Sr9mvL9Ch7+N+cUCDJdsAb6yj5iXxWoGYEpAsYJ3AwTErH2fHc3gf33QVvvAQnQMYvEs58xkbuRV7Bk9nFfxSvFZgNJVqfEUumSJZPkb6qY3CDI.vaxjxi.dQ09iTAVgVU8DlbD+9U94Jq3LrVB2d.tUlfm3+Meiu13e5P3U4DtoVsZUd6Z9akLVEru1J5KBXnefyahK80JPB+kppN2V4sU7Oun98moL7BYzRIFhlgXjvadeFVUMJ5HtYM+7KEpHvBJSsnWN0pHyOHM9VPQspkRXeYLWcY4CjrGEfFtPFp.UsNR3MyHgckhPtgH.t10ntnNwA3IIyU+w+7ojoFuTpweQIi6.ugNGbCZ9FmyM3mPlkQ79b5iq49zu2CezFMIjW2ZGT.v0yfKbEh4Fq.iNd6vOAp6jl3rBcGdxwVcr69jQx.b+AuQmMEF+R+MGmiouZy3IgqVf5Wm1VG5u2O.UqLPgJfh1x4jdb3rH.CFNk6R2WahXRwOwC6vMA.BfzHLTed7bkBR4Hi7lhH6MWBxNUDZGNUs+vr4PtXvPaQCIWrhysPyGIY1xE.wp9YB.paopNXkEUhvNtXWg+ypJdUg3socD1fgyFiKLCLhL8OAXLqWxMn61uOOvlCvknvaxm9FGzzyuRFiBNS7vmRJJBf8GEkyuvxKdK.2krlHd+JMuRUrgC7bdOcGIab0DVTrj+J.0q4ejTGbbWfgewxaYrxsQMpFLjoTbYx7TEb4qbbpw6+YZZ6LqQ.YSTL..icDvalgtIwfr00w0HSoKWE5V7N3SlvF3ZuLgMlHLuNJYet8Ts4X2CT12gD9zWCrEW+yHaIk5SwxAhLNa5EhaRbKtFsdM3uT05nkiiGpUh.7sK0nI.eqH8HrbRJ5eNKoGSHQde2QIPQ+vWp5BJ6lRC4c66JOs7dr.HrNtCCKSbaJ11.HqPuxfoj1oHMm23XiPzuyjBeIonFc5jw3RiZ.FibU4vg3VDkiwhrSmhtuB59zSqDXtSAvLUixP3pdbdENtUoAHY7P.3wjKb6M7ZED+u5zVJurSOlAlqIIqGkhGj9t5t0X44aRG3Fs5v.bXIRmxsObivj1gPxOaRytcDIwPh21ifRJoI7k1AV2RExOCqw70Py8BuL.ZmtB9dagJ8Df45QhUa1YYqWl13wvFcs7XLaFUnArFiZSZpcP4lze4ljKy0MNuq23Rb8pz1ijVQrT.9Xp4qCRIWMXm5pY45aP2JLrmtqXfhIIkL+i12qRecLLgBuMRsJo8U10O3RbcEXzdfXJNgedLmOoS4W3RRbsBvUPitERgZqjCPoA4QAnHQgjhyQHKkVbWpIsjYsR5TpIRgLiUV9298m+tKlK9APXg7jLDtJM+2.PHyH4pLG2qPT+Z4Q87N84Q97ITxi94508X9ooAfhZllDj5fK3lsFY0Q.WvMlwG+Cy1Z8wQLWWi4ZZ2+W5wEwBL5CCRaaiWtq61AdoUtez9Jz13Z+YLXeD7CoOLHnrqtfgOXdM7gyqgqOuF9n40vMlWC+140vG+gMD++bjwnwzQHyoytNRnm2tJL22kyS9G130.3.
            

            Then you can attach a (asynchronous!) callback where you update your UI:

            const var gm = Engine.getGlobalRoutingManager();
            const var mod_output = gm.getCable("mod_output");
            const var Knob1 = Content.getComponent("Knob1");
            
            mod_output.registerCallback(function(value)
            {
            	Knob1.setValue(value); // or whatever...
            }, AsyncNotification);
            
            StraticahS 2 Replies Last reply Reply Quote 3
            • StraticahS
              Straticah @Christoph Hart
              last edited by Straticah

              @Christoph-Hart thank you i have not used global cables yet i will have a look at this :)

              1 Reply Last reply Reply Quote 0
              • StraticahS
                Straticah @Christoph Hart
                last edited by Straticah

                mod values. @Christoph-Hart how can i solve this without getting rid of the global cable functionality in my vst?

                (started replacing my global cable with a sliderpack to paint the values to my interface but i could not figure out on how to apply a filmstrip/dial to my slider receiving scriptnode values)

                e62f6dad-39e6-46e8-a494-867703ce98c7-image.png

                StraticahS 1 Reply Last reply Reply Quote 0
                • StraticahS
                  Straticah @Straticah
                  last edited by

                  quick bump of this topic, i am still looking for the best way to draw my scriptnode modulation to a dial on the main UI.

                  @Christoph-Hart did that with global cables but it seems it looses this functionality when exporting?

                  HiseSnippet 1507.3ocuX0sSabDEdVfgDbIoIUQQ8xUQ8BGIpqcBgFonp.XfDqTSrhcPMWQG1cr8HlclUyNFvsJR8x9rzK6SPunpOO8MH8blcs2cASB0oola7Lmelu4LemeLcL5.dRh1P7Vo23XNwaUZ2wJ6vlCYBEo0NDOJ8r02fr83XVRBOj34s3yPQdqrDw84ue51LISEvy2hPNPKB3euHRXy2syluPHk6wB48DQEzd8MaEnUM0R8H.FKRqShYAGyFv2mgps.k3s7tgBq1z0xr7Dh2RaqCG2cn9TUp9GHRDGI43hFjtfiR2dOsLDQLtKo4PgLryjqaBA7Rm7K+hoW96PaKBES2OOHbKm.+bKJFO7VnL7VrD7ZTDd0K.uY.IuBPZoTHcaZ2.iH1lKAwymQaorbSeFD1KBkTcIK7WdzlZPCksVD6X9dFXwTKp9n50Wy+A0qe+mToBD5Sr9mvL9Ch7+N+cUCDJdsAb6yj5iXxWoGYEpAsYJ3AwTErH2fHc3gf33QVvvAQnQMYvEs58xkbuRV7Bk9nFfxSvFZgNJVqfEUumSJZPkb6qY3CDI.vaxjxi.dQ09iTAVgVU8DlbD+9U94Jq3LrVB2d.tUlfm3+Meiu13e5P3U4DtoVsZUd6Z9akLVEru1J5KBXnefyahK80JPB+kppN2V4sU7Oun98moL7BYzRIFhlgXjvadeFVUMJ5HtYM+7KEpHvBJSsnWN0pHyOHM9VPQspkRXeYLWcY4CjrGEfFtPFp.UsNR3MyHgckhPtgH.t10ntnNwA3IIyU+w+7ojoFuTpweQIi6.ugNGbCZ9FmyM3mPlkQ79b5iq49zu2CezFMIjW2ZGT.v0yfKbEh4Fq.iNd6vOAp6jl3rBcGdxwVcr69jQx.b+AuQmMEF+R+MGmiouZy3IgqVf5Wm1VG5u2O.UqLPgJfh1x4jdb3rH.CFNk6R2WahXRwOwC6vMA.BfzHLTed7bkBR4Hi7lhH6MWBxNUDZGNUs+vr4PtXvPaQCIWrhysPyGIY1xE.wp9YB.paopNXkEUhvNtXWg+ypJdUg3socD1fgyFiKLCLhL8OAXLqWxMn61uOOvlCvknvaxm9FGzzyuRFiBNS7vmRJJBf8GEkyuvxKdK.2krlHd+JMuRUrgC7bdOcGIab0DVTrj+J.0q4ejTGbbWfgewxaYrxsQMpFLjoTbYx7TEb4qbbpw6+YZZ6LqQ.YSTL..icDvalgtIwfr00w0HSoKWE5V7N3SlvF3ZuLgMlHLuNJYet8Ts4X2CT12gD9zWCrEW+yHaIk5SwxAhLNa5EhaRbKtFsdM3uT05nkiiGpUh.7sK0nI.eqH8HrbRJ5eNKoGSHQde2QIPQ+vWp5BJ6lRC4c66JOs7dr.HrNtCCKSbaJ11.HqPuxfoj1oHMm23XiPzuyjBeIonFc5jw3RiZ.FibU4vg3VDkiwhrSmhtuB59zSqDXtSAvLUixP3pdbdENtUoAHY7P.3wjKb6M7ZED+u5zVJurSOlAlqIIqGkhGj9t5t0X44aRG3Fs5v.bXIRmxsObivj1gPxOaRytcDIwPh21ifRJoI7k1AV2RExOCqw70Py8BuL.ZmtB9dagJ8Df45QhUa1YYqWl13wvFcs7XLaFUnArFiZSZpcP4lze4ljKy0MNuq23Rb8pz1ijVQrT.9Xp4qCRIWMXm5pY45aP2JLrmtqXfhIIkL+i12qRecLLgBuMRsJo8U10O3RbcEXzdfXJNgedLmOoS4W3RRbsBvUPitERgZqjCPoA4QAnHQgjhyQHKkVbWpIsjYsR5TpIRgLiUV9298m+tKlK9APXg7jLDtJM+2.PHyH4pLG2qPT+Z4Q87N84Q97ITxi94508X9ooAfhZllDj5fK3lsFY0Q.WvMlwG+Cy1Z8wQLWWi4ZZ2+W5wEwBL5CCRaaiWtq61AdoUtez9Jz13Z+YLXeD7CoOLHnrqtfgOXdM7gyqgqOuF9n40vMlWC+140vG+gMD++bjwnwzQHyoytNRnm2tJL22kyS9G130.3.
                  
                  
                  Christoph HartC 1 Reply Last reply Reply Quote 0
                  • Christoph HartC
                    Christoph Hart @Straticah
                    last edited by

                    @Straticah Does this work?

                    Link Preview Image
                    HISE | Docs

                    favicon

                    (docs.hise.audio)

                    StraticahS 3 Replies Last reply Reply Quote 0
                    • StraticahS
                      Straticah @Christoph Hart
                      last edited by

                      @Christoph-Hart i will try this one. I did the compilation with the old example you did

                      1 Reply Last reply Reply Quote 0
                      • StraticahS
                        Straticah @Christoph Hart
                        last edited by Straticah

                        This post is deleted!
                        1 Reply Last reply Reply Quote 0
                        • StraticahS
                          Straticah @Christoph Hart
                          last edited by Straticah

                          @Christoph-Hart some progress the hardcoded master FX gives me this on compile at least the left one is working, thats just the display buffer of the compiled node. Global Cable is not working for me.

                          both worked well inside of HISE tho. 7d88afd9-bb3c-49f2-b5a2-9a40b900f06f-image.png

                          StraticahS 1 Reply Last reply Reply Quote 0
                          • StraticahS
                            Straticah @Straticah
                            last edited by

                            @Christoph-Hart Are there any steps/tricks that are crucial for making global cable work in a compiled vst? Everything seems to work with the compiked nodes inside of HISE but after the export its like the global cable just got ignored.

                            Christoph HartC 1 Reply Last reply Reply Quote 0
                            • Christoph HartC
                              Christoph Hart @Straticah
                              last edited by

                              @Straticah are you using the latest develop? I've added support for global cables across the DLL boundary at the beginning of 2024.

                              StraticahS 2 Replies Last reply Reply Quote 1
                              • StraticahS
                                Straticah @Christoph Hart
                                last edited by Straticah

                                @Christoph-Hart i am on 3.6.2 dev branch from April, i thought i have read that you added this functionality so i was quite confused when it did not work on my end. I also dont get a global cable error like on the old HISE build that did not support that functionality. I will redo the process a few times and see if something in my workflow might cause the error. Thank you for your time and help tho! :)

                                1 Reply Last reply Reply Quote 0
                                • StraticahS
                                  Straticah @Christoph Hart
                                  last edited by Straticah

                                  @Christoph-Hart

                                  i just got it to work!

                                  The problem was that i compiled my scriptnode as dll.

                                  Also, saving the node will make it impossible to build the vst without manually compiling.

                                  So dont save Scriptnodes that contain global cables.

                                  Dont use Hardcoded MasterFX on nodes that use global cables :)

                                  1 Reply Last reply Reply Quote 0
                                  • StraticahS Straticah marked this topic as a question on
                                  • StraticahS Straticah has marked this topic as solved on
                                  • G glek referenced this topic on
                                  • First post
                                    Last post

                                  46

                                  Online

                                  1.7k

                                  Users

                                  11.7k

                                  Topics

                                  101.8k

                                  Posts