// GL Shading Language version 1.0 Fragment Shader
//  Orion Sky Lawlor, olawlor@acm.org, 2005/2/10 (Public Domain)

// Vertex/fragment shader interface
varying vec4 world; // World position
varying vec4 worldN; // World normal
varying vec4 albedo; // Material diffuse color
varying vec4 viewdir; // Viewer direction (to camera)

uniform sampler3D myNoise;

void main(void)
{
	vec4 N=worldN;
	N+=0.2*(texture3D(myNoise,vec3(world*10.0))-0.5);
	vec4 R=reflect(-viewdir,normalize(N));
	gl_FragColor=texture3D(myNoise,vec3(normalize(R)));
}
