Scripnode 101
-
@crd You don' compile just nodes, you compile networks.
Regarding your problem, as Christoph suggested, try to create 2 separated scriptFX, the one with the global mod node (which won't be compiled) and the one with the Math.expr (which will be).To enable/disable network compiling, click on this icon :
And simply allow the compilation of the 'math' network.
When you'll create the DLL, only this network will be compiled.If you're using
Math.expr
nodes (and similar) you have to compile the network first before being able to compile your plugin.
But - AFAIK - there's no (real) performance gain to be had by compiling 'classic' networks, except maybe for real complicated ones. -
@Matt_SF Are the two scriptfx just for the purpose of creating the dll? I’m away from my rig st the moment but am sure the edit properties window is not giving the option to disallow compiling global mod nodes in a network.
The network isn’t complicated but does involve many nodes so maybe there are no performance gains to be had by doing this anyways…
-
@crd no no, you must compile any network containing Math nodes in a dll in order to be able to compile your plugin. Otherwise HISE will throw an error while creating your plugin.
But since HISE can't compile global mod nodes into a dll, you have to split your network in 2 separated networks, disallow compilation of the network containing the global mod node and allow compilation of the one containing the math node.
(When we speak of 'networks' it means 'scriptFX' because 1 scriptFX = 1 network.)So the math network will be embedded into the dll and the other will not. But when compiling your plugin, HISE will embed the dll and the other network directly into the plugin.
-
@Matt_SF How does that help in the case of a network that needs a global mod node to interact with a math.expr node?
-
This is what I see when I edit the properties of a global node:
It makes since to me that I would need to disallow these nodes from compiling into dll's but I do not see a way to do that. (but once again, I might just be spinning wheels here if there are no actual performance gains to be had by compiling these types of networks.)
-
@crd I'm not sure this is what you're looking for but, to be able to enable/disable compiling of script FX you can't have anything in the module area selected because then you will see the properties of the selected node, if you press esc nothing will be selected and you will be able to enable/disable the compilation.
-
@ulrik Thanks - I did not notice that!
Still, it seems impossible to compile a network with global mod nodes which means you can never use a global mod node and math.expr in an exported plugin...
-
Am I wrong or is not currently possible to compile a dll for a network that contains a global_mod node in it?
-
@crd it will never be possible, a compiled network must not have any dependencies to outside stuff.
-
@Christoph-Hart Got it. Thanks
-