159b2e6871c65f58fdad78cd7229c292f6a177578Scott Bartauniform mat4 g_WorldViewProjectionMatrix;
259b2e6871c65f58fdad78cd7229c292f6a177578Scott Bartaattribute vec3 inPosition;
359b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta
459b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta#if defined(HAS_COLORMAP) || (defined(HAS_LIGHTMAP) && !defined(SEPARATE_TEXCOORD))
559b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    #define NEED_TEXCOORD1
659b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta#endif
759b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta
859b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta#ifdef NEED_TEXCOORD1
959b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    attribute vec3 inTexCoord;
1059b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    varying vec3 texCoord1;
1159b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta#endif
1259b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta
1359b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta#ifdef SEPARATE_TEXCOORD
1459b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    attribute vec3 inTexCoord2;
1559b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    varying vec3 texCoord2;
1659b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta#endif
1759b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta
1859b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta#ifdef HAS_VERTEXCOLOR
1959b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    attribute vec4 inColor;
2059b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    varying vec4 vertColor;
2159b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta#endif
2259b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta
2359b2e6871c65f58fdad78cd7229c292f6a177578Scott Bartavoid main(){
2459b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    #ifdef NEED_TEXCOORD1
2559b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta        texCoord1 = inTexCoord;
2659b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    #endif
2759b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta
2859b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    #ifdef SEPARATE_TEXCOORD
2959b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta        texCoord2 = inTexCoord2;
3059b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    #endif
3159b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta
3259b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    #ifdef HAS_VERTEXCOLOR
3359b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta        vertColor = inColor;
3459b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    #endif
3559b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta
3659b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta    gl_Position = g_WorldViewProjectionMatrix * vec4(inPosition, 1.0);
3759b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta}
3859b2e6871c65f58fdad78cd7229c292f6a177578Scott Barta
39