Noob question about scriptnodes.
-
From the manual.
"If you want to learn about the functionality of each node, take a look at the reference manual, otherwise feel free to load up a few example snippets and play around, this might be the best start into the world of scriptnode."Does anyone know where i can find any example snippets ?
-
@lalalandsynth In my post above ;)
-
@ustk Yep.. thanks for the link, was hoping there was more basic documentation.
i guess I am impatient ;) -
@lalalandsynth In fact, there's no real need for better documentation about the nodes, their function speak for themselves (except for more advanced case like frames for instance)
To put your hand on a snippet like the chorus above is the better thing to do to understand what is going on.
The rest is DSP thinking, and for that, no secrets, you must read...
The basics are chain container, and modchain container.
Create a basic graph using modulation on one side and filters on the other for instance, after that, add parameters in the main container, connect them to the interface, and your all good
Almost everything we need is there already except few special things, so practicing for weeks and months is still the only way to progress. At least that's what I did as I had no background... -
@ustk Awesome , I am sure I can learn to use it , its just super basic things like removing a modulation wire, lol!
Am I right in assuming I can then export the modules and use them in regular hise ? And can I use this alongside the regular Hise or is it either or ?
-
@lalalandsynth To remove a connection, right click on any modulator like the peak node or on a parameter, in the connection list you can delete it.
You can export chains containing nodes to create a reusable custom node (so inside scriptnode)
There's no "regular Hise" against scriptnode, it's a module you can turn in DSP, therefore it is part of the other module system and can be used as such in a project.
-
@ustk said in Noob question about scriptnodes.:
There's no "regular Hise" against scriptnode, it's a module you can turn in DSP, therefore it is part of the other module system and can be used as such in a project.
I dont fully understand that sentence . I meant , can I make modules in Scriptnodes that I can use in the HISE i am more familiar with , with the modules that are available there ?
I guess I a m not sure if the scriptnodes are a separate thing to be used on its own or if they are meant to be implemented with all the other modules. -
@lalalandsynth Let's take a real example then
This might be explained another way, but it is how I see thingsYou insert a ScriptFX module. In this ScriptFX, you create a DSP. This DSP uses Scriptnode to create a graph of your own FX.
Now, this ScriptFX becomes like all the other modules. You can access its parameters from your interface for instance.
In other words, you've just created a custom FX module.
So you see, it is part of Hise, like the other modules. But it's like the best module you can dream of :)
Same goes for synthesiser modules. -
@ustk Thanks mate, will do some more testing tomorrow, sounds very exciting .
-
Looking at this again , for some reason when using this snippet , it shows the interface designer but shows nothing int the DSP network , also when I just start fresh with initializing the DSP Network , when I add an interface ,the DSP network disappears ?
HiseSnippet 1619.3ocwX06iaTDEe1y2bD6DhRfHjnyJz3HcXY6b4KkBatymCVDewI6kiTQzlcGedzs6LK6tN24DRETveBITvGcHJnFnJRzRj.cUzEDUo6BEoflvLyN6mdy4EGH2VMe7dy626i48dy12gpibcoN.khqO1FATNBTcLwa3JC0vDP21.kiB6o45gbJ6uzxis0bcQF.EkBWhufRw4Ahu8ZtrloFQGEsD.rAEqitL1B6EsZ+Ve.1zrilAZcrULpWpUWcJYEpIcDCOEf0.1Z5aosIZMMNYyAAJKrpA1i5n5o4gbAJyuL0Xr5P51De52.6hukIhOoNPkcP9K2gZZvQLeUvJCwlF8CzaW.6T5GYEJ3aENArG1.Gtdj03XhMJGwQb6gxb6G7pOc3UKK3oDCdy6CuiCU0cv1dQ6vw1ggcILG0.MlKHNr7oEn7P3JTFADupVZag53vlDxPk5MN+hkaTq1ot3fQDcOLkTlRVi5gtBoxoJc2REKcuRkSu0fAYtGWLNTSSjSlay85N6GiUHirtExYwx2VybDJjPl5mz9d37Ye0805XDRIcIXuqXijyiGfDn0A6VCDprwWJRGiupP0xfrnklzACjdEdjnjbFodBG8QkNZUSrAxAfM3d4NNnOdDhnOFHrOxKPe8a+a+PKPNNfRvqVtilNyNlj+G7fh4h+Ef8nFnD7Jt8+B4c4QddThf2CA8CLyf6q2sslmFOdWZOX1HajiGl6oUZitMKQhezeQXaj6VdTagAyxlR3VOkijKS1N.EnBWji4CZvFXgMLLQ8otXdTXHl9oetEKsmsJ9NrCEBqUsNiRR7rUVZ6DN8y2sk6nACv7iGV98uCvhaiRHY6.edWCQZVAJK24F0Yo4bXY3X2D6lBrfXpWw73PSpcHg1Iv7oEe61Th4G8K7u2YBMLmXrH7pRAFGgu1zBYRht6yFDW90qVKuxWddwE9BSOlKo34Cxo3NJrC1jMVdNfISHeLNfFYp4krVAu.obCdnU7jx7LuDVH233WB9WT.oVtqukW3dbXerm9vrw6bYfW1c0+uwqrb7qCWcv.jtWDXmG14FyZs27Ckrp8VRFlvjOGHIhZxpp62AKuJYSLAUU2AwvVaW60PdaSc1pxIsFWnsZ+SdpnZf1NHVnGZcZeSswUb0rrMQWiw0hkukIUeK9ckIKbJCiWlSQE8gZDBxzcVpulp8pB4q9ZFtvqQG4gIa1SyyQjRbsQVprt5zQqHQG+F3b7Ze9yqEbiTEQLDSdN6StYc9bE4l0C1LprIPZOENL4X1Ht24PPeSLeCQB4h94sF2WyaHOjm2a.KlB4TUOL1pnjo5.FrSC3KyrwIVVo.+jC5Z0WKX4krDYkX8rJG+gXCtDgJKxnvON4ZLuKuggdtwqpvs28Cx9vO+47kfu1IThRbTVBxx7cSaJyejPmdC3.QxJ2pg6ePnFwuJzdLQyBqKSep7VA12pIRqpTHJ0y5ZNah7DIChLELwFNiIptjayZOvWB8vjMR1QwRs5osSx0X0nuLcajSpmirTqqaamdUFspg0lJN+W7.92O1TcKz1xJe7pnexSN2mZ8nl9MeGU1NTrC18u9ym7Q5s.4A2Aknii6f5zIwc.kIwc.sSG2+8W9sO6jO8WE3t.7pQ3sx2b+KduG+6MA42N23gSXmAMxzN23gYXmYzNc7FTdji2EDEUAojX7.koBY.XRHuWyrfL.jEj2qYbHe2S78W5OtymkBxOe7W0+MauqLzP0hR8FxRHFg6.1Nvvc3Z6ioVzk0DRDDqy7TWPmOl1rP5qE48RpZplRyFgaj9sOhGNPPhZctx2QHmxJSyyt00HQZy9un1tYLJ7CNbx6ZvR6w664J1gM.f77k9AcJnRL6SiFW3B0NCX0cXsN35JTVV5ZPZGQTK64MmyL3F3Og7kyMvSG8Ra9eUkIUX9O6Rmq94mp4WdWJuWpijrnUqoZ48e8vKkkWhv+ih8eUlqZZ19TOe6fyGb3o4CJACaaZV7CyMopsWyIUMd2eS5GdbpKA9A7OMC+vieA9gj0Elk+myqj2MXoo6Puot+Sg39nCIVg4lIh+ybQXO97x0C9IU7ze03+lH7M004O87cYuULadZLC7b5YfmklAdNyLvyYmAdN2Lvy42Wd3+x82ajG0x+2RvVn+phfKEkUIZrWjJRBA9Gbn72pA
-
Disappearing Scriptnode when I add interface even when I switch to ScriptFX in the script Editor
-
@lalalandsynth the dsp is a script as is the interface. When creating the interface, Hise just switch to display it in place of the dsp. On the top left combobox, you can choose what script is displayed, so you'll find the dsp in there
-
It does not matter what I select to display in the script editor , I can select either scriptFX or Interface and it will not show the ScriptFX.
-
@lalalandsynth not in the script but the combobox just above
-
@ustk not the combobox you can see in the gif ?
-
@lalalandsynth Nope, this one:
-
@ustk
Thanks , working now .-
I see I can Export as Base64 snippet ,can I use that to make my own little modules and then import them into an existing scriptnode , wondering if I can say make a filter config and then import that into a wet/dry Reverb config ?
-
If I am right about the snippet , how can I import it ?
3.What are the unusednodes that are left when I delete a node ? can I not remove it fully ?
4, What is the "create screenshot" for ?
-
Can I create another row of parameter controls ? At some point I run out of horizontal space :)
-
Can I make my own Meta nodes ?
-
-
-
I don't really know. Might be to import in a C++ context? No other idea...
-
...
-
I don't know what you mean by unused nodes... Maybe a screenshot, please?
-
Here's the corresponding code, but it seems to be broken (or there's a subtle subtlety...)
if (result == (int)MenuActions::CreateScreenShot) { auto mc = node->getScriptProcessor()->getMainController_(); auto docRepo = dynamic_cast<GlobalSettingManager*>(mc)->getSettingsObject().getSetting(HiseSettings::Documentation::DocRepository).toString(); if (docRepo.isNotEmpty()) { auto targetDirectory = File(docRepo).getChildFile("images/scriptnode/"); auto imageFile = targetDirectory.getChildFile(node->getId()).withFileExtension("png"); targetDirectory.createDirectory(); auto g = findParentComponentOfClass<DspNetworkGraph>(); auto imgBounds = g->getLocalArea(this, getLocalBounds()); auto img = g->createComponentSnapshot(imgBounds, true); PNGImageFormat pngFormat; FileOutputStream fos(imageFile); if (pngFormat.writeImageToStream(img, fos)) { PresetHandler::showMessageWindow("Screenshot added to repository", "The screenshot was saved at " + imageFile.getFullPathName()); } } }
-
I'd like that too but it's not possible at the moment. It would be a cool addition, I myself got around 120 knobs...
Having them automatically go to another line based on the graph's width would be cool. Also, having the possibility to re-arrange them on the fly would be an absolute killer! (even if it's possible by editing the XML...) Finger crossed @Christoph-Hart! -
Sure you can: https://docs.hise.audio/scriptnode/manual/cpp_generator.html#create-meta-nodes
Although keep in mind there will be a procedure to re-import previous patches...
https://forum.hise.audio/topic/2555/scriptnode-breaking-changes/3
-
-
Yes, I was aware of the CPP export , I was hoping you could make your own Meta nodes within HISE , would be nice to be able to save a Node config as a meta node and recall from the module selector.
-
Here is the Unused node list.
When I delete a node it appears there.