way better cloud data
[carveJwlIkooP6JGAAIwe30JlM.git] / shaders / cloud.vs
index 9bac3463dbcfe65f2288d684f5b7e0d98ea94170..431afd05c28f3163ad0c42c9b373231d21b59758 100644 (file)
@@ -1,6 +1,5 @@
 layout (location=0) in vec4 a_co;
-layout (location=1) in vec4 a_norm;
-layout (location=2) in vec4 a_colour;
+layout (location=1) in vec4 a_colour;
 
 #include "motion_vectors_vs.glsl"
 
@@ -12,7 +11,6 @@ uniform vec2 uTime;
 uniform vec4 uTransform;
 
 out vec4 aColour;
-out vec3 aNorm;
 out vec3 aWorldCo;
 out vec3 aCo;
 
@@ -40,22 +38,20 @@ void main()
 
 
    vec3 center = vec3(0.5);
-   vec3 lco = mapP(mco-center);
-   mco = lco + center;
+   vec3 lco = mapP(mco);
 
    vec3 world_pos0 = uMdl     * vec4( mco, 1.0 );
    vec4 vproj0     = uPv      * vec4( world_pos0, 1.0 );
    vec4 vproj1     = uPvmPrev * vec4( mco, 1.0 );
 
    float t = max(0.0,uTime.y);
-   float scaler = smoothstep(0.6,0.58,length(lco.xz*vec2(0.7,1.0)));
+   float scaler = smoothstep(0.6,0.58,length(lco.xz));
 
    vs_motion_out( vproj0, vproj1 );
 
    gl_Position = vproj0;
-   gl_PointSize = (8.0*uTransform.w*scaler) / (gl_Position.z + 0.01);
+   gl_PointSize = (9.0*uTransform.w*scaler) / (gl_Position.z + 0.01);
    aWorldCo = world_pos0;
-   aColour = a_colour*scaler*(0.3+a_co.y)+pow(1.0-a_co.y,16.0);
+   aColour = a_colour*scaler;
    aCo = mco;
-   aNorm = uNormMtx * a_norm.xyz;
 }