Do not require a curve for the concave case (test helper)
This commit is contained in:
parent
f5d61fe183
commit
06d111cbd4
2 changed files with 7 additions and 3 deletions
|
|
@ -1518,7 +1518,13 @@ float sfz::Region::velocityCurve(float velocity) const noexcept
|
|||
{
|
||||
ASSERT(velocity >= 0.0f && velocity <= 1.0f);
|
||||
|
||||
float gain = std::fabs(ampVeltrack) * (1.0f - velCurve->evalNormalized(velocity));
|
||||
float gain;
|
||||
if (velCurve)
|
||||
gain = velCurve->evalNormalized(velocity);
|
||||
else
|
||||
gain = velocity * velocity;
|
||||
|
||||
gain = std::fabs(ampVeltrack) * (1.0f - gain);
|
||||
gain = (ampVeltrack < 0) ? gain : (1.0f - gain);
|
||||
|
||||
return gain;
|
||||
|
|
|
|||
|
|
@ -569,8 +569,6 @@ void sfz::Synth::finalizeSfzLoad()
|
|||
if (!region->velocityPoints.empty())
|
||||
region->velCurve = Curve::buildFromVelcurvePoints(
|
||||
region->velocityPoints, Curve::Interpolator::Linear);
|
||||
else
|
||||
region->velCurve = resources.curves.getCurve(4);
|
||||
|
||||
region->registerPitchWheel(0);
|
||||
region->registerAftertouch(0);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue