mirror of
https://codeberg.org/armin/wavetable.git
synced 2026-09-01 05:50:46 +02:00
Version 1.0.9
This commit is contained in:
parent
8de9601b7f
commit
3ac3543a67
4 changed files with 33 additions and 3 deletions
|
|
@ -4,7 +4,7 @@ cmake_minimum_required (VERSION 3.16.0 FATAL_ERROR)
|
||||||
# Set for each plugin
|
# Set for each plugin
|
||||||
#
|
#
|
||||||
set (PLUGIN_NAME Wavetable)
|
set (PLUGIN_NAME Wavetable)
|
||||||
set (PLUGIN_VERSION 1.0.8)
|
set (PLUGIN_VERSION 1.0.9)
|
||||||
set (BUNDLE_ID com.socalabs.wavetable)
|
set (BUNDLE_ID com.socalabs.wavetable)
|
||||||
set (AU_ID WavetableAU)
|
set (AU_ID WavetableAU)
|
||||||
set (LV2_URI "https://socalabs.com/wavetable/")
|
set (LV2_URI "https://socalabs.com/wavetable/")
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,7 @@
|
||||||
|
1.0.9:
|
||||||
|
|
||||||
|
- Tweaked the way phase works with unison oscillators
|
||||||
|
|
||||||
1.0.8:
|
1.0.8:
|
||||||
|
|
||||||
- Fixed loading custom Wavetables in second oscillator
|
- Fixed loading custom Wavetables in second oscillator
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
Subproject commit 38741aed5ba543ba7bac2ce41b025a3b96dc5d68
|
Subproject commit ef1b80ac128815eb18c6a309e95ddf4b044940cc
|
||||||
|
|
@ -52,7 +52,33 @@ void WavetableVoice::noteStarted()
|
||||||
snapParams();
|
snapParams();
|
||||||
|
|
||||||
for (auto idx = 0; auto& osc : oscillators)
|
for (auto idx = 0; auto& osc : oscillators)
|
||||||
osc.noteOn (proc.oscParams[idx++].retrig->getBoolValue() ? 0.0f : proc.rng.nextFloat());
|
{
|
||||||
|
auto& params = proc.oscParams[idx++];
|
||||||
|
auto retrig = params.retrig->getBoolValue();
|
||||||
|
auto voices = params.voices->getUserValue();
|
||||||
|
|
||||||
|
if (voices == 1)
|
||||||
|
{
|
||||||
|
osc.noteOn (retrig ? 0.0f : proc.rng.nextFloat());
|
||||||
|
}
|
||||||
|
else if (retrig)
|
||||||
|
{
|
||||||
|
float phases[8] = { 0.0f };
|
||||||
|
|
||||||
|
for (auto i = 0; i < voices; i++)
|
||||||
|
phases[i] = 1.0f / voices * i;
|
||||||
|
|
||||||
|
osc.noteOn (phases);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
float phases[8];
|
||||||
|
for (auto& p : phases)
|
||||||
|
p = proc.rng.nextFloat();
|
||||||
|
|
||||||
|
osc.noteOn (phases);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
noise.noteOn();
|
noise.noteOn();
|
||||||
sub.noteOn (proc.subParams.retrig->getBoolValue() ? 0.0f : proc.rng.nextFloat());
|
sub.noteOn (proc.subParams.retrig->getBoolValue() ? 0.0f : proc.rng.nextFloat());
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue