Cycling74 / rnbo.example.juce

Template project for creating RNBO and JUCE based Desktop applications and/or Audio Plugins
62 stars 9 forks source link

question: list input via inport & unity parameter exposing #5

Open chausch opened 1 year ago

chausch commented 1 year ago

it seems inports in rnbo are not visbible when compiled for unity, thus can not be exposed to the scripting system.

is this already possible? if so, please give me some advice! thank you!

[on the other hand params are visible (and can be exposed).]

x37v commented 1 year ago

Hi @chausch

The current JUCE based Unity plugin is pretty rudimentary. We have a custom native plugin implementation in the works and hope to expose more utility in that, inport messages sound like a good one for that. I don't expect we'll do much or anything more with the JUCE based Unity plugin, sorry.

We don't have a timeline for this native plugin but it is something we have interest in internally so hopefully that means it isn't too far off to see as at least an example for you to use at your own risk.

chausch commented 1 year ago

thank you for the reply @x37v ! would it be possible to get a version of this for testing (even if unstable)? i could do some beta testing! 😁 would be truly awesome to have this working. i'm working on a unity project right now that would greatly benefit from this. right now i'm looking at libpd as an alternative, but i'd very very much prefer max/rnbo as i'm way more fluent in this. thank you!!!

chausch commented 1 year ago

please consider also the way libpd handles buffer-interaction with unity – i think that would be awesome to have in an rnbo exported unity plugin!

x37v commented 1 year ago

thank you for the reply @x37v ! would it be possible to get a version of this for testing (even if unstable)? i could do some beta testing! 😁 would be truly awesome to have this working. i'm working on a unity project right now that would greatly benefit from this. right now i'm looking at libpd as an alternative, but i'd very very much prefer max/rnbo as i'm way more fluent in this. thank you!!!

We're not quite ready for beta testing but I'll keep you in mind once we get something that is sharable.

BTW, how does libpd handle buffer interaction in unity? is there a document to reference or do you just want to explain it?

chausch commented 1 year ago

hi @x37v , please excuse the missing reply – somehow this slipped my attention.

libpd exposes it's buffers (arrays) to unity. unity can write values into them, which is a really cool way to exchange data as it can be accessed on sample level by pd. maybe something like this could be done for rnbo?

https://github.com/LibPdIntegration/LibPdIntegration/wiki/arrays https://github.com/LibPdIntegration/LibPdIntegration/wiki/unity2libpd https://github.com/LibPdIntegration/LibPdIntegration/wiki/libpd2unity

the big downside with libpd is that their audio implementation bypasses the unity mixer. rnbo on the other hand could create real native unity plugins. would be awesome to match (and surpass) the libpd functionality.

chausch commented 1 year ago

i noticed i was passing on wrong informatioon. libpd does not expose buffers, there's merely a function to send arrays to pd, which in turn can be written into buffers. my bad, sorry! 😓

x37v commented 1 year ago

@chausch https://github.com/Cycling74/rnbo.unity.audioplugin