Closed utterances-bot closed 2 months ago
Awesome tutorial! It’s super cool to see how simple it is to turn Max patches into vst plugins with cool UIs! Keep it Up <3
Hi, thank you for the amazing tutorial! I am learning JUCE at the moment and recently purchased RNBO so this is just so, so helpful.
I was wondering if you have any plans to do tutorials on your GUI creation process? I am in love with your design aesthetics, and am not sure how to really branch out from the default JUCE sliders/boxes/dials/etc.
@JLenzy Hello, thanks for your comment!
I don't have the plans because my ui implementation is a bit too complex to explain as a tutorial (it would force readers to read and write a lot of tiresome code).🙏
Hi, thanks for this tutorial. After setting up the Juce project with Cmake, I was wondering, how did you created the Xcode project out of it? Which Cmake command did you use to open the project on Xcode?
@itsnestee Hi! Ahh, when I made this tutorial I was using Neovim, not Xcode. So I didn't need to create the Xcode project. If you use Xcode, you need to add "-G Xcode" to the cmake command to create the project.
Thanks, does neoVim have autocomplete for the juce modules?
@itsnestee Yes, the feature is provided by plugins.
Hi, I have encountered this issue while compiling the RNBO~ code.
error: 1180:32:called object type 'double' is not a function or function pointer error: 1181:32:called object type 'double' is not a function or function pointer
Do you have any tips for how to overcome this?
Thank you in advance, Francesco
@francesco-di-maggio Hi! Could you show me the entire error log? And what version of juce are you using?
Fixed by completing the rnbo~ patch. Once all params where set, the patch compiled successfully. Thank you for the amazing tutorial.
Hi, in AudioEditor.cpp there is a typo:
intvDial(*state.getParameter(ParamIDs::intvDial), &um)
instead of
attackDial(*state.getParameter(ParamIDs::attack), um)
and so on for others dials.
Thanks for sharing!
@mikegazzaruso
~~Hello! It is not a typo.
The second argument of the constructor, um, must be a pointer to juce::UndoManager, so you need to use the address-of operator &
. Otherwise it won't compile.~~
Ah, thanks! I've fixed it.
Wow, what a tutorial. One of the most beautiful i've ever seen !! Many thanks for that.
Everything works fine until the font thing. When i had this 2 lines : auto futuraMedium = juce::Typeface::createSystemTypefaceFor (BinaryData::FuturaMedium_ttf, BinaryData::FuturaMedium_ttfSize); juce::LookAndFeel::getDefaultLookAndFeel().setDefaultSansSerifTypeface (futuraMedium);
It says that BinaryData is not a class or a namespace... I think my CMakelists.txt is fine. So, would you have an idea ?
Thanks !
@MathiasSchneider-fr Hi, thanks for your comment! You need to rebuild your project to create BinaryData for that font.
Hey, thanks for an amazing tutorial! I was wondering, what is the core change in the code if I want to make a MIDI synth? I assume it's in the processBlock and working with midiMessages?
JR-Granular - JUCE & RNBO C++ Export
https://kengo.dev/posts/jr-granular