title: When should I set GL_TEXTURE_MIN_FILTER and GL_TEXTURE_MAG_FILTER?
body: <p>By definition the <strong>GL_TEXTURE_MIN_FILTER</strong> is used when the pixel being textured maps to an area that is larger than one texture element. </p>
  
  <p>Say I have a texture with 1024*768 resolution, and I want to map it to a rectangle. The projection matrix is set using:</p>
  
  <pre><code>glOrtho(0, 1024, 0, 768, 0, 1);
  </code></pre>
  
  <p>and the rectangle is set with:</p>
  
  <pre><code>glTexCoord2f(0.0f, 0.0f); glVertex3f(0.0f, 0.0f, 0.0f);
  glTexCoord2f(1.0f, 0.0f); glVertex3f(1024.0f, 0.0f, 0.0f);
  glTexCoord2f(1.0f, 1.0f); glVertex3f(1024.0f, 768.0f, 0.0f);
  glTexCoord2f(0.0f, 1.0f); glVertex3f(0.0f, 768.0f, 0.0f);
  </code></pre>
  
  <p>With the current configuration, my understanding is each pixel on the rectangle is mapped to one single pixel in the texture. </p>
  
  <p>Yet after test I found out the <strong>MIN_FILTER</strong> is working for this configuration. Even if I double the size of the rectangle, namely 2048*1536 and only the lower left corner is shown in the viewport, it's still the MIN_FILTER that is functioning.</p>
  
  <p>Under such situation, my personal understanding is, each pixel in the viewport is mapped to only a quarter pixel in the texture, why it's still <strong>MIN_FILTER</strong> working?</p>
  
  <p>For testing which filter is working, I just comment out the line for setting that filter and see if the result is wrong. If I comment out the <strong>MIN_FILTER</strong> setting line, the result would be totally yellow, cause I did not set the max level of texture to accord with its level. But if I comment out the <strong>MAG_FILTER</strong> line, the result is still correct.</p>