swwmgz_m/shaders/glsl/PerfectlyGeneric.fp

15 lines
517 B
GLSL

// perfectly generic cube fake shading
void SetupMaterial( inout Material mat )
{
mat.Base = getTexel(vTexCoord.st);
float mixfct = mix(1.,.5,floor(abs(vTexCoord.s-.5)*2.133333));
mixfct = mix(mixfct,.5,floor(abs(vTexCoord.t-.5)*2.13333));
mat.Base.rgb *= mixfct;
vec3 light = vec3(-.6,.7,.8);
float val = max(dot(normalize(vEyeNormal.xyz),light),.25);
val += .2*pow(max(dot(normalize(vEyeNormal.xyz),light),0.),4.);
mat.Base.rgb *= val;
mat.Bright = vec4(1.);
mat.Normal = ApplyNormalMap(vTexCoord.st);
}