public void AdjustSaturation(float sat)
{
sat += 1;
float invSat = 1 - sat;
float invLumR = invSat * LUMA_R;
float invLumG = invSat * LUMA_G;
float invLumB = invSat * LUMA_B;
ConcatValues((invLumR + sat), invLumG, invLumB, 0, 0,
invLumR, (invLumG + sat), invLumB, 0, 0,
invLumR, invLumG, (invLumB + sat), 0, 0,
0, 0, 0, 1, 0);
}