SkyBox.frag 699 B

12345678910111213141516171819202122232425262728
  1. uniform samplerCube lightCube;
  2. varying vec4 vertexColor;
  3. varying vec3 normal;
  4. uniform vec4 ambient_color;
  5. varying vec3 worldNormal;
  6. void main()
  7. {
  8. vec4 texColor = textureCube(lightCube, worldNormal * -1.0);
  9. vec4 color = vec4(1.0,1.0,1.0,1.0) + ambient_color;
  10. color = clamp((color*vertexColor*texColor), 0.0, 1.0);
  11. // fog
  12. const float LOG2 = 1.442695;
  13. float z = gl_FragCoord.z / gl_FragCoord.w;
  14. float fogFactor = exp2( -gl_Fog.density *
  15. gl_Fog.density *
  16. z *
  17. z *
  18. LOG2 );
  19. fogFactor = clamp(fogFactor, 0.0, 1.0);
  20. color = mix(gl_Fog.color, color, fogFactor );
  21. color.a = vertexColor.a * texColor.a;
  22. gl_FragColor = color;
  23. }