X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=shaders%2Fscene_terrain.fs;h=47a98892cd15fb76e89e14ac2643bcb2fe5c3ea9;hb=refs%2Fheads%2Fmaster;hp=d9d0bf119f80746a4a3483e3bf9e0d352a8fa3f8;hpb=0ca7f5ca2560908de1a03db112df67e52b476107;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/shaders/scene_terrain.fs b/shaders/scene_terrain.fs index d9d0bf1..47a9889 100644 --- a/shaders/scene_terrain.fs +++ b/shaders/scene_terrain.fs @@ -1,11 +1,10 @@ uniform sampler2D uTexGarbage; uniform sampler2D uTexGradients; uniform vec3 uCamera; -uniform vec3 uSandColour; +uniform vec4 uSandColour; uniform vec2 uBlendOffset; -uniform vec3 uBoard0; -uniform vec3 uBoard1; +#include "light_clearskies_stddef.glsl" #include "common_scene.glsl" #include "motion_vectors_fs.glsl" @@ -34,11 +33,10 @@ void main() // Colour blending float amtgrass = step(qnorm.y,0.6); - float amtsand = min(max((aCo.y - 10.0) * -0.1,0.0)*qnorm.y,1.0); + float amtsand = clamp( max((aCo.y - 10.0) * -0.1,0.0)*qnorm.y, 0.0, 1.0 ); vec2 uvgradients = aUv + vec2( amtgrass + rgarbage.a*0.8 )*uBlendOffset; vfrag = texture( uTexGradients, uvgradients ).rgb; - vfrag = mix( vfrag, uSandColour, amtsand ); - + vfrag = mix( vfrag, uSandColour.rgb, amtsand*uSandColour.a ); qnorm = mix( qnorm, aNorm.xyz, amtsand ); if( g_light_preview == 1 )