float contrast(float mValue, float mScale, float mMidPoint) { return clamp( (mValue - mMidPoint) * mScale + mMidPoint, 0.0, 1.0); } float contrast(float mValue, float mScale) { return contrast(mValue, mScale, .5); } vec3 contrast(vec3 mValue, float mScale, float mMidPoint) { return vec3( contrast(mValue.r, mScale, mMidPoint), contrast(mValue.g, mScale, mMidPoint), contrast(mValue.b, mScale, mMidPoint) ); } vec3 contrast(vec3 mValue, float mScale) { return contrast(mValue, mScale, .5); }