attribute vec3 pos; attribute vec2 texcoord; attribute vec3 normal; uniform mat4 M; uniform mat4 P; uniform mat4 V; uniform mat4 U_ProjectorMatrix; uniform mat4 U_ProjectorNoTransScaleMatrix; varying vec2 V_Texcoord; varying vec3 V_WorldPos; varying vec4 V_ProjectCoord; varying vec4 V_ProjectorSpaceFragPos; void main() { V_Texcoord = texcoord; vec4 worldPos = M * vec4(pos, 1.0); V_WorldPos = worldPos.xyz; V_ProjectCoord = U_ProjectorMatrix * worldPos; V_ProjectorSpaceFragPos = U_ProjectorNoTransScaleMatrix * worldPos; gl_Position=P*V*M*vec4(pos,1.0); }