11#if GLUP_PRIMITIVE_DIMENSION==2 
   16#ifdef GLUP_NO_GEOMETRY_SHADER 
   17    vec4 vertex_clip_space;
 
   21#if GLUP_PRIMITIVE_DIMENSION==2 
   23#  ifdef GLUP_NO_GEOMETRY_SHADER 
   31    if(glupIsEnabled(GLUP_VERTEX_COLORS)) {
 
   32        VertexOut.color = color_in;
 
   34    if(glupIsEnabled(GLUP_TEXTURING)) {
 
   35        if(glupIsEnabled(GLUP_INDIRECT_TEXTURING)) {
 
   36            VertexOut.tex_coord = tex_coord_in;
 
   39                GLUP.texture_matrix * tex_coord_in;
 
   43#ifndef GLUP_NO_GL_CLIPPING 
   44    if(glupIsEnabled(GLUP_CLIPPING)) {
 
   45        gl_ClipDistance[0] = 
dot(
 
   46            vertex_in, GLUP.world_clip_plane
 
   49        gl_ClipDistance[0] = 0.0;
 
   53#if GLUP_PRIMITIVE_DIMENSION==2 
   55        glupIsEnabled(GLUP_LIGHTING) &&
 
   56        glupIsEnabled(GLUP_VERTEX_NORMALS)
 
   58        VertexOut.normal = GLUP.normal_matrix * normal_in.xyz;
 
   62    gl_Position = GLUP.modelviewprojection_matrix * vertex_in;
 
   64#if GLUP_PRIMITIVE_DIMENSION==2 
   65#  ifdef GLUP_NO_GEOMETRY_SHADER 
   66    VertexOut.vertex_clip_space = gl_Position;
 
   67    if(glupIsEnabled(GLUP_DRAW_MESH)) {
 
   70        int lv = gl_VertexID % glup_primitive_nb_vertices;
 
   71        VertexOut.mesh_tex_coord = 
vec4(
 
T dot(const vecng< 3, T > &v1, const vecng< 3, T > &v2)
Computes the dot product of 2 vectors.   vecng
vecng< 3, Numeric::float64 > vec3
Represents points and vectors in 3d.
vecng< 4, Numeric::float64 > vec4
Represents points and vectors in 4d.