HISE Logo Forum
    • Categories
    • Register
    • Login
    1. HISE
    2. Oli Ullmann
    3. Posts
    • Profile
    • Following 4
    • Followers 0
    • Topics 103
    • Posts 651
    • Groups 1

    Posts

    Recent Best Controversial
    • RE: Can we 'get' hex Colour value from Mouse position?

      @Chazrox
      I think @d-healey made one.
      Check his Github...

      posted in Scripting
      Oli UllmannO
      Oli Ullmann
    • RE: Stock Table Upgrade?

      @It_Used
      I am not in front of my computer but there is a .reset() function.

      posted in General Questions
      Oli UllmannO
      Oli Ullmann
    • RE: Text input

      @pcs800
      Use a label.

      posted in General Questions
      Oli UllmannO
      Oli Ullmann
    • RE: Duplicate Script FX Network

      @DanH
      Or did you want to duplicate the effect in the same project? Then I think I misunderstood you...

      posted in General Questions
      Oli UllmannO
      Oli Ullmann
    • RE: Duplicate Script FX Network

      @DanH
      Normally, it should work quite simply as follows if you do not have any precompiled DLLs in your ScriptFX:

      1. Copy ScriptFX
      Copy.png

      2. Create a new effect in a new project and select the previously copied ScriptFX at the bottom.
      Paste.png

      posted in General Questions
      Oli UllmannO
      Oli Ullmann
    • RE: A follow up on the custom tables...

      I just saw this new thread... :-)
      Here's some info for you that I noticed recently:
      If you use the content callback of a table as follows:

      Table.setContentCallback(tableCallback);
      
      inline function tableCallback(i)
      {
      	// Your code
      }
      

      i returns the index of the point that you control from outside, for example from a panel or a slider.
      This was very useful for my use case.

      posted in General Questions
      Oli UllmannO
      Oli Ullmann
    • RE: Stock Table Upgrade?

      Here's some info for you that I noticed recently:
      If you use the content callback of a table as follows:

      Table.setContentCallback(tableCallback);
      
      inline function tableCallback(i)
      {
      	// Your code
      }
      

      i returns the index of the point that you control from outside, for example from a panel or a slider.
      This was very useful for my use case.

      posted in General Questions
      Oli UllmannO
      Oli Ullmann
    • RE: Stock Table Upgrade?

      @DanH
      @griffinboy
      @HISEnberg
      @ustk
      Please do not change the mouse behavior of the current table (left click, right click, double click, etc.). That would not only break my project but certainly many others as well.

      It would be better to create a new one, a Flex Table, like @Christoph-Hart did with the Flex Envelope. :-)

      posted in General Questions
      Oli UllmannO
      Oli Ullmann
    • RE: Convolution Reverb doesn't work after export in DAW.

      @Yannrog
      No, you just need to make sure that the audio files are in the AudioFiles folder or a subfolder of AudioFiles.

      posted in Newbie League
      Oli UllmannO
      Oli Ullmann
    • RE: How do I declare this array?

      GPT gave me this and it works...:

      const msoXModulationTempSave = [];
      
      const var NUM_LAYERS = 4;
      const var I_SIZE     = 16;
      const var J_SIZE     = 8;
      const var K_SIZE     = 2;  // weil du [..][..][..][0] benutzt, mind. 1 Element
      
      for (l = 0; l < NUM_LAYERS; l++)
      {
          msoXModulationTempSave.push([]);
          for (i = 0; i < I_SIZE; i++)
          {
              msoXModulationTempSave[l].push([]);
              for (j = 0; j < J_SIZE; j++)
              {
                  // letzte Dimension mit Nullen füllen
                  var last = [];
                  for (k = 0; k < K_SIZE; k++) last.push(0);
                  msoXModulationTempSave[l][i].push(last);
              }
          }
      }
      
      posted in Scripting
      Oli UllmannO
      Oli Ullmann
    • How do I declare this array?

      Hello everyone! :-)

      How do I declare the msoXModulationTempSave array so that the msoXModulationTempSave[layerIndex][i][j][0] assignment works in the for loop?

      I get the following error message:
      Cannot assign to this expression!

      Many thanks,
      Oli

      for(i = 0; i < allGlobalMods.length; i++)
      {
        for(j = 0; j < 16; j++)
        {
          if(!mm.canConnect(allGlobalMods[i].getId(), allXKnobs[layerIndex][j].get("matrixTargetId")))
          {
            msoXModulationTempSave[layerIndex][i][j][0] = allGlobalMods[i].getId();	// save source id
            Console.print(msoXModulationTempSave[layerIndex][i][j][0]);
          }
        }
      }
      
      posted in Scripting
      Oli UllmannO
      Oli Ullmann
    • RE: Convolution Reverb doesn't work after export in DAW.

      @Yannrog
      Yes :-)

      posted in Newbie League
      Oli UllmannO
      Oli Ullmann
    • RE: Randomise start point of LFO Modulator?

      @dannytaurus
      I'm not sure what you mean by “free running,” but you can make sure that the LFO doesn't respond to note-on commands and is therefore not triggered by a note.

      You do this with the IgnoreNoteOn attribute. The attribute has the number 10 and must be set to true.

      posted in General Questions
      Oli UllmannO
      Oli Ullmann
    • RE: Setting ControlCallback w/ Loops ?

      @d-healey
      Yes, that's right! Thanks for the tip! :-)

      posted in Scripting
      Oli UllmannO
      Oli Ullmann
    • RE: Setting ControlCallback w/ Loops ?

      @Lindon
      Yes, the components will be added in the order specified in the component list.

      As for the index, I use a function that I call first in the callback and that returns the index. Something like this:

      inline function getIndexAsInt(component)
      {
      	local index = component.getId().replace("knbVolume", "").getIntValue();
      	return index;
      }
      
      inline function getIndexAsString(component)
      {
      	local index = component.getId().replace("knbVolume", "");
      	return index;
      }
      

      The return value can then be used in the callback to determine the correct component....

      posted in Scripting
      Oli UllmannO
      Oli Ullmann
    • RE: Setting ControlCallback w/ Loops ?

      @d-healey
      😂 MASTER OF THE UNIVERSE LEVEL! 😀

      posted in Scripting
      Oli UllmannO
      Oli Ullmann
    • RE: Setting ControlCallback w/ Loops ?

      @Chazrox
      Or even shorter...

      const TheGains = Synth.getAllEffects("Simple Gain");
      const SampleVolumeKnobs = Content.getAllComponents("knbVolume");
      
      for(k in SampleVolumeKnobs)
      	k.setControlCallback(onSampleVolumeKnobsControl);
      
      posted in Scripting
      Oli UllmannO
      Oli Ullmann
    • RE: Table -> Disable deletion by right-clicking

      @dannytaurus said in Table -> Disable deletion by right-clicking:

      And, yeah - you're right about that weird right-click behaviour. Every right click shifts the curve by a certain amount, probably related to the mouse Y position.

      But looking more into the existing right-click-to-change-curve behaviour - I'm not sure I like that very much either. If you right-click-drag up/down to change a curve, but then drag left-right it affects all the other curves, which will probably be quite surprising to the user.

      Yes, none of this is ideal! I'll take another look at it when I get a chance and let you know if I've been able to improve the behavior. In principle, it should be possible!
      To prevent the curves of other points from changing when you drag to the left or right, you could create an index when you first click. In other words, the index of the point in question. And only this point would then be changed. I'll try to implement this when I get a chance.

      posted in General Questions
      Oli UllmannO
      Oli Ullmann
    • RE: Table -> Disable deletion by right-clicking

      @dannytaurus said in Table -> Disable deletion by right-clicking:

      Oh, I just assumed we could react to mouse actions on a table in our own scripts? Maybe not. I've never done it.

      You can use a broadcaster. However, this only allows you to add additional functionality. I don't think this overwrites the original behavior of a table. I think you can only do this in the source code.

      posted in General Questions
      Oli UllmannO
      Oli Ullmann
    • RE: Table -> Disable deletion by right-clicking

      @dannytaurus said in Table -> Disable deletion by right-clicking:

      Or should we just override them in the plugin scripts?

      What do you mean by that?

      posted in General Questions
      Oli UllmannO
      Oli Ullmann