X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=shaders%2Fscoretext.vs;h=ab714d6e5ec228b288efa15e9fb21dd6faa5e2dc;hb=f7db507815e2822d971031c30f25e02b45e9c914;hp=bc7db92104b2582d4b3d1d0f04b0e77c272425ad;hpb=4c49b11c317034277be4d117c5d2847ef2f3492b;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/shaders/scoretext.vs b/shaders/scoretext.vs index bc7db92..ab714d6 100644 --- a/shaders/scoretext.vs +++ b/shaders/scoretext.vs @@ -1,7 +1,9 @@ #include "vertex_standard.glsl" +#include "motion_vectors_vs.glsl" -uniform mat4 uPv; uniform mat4x3 uMdl; +uniform mat4 uPv; +uniform mat4 uPvmPrev; uniform vec3 uInfo; @@ -13,12 +15,12 @@ out vec3 aWorldCo; void main() { - float w = a_colour.g + fract(uInfo.z+0.5)-0.75; + float w = (a_colour.g * 8.0)-5.5 + fract(uInfo.z+0.5); float c = -cos(w*0.2); float s = -sin(w*0.2); float r = 0.2; - float w1 = clamp( w*4.0 - a_co.y*10.0, -1.0, 1.0 ) *(3.14159265*0.5); + float w1 = clamp( w*4.0 - a_co.y*10.0, -1.0, 1.0 ) * (3.14159265*0.5); float c1 = cos(w1); float s1 = sin(w1); @@ -30,8 +32,16 @@ void main() mlocal[2] = vec3(0.0,0.0,1.0); mlocal[3] = vec3(c*r,uInfo.y*0.875 + s*r,uInfo.x*0.5); - vec3 world_pos = uMdl * vec4(mlocal * vec4(a_co,1.0),1.0); - gl_Position = uPv * vec4( world_pos, 1.0 ); + vec3 local_pos = mlocal * vec4( a_co, 1.0 ); + vec3 world_pos = uMdl * vec4( local_pos, 1.0 ); + + vec4 vproj0 = uPv * vec4( world_pos, 1.0 ); + vec4 vproj1 = uPvmPrev * vec4( local_pos, 1.0 ); + + // Output + vs_motion_out( vproj0, vproj1 ); + + gl_Position = vproj0; aColour = a_colour; aUv = a_uv + vec2( floor(uInfo.z+0.5)*(1.0/64.0), yoff ); aNorm = mat3(uMdl) * mat3(mlocal) * a_norm;