Use specmap value

This commit is contained in:
Vincent Lejeune 2014-10-05 02:30:01 +02:00
parent 88954a5d88
commit 0121ae8db6
2 changed files with 10 additions and 2 deletions

View File

@ -1,9 +1,11 @@
#ifndef GL_ARB_bindless_texture #ifndef GL_ARB_bindless_texture
uniform sampler2D Albedo; uniform sampler2D Albedo;
uniform sampler2D SpecMap;
#endif #endif
#ifdef GL_ARB_bindless_texture #ifdef GL_ARB_bindless_texture
flat in sampler2D handle; flat in sampler2D handle;
flat in sampler2D secondhandle;
#endif #endif
in vec2 uv; in vec2 uv;
in vec4 color; in vec4 color;
@ -15,12 +17,14 @@ void main(void)
{ {
#ifdef GL_ARB_bindless_texture #ifdef GL_ARB_bindless_texture
vec4 col = texture(handle, uv); vec4 col = texture(handle, uv);
float specmap = texture(secondhandle, uv).g;
#ifdef SRGBBindlessFix #ifdef SRGBBindlessFix
col.xyz = pow(col.xyz, vec3(2.2)); col.xyz = pow(col.xyz, vec3(2.2));
#endif #endif
#else #else
vec4 col = texture(Albedo, uv); vec4 col = texture(Albedo, uv);
float specmap = texture(SpecMap, uv).g;
#endif #endif
col.xyz *= pow(color.xyz, vec3(2.2)); col.xyz *= pow(color.xyz, vec3(2.2));
FragColor = vec4(getLightFactor(col.xyz, vec3(1.), 1.), 1.); FragColor = vec4(getLightFactor(col.xyz, vec3(specmap), 1.), 1.);
} }

View File

@ -1,9 +1,11 @@
#ifndef GL_ARB_bindless_texture #ifndef GL_ARB_bindless_texture
uniform sampler2D Albedo; uniform sampler2D Albedo;
uniform sampler2D SpecMap;
#endif #endif
#ifdef GL_ARB_bindless_texture #ifdef GL_ARB_bindless_texture
flat in sampler2D handle; flat in sampler2D handle;
flat in sampler2D secondhandle;
#endif #endif
in vec2 uv; in vec2 uv;
in vec4 color; in vec4 color;
@ -15,13 +17,15 @@ void main(void)
{ {
#ifdef GL_ARB_bindless_texture #ifdef GL_ARB_bindless_texture
vec4 col = texture(handle, uv); vec4 col = texture(handle, uv);
float specmap = texture(secondhandle, uv).g;
#ifdef SRGBBindlessFix #ifdef SRGBBindlessFix
col.xyz = pow(col.xyz, vec3(2.2)); col.xyz = pow(col.xyz, vec3(2.2));
#endif #endif
#else #else
vec4 col = texture(Albedo, uv); vec4 col = texture(Albedo, uv);
float specmap = texture(SpecMap, uv).g;
#endif #endif
col.xyz *= pow(color.xyz, vec3(2.2)); col.xyz *= pow(color.xyz, vec3(2.2));
if (col.a * color.a < 0.5) discard; if (col.a * color.a < 0.5) discard;
FragColor = vec4(getLightFactor(col.xyz, vec3(1.), 1.), 1.); FragColor = vec4(getLightFactor(col.xyz, vec3(1.), specmap), 1.);
} }