diff --git a/2018/SimpleSynth/Source/DSP/SimpleSynthParameters.cpp b/2018/SimpleSynth/Source/DSP/SimpleSynthParameters.cpp index 0d03066..e767778 100644 --- a/2018/SimpleSynth/Source/DSP/SimpleSynthParameters.cpp +++ b/2018/SimpleSynth/Source/DSP/SimpleSynthParameters.cpp @@ -1,4 +1,4 @@ -/* +/* ============================================================================== SimpleSynthParameters.cpp @@ -96,6 +96,9 @@ LfoParameters::LfoParameters(AudioParameterChoice* lfoTarget, , LfoAmount(lfoAmount) , LfoSpeed(lfoSpeed) { + // DSP側のLfoSpeedパラメータの変化を指数カーブにする。 + // これにより、MIDI CCの入力値である0~127の直線的なカーブが、LfoSpeedパラメータの指数カーブにマッピングされる。 + // GUI側の対応するコンポーネントに同様のskewを設定することで、MIDI CCの値とGUIを近いカーブに合わせることができる。 LfoSpeed->range.symmetricSkew = false; LfoSpeed->range.skew = 0.5; @@ -132,6 +135,9 @@ FilterParameters::FilterParameters(AudioParameterChoice* type, , Frequency(frequency) , Q(q) { + // DSP側のFrequencyパラメータの変化を指数カーブにする。 + // これにより、MIDI CCの入力値である0~127の直線的なカーブが、Frequencyパラメータの指数カーブにマッピングされる。 + // GUI側の対応するコンポーネントに同様のskewを設定することで、MIDI CCの値とGUIを近いカーブに合わせることができる。 Frequency->range.symmetricSkew = false; Frequency->range.skew = 0.3; diff --git a/2018/SimpleSynth/Source/GUI/ParametersComponent.cpp b/2018/SimpleSynth/Source/GUI/ParametersComponent.cpp index 6c8d5a7..de101d6 100644 --- a/2018/SimpleSynth/Source/GUI/ParametersComponent.cpp +++ b/2018/SimpleSynth/Source/GUI/ParametersComponent.cpp @@ -1,4 +1,4 @@ -/* +/* ============================================================================== ParametersComponent.cpp @@ -430,7 +430,7 @@ LfoParametersComponent::LfoParametersComponent(LfoParameters * lfoParams) speedSlider.setRange(_lfoParamsPtr->LfoSpeed->range.start, _lfoParamsPtr->LfoSpeed->range.end, 0.01); speedSlider.setValue(_lfoParamsPtr->LfoSpeed->get(), dontSendNotification); - speedSlider.setSkewFactor(0.5, false); + speedSlider.setSkewFactor(0.5, false); // GUI側のspeedSliderの値の変化を指数カーブにする。 speedSlider.setPopupDisplayEnabled(true, true, this); speedSlider.setPopupMenuEnabled(true); speedSlider.setTextValueSuffix(" hz"); @@ -570,7 +570,7 @@ FilterParametersComponent::FilterParametersComponent(FilterParameters * filterPa frequencySlider.setRange(_filterParamsPtr->Frequency->range.start, _filterParamsPtr->Frequency->range.end, 0.01); frequencySlider.setValue(_filterParamsPtr->Frequency->get(), dontSendNotification); - frequencySlider.setSkewFactor(0.3, false); + frequencySlider.setSkewFactor(0.3, false); // GUI側のfrequencySliderの値の変化を指数カーブにする。 frequencySlider.setPopupDisplayEnabled(true, true, this); frequencySlider.setPopupMenuEnabled(true); frequencySlider.setTextValueSuffix(" hz");