diff options
author | Ton Roosendaal <ton@blender.org> | 2012-12-21 22:10:01 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2012-12-21 22:10:01 +0400 |
commit | 692aa18b76aede95908f6bd9f51931947777fbb2 (patch) | |
tree | 979f23f5d39ce5a5f10d6c3f3de335fccca89037 /source/blender/gpu | |
parent | c9b8839237e8841d1709b09bb373f6bb6bf5ec86 (diff) |
Additional fix in glsl shaders: "Darken" was using different formula as render.
"Divide" still differs too for division by zero - cannot find this yet...
Diffstat (limited to 'source/blender/gpu')
-rw-r--r-- | source/blender/gpu/shaders/gpu_shader_material.glsl | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/source/blender/gpu/shaders/gpu_shader_material.glsl b/source/blender/gpu/shaders/gpu_shader_material.glsl index c6b0a758208..e89be91c89a 100644 --- a/source/blender/gpu/shaders/gpu_shader_material.glsl +++ b/source/blender/gpu/shaders/gpu_shader_material.glsl @@ -888,11 +888,11 @@ void mtex_rgb_dark(vec3 outcol, vec3 texcol, float fact, float facg, out vec3 in fact *= facg; facm = 1.0-fact; - col = fact*texcol.r; + col= texcol.r + ((1.0 -texcol.r)*facm); if(col < outcol.r) incol.r = col; else incol.r = outcol.r; - col = fact*texcol.g; + col= texcol.g + ((1.0 -texcol.g)*facm); if(col < outcol.g) incol.g = col; else incol.g = outcol.g; - col = fact*texcol.b; + col= texcol.b + ((1.0 -texcol.b)*facm); if(col < outcol.b) incol.b = col; else incol.b = outcol.b; } @@ -901,7 +901,6 @@ void mtex_rgb_light(vec3 outcol, vec3 texcol, float fact, float facg, out vec3 i float facm, col; fact *= facg; - facm = 1.0-fact; col = fact*texcol.r; if(col > outcol.r) incol.r = col; else incol.r = outcol.r; |