Can Plug'n Script support native C# code?

Official support for: bluecataudio.com
Post Reply New Topic
RELATED
PRODUCTS
Plug'n Script$99.00Buy

Post

I see this note in the Plug'n Script page:
"Starting with version 2, the plug-in also supports native (compiled) code and can load binary scripts built from C or C++ (or any language that can export C functions, such as Delphi, Fortran, .Net...), using the same interface as the angelscript version."

Reading this, I got excited since I am on the lookout for C# based VST development with low barrier to entry, especially on the UI side. After going through the manual and the github code however, I see that the native samples provided are only in C++. Did anyone venture into putting together a sample solution for C# (or some other language in the .NET platform)?

It seems doable but I am unsure if I have the ability to deal with the complexities of DLLExport and other fancy stuff, given the little time I get to dedicate in this space.

Post

It should indeed be possible to write the code in .NET. You just need to export a C interface from he dll, so if you write some simple wrapping code, you can call C# or whatever other language from there.

Post

But regarding the UI you can't write in anything but KUIML!

Post

Blue Cat Audio wrote: Mon Nov 30, 2020 9:01 am It should indeed be possible to write the code in .NET. You just need to export a C interface from he dll, so if you write some simple wrapping code, you can call C# or whatever other language from there.
Thanks for the response. Will check it out this weekend. For now, angelscript itself is working well for what I am building. Surprised at how quick and efficient prototyping is with Plug'n script. You have quite a good product here!

Post

ilyaorlov wrote: Mon Nov 30, 2020 4:39 pm But regarding the UI you can't write in anything but KUIML!
Yeah, good point that. I have so far been pleased with generic UI as well as KUIML. Of course, I just started prototyping some stuff. Not sure how far KUIML can take me, but gonna see how much I can push it :).

Post

ilyaorlov wrote: Mon Nov 30, 2020 4:39 pm But regarding the UI you can't write in anything but KUIML!
That's definitely the intent: if you have ever tried to write GUI for plug-ins in C/C++ with whatever framework, you know what I mean :-).

With the "System" call you can still call native binaries if you wish if specific features are needed. Of course it's not very convenient, but it still opens calls to native code from the GUI. Maybe some tighter integration with native code will be added in the future, but it's not very easy to keep it simple AND powerful at the same time.

Post

shankzz wrote: Tue Dec 01, 2020 10:38 pm
ilyaorlov wrote: Mon Nov 30, 2020 4:39 pm But regarding the UI you can't write in anything but KUIML!
Yeah, good point that. I have so far been pleased with generic UI as well as KUIML. Of course, I just started prototyping some stuff. Not sure how far KUIML can take me, but gonna see how much I can push it :).
KUIML is tricky at times (often :)) but can do a lot (>95% of my needs, I'd say). And yea, many things are super easy with KUIML.

Post

ilyaorlov wrote: Wed Dec 02, 2020 9:28 am
shankzz wrote: Tue Dec 01, 2020 10:38 pm KUIML is tricky at times (often :)
Well you are not the typical user either, pushing the limits of what is possible on a daily basis :-)

Post

Blue Cat Audio wrote: Wed Dec 02, 2020 10:33 am Well you are not the typical user either, pushing the limits of what is possible on a daily basis :-)
I was interested in making GUIs as complex as say Fabfilter ProQ, and that was my reference, whether KUIML can do it or not. Now it seems to me it can! (though it's not easy, definitely)

It would be great also if KUIML could be somehow "pre-compiled" so it took less time loading. Cause now I try not to add new features, because skin loading time is getting bigger.

In general you know I'm a big KUIML fan!

Post

ilyaorlov wrote: Wed Dec 02, 2020 2:46 pm It would be great also if KUIML could be somehow "pre-compiled" so it took less time loading. Cause now I try not to add new features, because skin loading time is getting bigger.
It should not take that much time, unless you are creating something really complex: In this case you can use delay-loaded KUIML widgets to load parts of the GUI later, only when displayed.

Post

Yes, I'm aware of that, thank you!
Also I think "pre-compiled" skins would be hard to implement regarding build-time scripts and "live" includes, etc.

Post

ilyaorlov wrote: Thu Dec 03, 2020 9:58 am Yes, I'm aware of that, thank you!
Also I think "pre-compiled" skins would be hard to implement regarding build-time scripts and "live" includes, etc.
A few things could actually be pre-compiled to speed things up. But indeed, most of precompiled stuff would be invalidated by build time scripts and modified includes if you use any.

Post Reply

Return to “Blue Cat Audio”