szkkng / kengo-dev

My blog
https://kengo.dev
MIT License
3 stars 2 forks source link

posts/jr-granular #67

Closed utterances-bot closed 2 months ago

utterances-bot commented 1 year ago

JR-Granular - JUCE & RNBO C++ Export

https://kengo.dev/posts/jr-granular

SeamusMullan commented 1 year 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

JLenzy commented 1 year ago

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.

szkkng commented 1 year ago

@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).🙏

itsnestee commented 1 year ago

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?

szkkng commented 1 year ago

@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.

itsnestee commented 1 year ago

Thanks, does neoVim have autocomplete for the juce modules?

szkkng commented 1 year ago

@itsnestee Yes, the feature is provided by plugins.

francesco-di-maggio commented 1 year ago

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

szkkng commented 1 year ago

@francesco-di-maggio Hi! Could you show me the entire error log? And what version of juce are you using?

francesco-di-maggio commented 1 year ago

Fixed by completing the rnbo~ patch. Once all params where set, the patch compiled successfully. Thank you for the amazing tutorial.

mikegazzaruso commented 1 year ago

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!

szkkng commented 1 year ago

@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.

MathiasSchneider-fr commented 6 months ago

Wow, what a tutorial. One of the most beautiful i've ever seen !! Many thanks for that.

MathiasSchneider-fr commented 6 months ago

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 !

szkkng commented 6 months ago

@MathiasSchneider-fr Hi, thanks for your comment! You need to rebuild your project to create BinaryData for that font.

Uasmi commented 4 months ago

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?