attribute vec3 normals;
attribute vec2 texCoord1;

varying vec2 texCoord;
varying float colLol;

varying vec3 eye;
varying vec3 norm;

float disto = 12.0;
uniform float animNoise;

uniform mat4 exfCamInverse;
uniform vec3 exfCamPos;

void main()
{
 vec3 pos = gl_Vertex,xyz;
 texCoord = texCoord1;
 float i = (noise(pos.xyz*0.2+vec3(animNoise,animNoise,animNoise), exfNoisePg) + 1.0) * 0.5;
 colLol = i;
 pos = pos;// + normals*i*animNoise*1.0;
 
 eye = (exfCamInverse*gl_ModelViewMatrix*gl_Vertex).xyz - exfCamPos;
 
 mat3 camRotInv;
 camRotInv[0] = exfCamInverse[0].xyz;
 camRotInv[1] = exfCamInverse[1].xyz;
 camRotInv[2] = exfCamInverse[2].xyz;
 norm = (camRotInv*gl_NormalMatrix)*normals;
 
 gl_Position = gl_ModelViewProjectionMatrix * vec4(pos,1.0);

}