diff options
| author | Alexander M Pickering <alex@cogarr.net> | 2025-01-21 16:02:51 -0600 |
|---|---|---|
| committer | Alexander M Pickering <alex@cogarr.net> | 2025-01-21 16:02:51 -0600 |
| commit | 0370d64b3bd7914be55358817e52bbc8a529a7d3 (patch) | |
| tree | a717bb9582f8a4c8dc7caf0d455e25113c7b8704 /src/shaders/land.frag | |
| parent | da9dd31f504d30f33922cdf362a7c01673a6b927 (diff) | |
| download | ggj25-0370d64b3bd7914be55358817e52bbc8a529a7d3.tar.gz ggj25-0370d64b3bd7914be55358817e52bbc8a529a7d3.tar.bz2 ggj25-0370d64b3bd7914be55358817e52bbc8a529a7d3.zip | |
work
Diffstat (limited to 'src/shaders/land.frag')
| -rw-r--r-- | src/shaders/land.frag | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/src/shaders/land.frag b/src/shaders/land.frag new file mode 100644 index 0000000..3c23990 --- /dev/null +++ b/src/shaders/land.frag @@ -0,0 +1,50 @@ +precision mediump float; +uniform vec4 black; +uniform vec4 outline; +uniform vec4 highlight; +uniform vec4 foreground; +uniform vec4 midground; +uniform vec4 shadow; +uniform vec4 background; +uniform vec4 lamp1; //vec3 position, float strength +uniform vec4 lamp2; +uniform vec4 lamp3; // max 3 lamps per shaded vertex +varying vec2 worldxy; +varying mat4 pre; + +// Author @patriciogv - 2015 +float random (vec2 st) { + return fract( + sin( + dot(st.xy,vec2(12.9898,78.233)) + ) * + 43758.5453123 + ); +} + +void main() { + vec4 coord = gl_FragCoord + vec4(worldxy * 256., 0, 0); + /* + coord.x -= worldxy.x; + coord.y -= worldxy.y; + */ + //coord = coord / 1000.; + float color = 0.; + vec2 lamppos = (lamp1.xy * 256.) - (worldxy * 1.); + color += (lamp1.w * 256.) - distance((lamp1.xy * 256.) - worldxy, coord.xy); + /* + if(color > 1.) + gl_FragColor = highlight; + else if(color > 0.8) + gl_FragColor = foreground; + else if(color > 0.6) + gl_FragColor = midground; + else if(color > 0.4) + gl_FragColor = background; + else if(color > 0.2) + gl_FragColor = shadow; + else + gl_FragColor = black; + */ + gl_FragColor = vec4(color / (256. * lamp1.w), color / (256. * lamp1.w), color / (256. * lamp1.w),1.); +} |
