// I'd say it's 8-bit but that's not true, it's 4-bit vec4 col8(vec4 input_colour) { vec4 returnCol; //Prepare for the world's longest if statement if ((input_colour.r > input_colour.g && input_colour.r > input_colour.b) || (input_colour.g > input_colour.r && input_colour.g > input_colour.b) || (input_colour.b > input_colour.r && input_colour.b > input_colour.g)) { if (input_colour.r * 2.0 > input_colour.g + input_colour.b) returnCol = vec4(1.0, 0.0, 0.0, 1.0); //red if (input_colour.g * 2.0 > input_colour.r + input_colour.b) returnCol = vec4(0.0, 1.0, 0.0, 1.0); //green if (input_colour.b * 2.0 > input_colour.r + input_colour.g) returnCol = vec4(0.0, 0.0, 1.0, 1.0); //blue } else { if (input_colour.r + input_colour.g > 2.0 * input_colour.b) returnCol = vec4(1.0, 1.0, 0.0, 1.0); //yellow if (input_colour.g + input_colour.b > 2.0 * input_colour.r) returnCol = vec4(0.0, 1.0, 1.0, 1.0); //cyan if (input_colour.b + input_colour.r > 2.0 * input_colour.g) returnCol = vec4(1.0, 0.0, 1.0, 1.0); //magenta } if ((input_colour.r + input_colour.g + input_colour.b) / 3.0 > 0.8) returnCol = vec4(1.0, 1.0, 1.0, 1.0); //white if ((input_colour.r + input_colour.g + input_colour.b) / 3.0 < 0.2) returnCol = vec4(0.0, 0.0, 0.0, 1.0); //black return returnCol; }
0 Comments
Leave a Reply. |
AuthorHi there, the name's Matthew Jenkinson and I'm currently working at Firesprite. In my spare time I work on programming projects like you see here. Archives
March 2021
CategoriesLinks to each effect in order:
|