#version 120 void main(void) { gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; float x = gl_Position.x; float y = gl_Position.y; float z = gl_Position.z; int depth = int(sqrt(x * x + y * y + z * z)); if (depth > 10000 || depth < 800) { depth = 0; } int red = int(mod(depth, 32)); int green = int(mod((depth / 32), 32)); int blue = int(mod((depth / 1024), 32)); float fRed = float(red) / 32.0; float fGreen = float(green) / 32.0; float fBlue = float(blue) / 32.0; gl_FrontColor = vec4(fRed, fGreen, fBlue, 1.0); }