[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: playground/games/astrododge/data/shaders
From: Rivo Laks <rivolaks () hot ! ee>
Date: 2008-09-17 16:10:16
Message-ID: 1221667816.335124.20116.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 861933 by rivol:
Better sun rendering (but maybe also a bit slower, not sure)
M +17 -8 space.frag
--- trunk/playground/games/astrododge/data/shaders/space.frag #861932:861933
@@ -3,16 +3,25 @@
void main()
{
- vec3 L = normalize(vec3(gl_LightSource[0].position));
- vec3 V = normalize(viewDir);
+ vec3 L = normalize(vec3(gl_LightSource[0].position));
+ vec3 V = normalize(viewDir);
- vec3 basecolor = vec3(0.1);
- vec3 suncolor = vec3(6.0, 5.2, 4.0);
+ vec3 basecolor = vec3(0.1);
+ vec3 suncolor = vec3(6.0, 5.2, 4.0);
- vec3 color = basecolor + pow(max(dot(L, V) + 0.0, 0.0), 4.0) * suncolor*0.7;
- if (dot(L, V) > 0.995) {
- color = suncolor;
+ vec3 color = basecolor;
+ float dist = 1-dot(L, V);
+
+ const float sunsize = 0.004;
+ const float coronasize = 0.4;
+ const float coronastrength = 0.3;
+
+ if (dist < sunsize) {
+ color += suncolor;
+ } else if (dist < sunsize+coronasize) {
+ float f = (sunsize+coronasize - dist) / coronasize;
+ color += suncolor * coronastrength * f*f*f*f;
}
- gl_FragColor = vec4(color, 1.0);
+ gl_FragColor = vec4(color, 1.0);
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic