Awesome work, I will check it out a little later. But from a glance it looks amazing!
For clap, the clap-wrappers should do the heavy lifting. So Auv2 and VST3 could already work?
Awesome work, I will check it out a little later. But from a glance it looks amazing!
For clap, the clap-wrappers should do the heavy lifting. So Auv2 and VST3 could already work?
This looks big! Will definitely consider it when getting back on UI stuff. I actually asked on the Discord channel of RIVE if the tool could be suited for plugin dev, and one the guys in the team said they were actually working on it (as in “fiddling around with JUCE and RIVE in their free time”, from what I understood). Also they’re apparently coming up with a “data binding” feature soon to streamline the process of connecting visuals to data, etc.
Congrats with this! I’m still a noob honestly so I can’t really help with the development but fully supporting the project and will be happy to test it regularly.
Vector feathering is here ! Soon available for Yup UIs made in Rive. Say goodbye to costly blurs and glow effects ! Vector Feathering
We can’t do emojis yet, but we thought that Variable Fonts would have been much more useful to people making UIs for real. Here we go!
This is super-mega-turbo-neo awesome
We don’t support emojis, that’s true… but what about emojizing an app at 60fps
Sweet!
Does YUP support font ligatures, so I could use something like FF Chartwell in a UI?
I think so but i will have to check. I wasn’t aware of chartwell btw, great share !
I would love to see a ligature demo if you get it working .. this crazy font hack allows for a great deal of other very portable user interface ideas, where it can be used .. I’m on the hunt for a font which uses ligatures for musical concepts - not just notes/staff, but also conventional clavier, synthesizer and audio processing devices ..
Rive supports discretionary ligatures, but there is no easy way to enable that from the C++ api, unless you start tinkering with internal includes. Will see if i can expose some internals and get it running in Yup. In any case doing what chartwell does in Rive is really easy, plus you get the ability to animate the graphs as well (ligatures can’t be animated).
A quick question about the Rive framework, does it has it’s own rendering library or does it use SKIA for rendering it’s vector graphics?
This is really cool - could you maybe share the demo project somewhere, or maybe give some code snippets that demonstrate how ligatures can be used in this way?
In Yup we use its native renderer. But skia or dawn could be used too (if i wanted to drag in multimegabytes dependencies with complicated buildsystems, which i don’t ).
Sure! I will updoad the demo once i have it in some showable form.
The code i have is more or less:
struct CustomComponent : public yup::Component
{
CustomComponent()
{
if (auto result = chartwellFont.loadFromFile (chartwellFontFile); result.failed())
yup::Logger::writeToLog (result.error());
chartwellFont = chartwellFont.withFeatures ({ { 'd', 'l', 'i', 'g', 1 } }); // Enable discretionary ligatures
auto modifier = styledText.beginUpdate();
modifier.setHorizontalAlign (yup::StyledText::center);
modifier.setVerticalAlign (yup::StyledText::middle);
modifier.appendText ("50+25+33+10+43", chartwellFont, 128.0f);
}
void paint (yup::Graphics& g) override
{
g.setFillColor (yup::Colors::black);
g.setFeather (6.0f);
g.fillFittedText (styledText, getLocalBounds().translated (0, 2));
g.setFillColor (yup::Colors::white);
g.setFeather (0.0f);
g.fillFittedText (styledText, getLocalBounds());
g.setStrokeColor (yup::Colors::green);
g.strokeFittedText (styledText, getLocalBounds());
}
yup::Font chartwellFont;
yup::StyledText styledText;
};
Edit: better now?
Cool, i was confused because the repo mentioned the Skia concrete renderer. But yes, SKIA is a monster.
Ah, sorry if this is a dumb question but is chartwellFont a juce::Font or a yup::Font?
The lack of namespacing by using namespace yup;
makes this a bit confusing. I have no idea what functions/class/structs are from juce
and which ones are from yup
.