Add BOOST, 3D depth, and gradient-angle knobs

- BOOST: global display level multiplier (0.75 - 2.5, 1.0 default)
- 3D: pseudo-3D bevel/shading on bars, LEDs, peaks and curve (0 = flat)
- G-ANG: 3D gradient angle (-180 - 180, 0 = top-lit)
- Apply CURVING rounded corners to bars and peaks in BAR mode
This commit is contained in:
Armin 2026-08-14 03:38:09 +02:00
commit aeb4b83281
7 changed files with 142 additions and 18 deletions

View file

@ -71,6 +71,21 @@ BeamgridAudioProcessor::createParameterLayout()
juce::NormalisableRange<float> (-1.0f, 1.0f, 0.001f), 0.0f,
juce::AudioParameterFloatAttributes().withLabel ("")));
params.push_back (std::make_unique<juce::AudioParameterFloat>(
"boost", "Boost",
juce::NormalisableRange<float> (0.75f, 2.5f, 0.001f), 1.0f,
juce::AudioParameterFloatAttributes().withLabel ("")));
params.push_back (std::make_unique<juce::AudioParameterFloat>(
"depth3d", "3D",
juce::NormalisableRange<float> (0.0f, 1.0f, 0.001f), 0.0f,
juce::AudioParameterFloatAttributes().withLabel ("")));
params.push_back (std::make_unique<juce::AudioParameterFloat>(
"gradangle", "Gradient Angle",
juce::NormalisableRange<float> (-180.0f, 180.0f, 0.5f), 0.0f,
juce::AudioParameterFloatAttributes().withLabel ("")));
juce::NormalisableRange<float> barsRange (8.0f, 128.0f,
[] (float start, float end, float v) { return start + v * (end - start); }, // convertFrom0To1
[] (float start, float end, float v) { return (v - start) / (end - start); }, // convertTo0To1
@ -150,6 +165,7 @@ void BeamgridAudioProcessor::processBlock (juce::AudioBuffer<float>& buffer,
juce::ScopedNoDenormals noDenormals;
analyser.setTilt (*params.getRawParameterValue ("tilt"));
analyser.setBoost (*params.getRawParameterValue ("boost"));
// Analyse the first channel; pass the audio through unchanged.
if (buffer.getNumChannels() > 0)