kernel Sepia < nameSpace: "popforge::ImageProcessing"; vendor: "joa ebert"; version: 1; description: "a real sepia using y transform"; > { void evaluatePixel(in image3 source, out pixel3 result) { pixel3 color = sampleLinear( source, outCoord() ); float y = 0.299 * color.r + 0.587 * color.g + 0.114 * color.b; // use min/max instead of if's float r = min(1.0,y + 0.19); float g = max(0.0,y - 0.055); float b = max(0.0,y - 0.22); result = pixel3(r,g,b); } }