Finally working cubemap
This commit is contained in:
1 parent
d132060e19
commit
f413bbe265
16 files changed
+406
-119
No files matched your search
@@ -1,36 +1,23 @@
|
||||
uniform sampler2D Texture;
|
||||
uniform sampler2D NormalMap;
|
||||
uniform int NormalMapExists;
|
||||
uniform float FogBeginDistance;
|
||||
uniform float FogEndDistance;
|
||||
uniform vec4 FogColor;
|
||||
|
||||
varying vec2 texCoord;
|
||||
varying vec3 camVec;
|
||||
varying vec3 lightVec;
|
||||
varying vec3 vertexPos;
|
||||
|
||||
|
||||
void main()
|
||||
{
|
||||
vec3 lVec = lightVec;
|
||||
vec3 cVec = normalize(camVec);
|
||||
vec4 texColor = texture2D(Texture,texCoord).rgba;
|
||||
|
||||
//go-go-go
|
||||
vec3 TexRGB = texture2D(Texture, texCoord.xy).xyz;
|
||||
vec4 fogColor = vec4(0.25, 0.55, 1.0, 1.0);
|
||||
|
||||
vec3 norm = vec3(0.0,0.0,1.0);
|
||||
float fogDistCoef = (vertexPos.z - FogBeginDistance) / (FogEndDistance - FogBeginDistance);
|
||||
|
||||
float shineFactor = 15.0 * pow(max(dot(cVec, norm),0.0),gl_FrontMaterial.shininess) / (129.0 - gl_FrontMaterial.shininess);
|
||||
fogDistCoef = clamp(fogDistCoef, 0.0, 1.0);
|
||||
|
||||
float light_coef = 1.0;
|
||||
|
||||
vec4 ambient = gl_LightSource[0].ambient;
|
||||
vec4 diffuse = gl_FrontMaterial.diffuse * gl_LightSource[0].diffuse * min( max(dot(lVec,norm),0.0), light_coef);
|
||||
vec4 specular = gl_LightSource[0].specular * min(shineFactor, light_coef);
|
||||
|
||||
float fogFactor = min(max(max(abs(vertexPos.x)-FogBeginDistance, abs(vertexPos.z)-FogBeginDistance),0.0)/(FogEndDistance - FogBeginDistance),1.0);
|
||||
vec4 resultColor = mix(texColor, fogColor, fogDistCoef);
|
||||
|
||||
gl_FragColor = mix(vec4(TexRGB,1.0)*ambient+(vec4(TexRGB,1.0)*diffuse+specular), FogColor, fogFactor);
|
||||
gl_FragColor = vec4(resultColor.rgb, 1.0);
|
||||
|
||||
}
|
||||
Reference in new issue
Block a user