
|
Downloads
Demo: geexlab-demopack-gl21/d63-matrix-color-formula/main.xml
How to run the demo?
Download and unzip GeeXLab and the demopack where you want, launch GeeXLab and drop the demo (main.xml) in GeeXLab. This demo requires OpenGL 2.1+. |
In the following tweet, iq gives the formula that creates the greenish ambiance of the Matrix movie:
The "Matrix Color" formula. pic.twitter.com/1Iuw9GCQdB
— inigo quilez (@iquilezles) September 23, 2021
I coded this small demo that allows you to play with the color exponents:
The pixel shader:
#version 120
uniform sampler2D tex0;
uniform vec4 exponents; // vec4(1.5, 0.8, 1.5, 0.0)
float separator(float mouse_x, float vseparator_width, float uv_x)
{
float separator_posx = mouse_x;
float a1 = smoothstep(separator_posx - vseparator_width, separator_posx, uv_x);
float a2 = smoothstep(separator_posx + vseparator_width, separator_posx, uv_x);
return 1.0- a1*a2;
}
void main(void)
{
vec2 uv = gl_TexCoord[0].xy;
uv.y *= -1.0;
vec4 color = texture2D(tex0, uv * vec2(2.0, 1.0));
if (uv.x>0.5)
color.rgb = pow(color.rgb, exponents.rgb);
float sep = separator(0.5, 0.01, uv.x);
gl_FragColor = color * sep;
}