#include "vertex_standard.glsl"
+#include "motion_vectors_vs.glsl"
-uniform mat4 uPv;
uniform mat4x3 uMdl;
+uniform mat4 uPv;
+uniform mat4 uPvmPrev;
out vec4 aColour;
out vec2 aUv;
out vec3 aNorm;
out vec3 aCo;
+out vec3 aWorldCo;
void main()
{
- gl_Position = uPv * vec4( uMdl * vec4(a_co,1.0), 1.0 );
+ vec3 world_pos0 = uMdl * vec4( a_co, 1.0 );
+ vec4 vproj0 = uPv * vec4( world_pos0, 1.0 );
+ vec4 vproj1 = uPvmPrev * vec4( a_co, 1.0 );
+
+ vs_motion_out( vproj0, vproj1 );
+
+ gl_Position = vproj0;
+ aWorldCo = world_pos0;
aColour = a_colour;
aUv = a_uv;
aNorm = mat3(uMdl) * a_norm;