//-----------------------------------------
// LScript Image Filter - www.StephenCulley.co.uk - Saturation
//
@version 2.5
@warnings
@script image
Saturation;
create
{
Saturation = 100;
setdesc("www.StephenCulley.co.uk - Saturation : " + Saturation);
}
process: ifo
{
for(i = 1;i <= ifo.height;++i)
{
for(j = 1;j <= ifo.width;++j)
{
Avg = 256 * (ifo.red[j,i] + ifo.green[j,i] + ifo.blue[j,i]) / 3;
R = 256 * ifo.red[j,i];
G = 256 * ifo.green[j,i];
B = 256 * ifo.blue[j,i];
ifo.red[j,i] = (1 / 256) * (R + Saturation / 100 * (R - Avg));
ifo.green[j,i] = (1 / 256) * (G + Saturation / 100 * (G - Avg));
ifo.blue[j,i] = (1 / 256) * (B + Saturation / 100 * (B - Avg));
}
}
}
load: what,io
{
if(what == SCENEMODE)
{
Saturation = number(io.read());
setdesc("www.StephenCulley.co.uk - Saturation : " + Saturation);
}
}
save: what,io
{
if(what == SCENEMODE)
{
io.writeln(Saturation);
}
}
options
{
reqbegin("Saturation");
c1 = ctlnumber("Amount",Saturation);
return if !reqpost();
Saturation = getvalue(c1);
setdesc("www.StephenCulley.co.uk - Saturation : " + Saturation);
reqend();
}
|