title: OpenGL Hemisphere Texture Mapping
body: <p>I need to have a hemisphere in opengl. I found a drawSphere function which I modified to draw half the lats (which ends up drawing half of the sphere) which is what I wanted. It does this correctly.  </p>
  
  <p>However, I don't know what i should do with glTexCoordf to get the textures to map properly onto this half sphere. I'm really not great with opengl, and I've tried countless variations but I just can't get the textures to appear properly on it.</p>
  
  <pre><code>void drawHemisphere(double r, int lats, int longs) 
  {
      int i, j;
      int halfLats = lats / 2; 
      for(i = 0; i &lt;= halfLats; i++) 
      {
          double lat0 = M_PI * (-0.5 + (double) (i - 1) / lats);
          double z0 = sin(lat0);
          double zr0 = cos(lat0);
  
          double lat1 = M_PI * (-0.5 + (double) i / lats);
          double z1 = sin(lat1);
          double zr1 = cos(lat1);
  
          glBegin(GL_QUAD_STRIP);
          for(j = 0; j &lt;= longs; j++)
          {
              double lng = 2 * M_PI * (double) (j - 1) / longs;
              double x = cos(lng);
              double y = sin(lng);
  
              // glTexCoordf()
              glNormal3f(x * zr0, y * zr0, z0);
              glVertex3f(x * zr0, y * zr0, z0);       
  
              // glTexCoordf()
              glNormal3f(x * zr1, y * zr1, z1);
              glVertex3f(x * zr1, y * zr1, z1);
          }
          glEnd();
      }
  }
  </code></pre>
  
  <p>Does anyone have any idea of what values I should be putting in? Or what I need to calculate for it? </p>
  
  <p>Thanks!</p>