OpenGL2: Fix horribly broken metallic shader.

This commit is contained in:
SmileTheory 2016-03-15 05:20:25 -07:00
parent eb7408ddac
commit f911e32bb0

View file

@ -333,8 +333,9 @@ void main()
// specular red is gloss // specular red is gloss
// specular green is metallicness // specular green is metallicness
float gloss = specular.r; float gloss = specular.r;
specular.rgb = specular.g * diffuse.rgb + vec3(0.04 - 0.04 * specular.g); float metal = specular.g;
diffuse.rgb *= 1.0 - specular.g; specular.rgb = metal * diffuse.rgb + vec3(0.04 - 0.04 * metal);
diffuse.rgb *= 1.0 - metal;
#else #else
// diffuse rgb is diffuse // diffuse rgb is diffuse
// specular rgb is specular reflectance at normal incidence // specular rgb is specular reflectance at normal incidence