aboutsummaryrefslogtreecommitdiffstats
path: root/frag.glsl
diff options
context:
space:
mode:
Diffstat (limited to 'frag.glsl')
-rw-r--r--frag.glsl6
1 files changed, 3 insertions, 3 deletions
diff --git a/frag.glsl b/frag.glsl
index ff88e1f..2f0a367 100644
--- a/frag.glsl
+++ b/frag.glsl
@@ -22,11 +22,11 @@ void main()
vec3 lidir = normalize(lipos - fpos);
float dif = max(dot(norm, lidir), 0.0);
- float spestr = 0.5;
+ float speen = max(sign(dot(lidir, norm)), 0.0);
vec3 vwdir = normalize(-fpos);
- vec3 redir = reflect(-lidir, norm);
+ vec3 mid = normalize(lidir + vwdir);
- float spe = spestr * pow(max(dot(vwdir, redir), 0.0), 32);
+ float spe = pow(max(dot(norm, mid), 0.0), 256) * speen;
color = vec4((amb + dif + spe) * lico * objco, 1.0);
}