title: Draw points with integer coordinates in OpenGL 3.3?
body: <p>I know Normalized Device Coordinates a little and I know when I use float between -1.0 and 1.0, I can get the output.</p>
  
  <p>However, when I want to <strong>use integers as vertex's position attribute</strong>, I can't get any rendering output. I have tried to use <code>GL_INT</code> and <code>GL_TRUE</code> in <code>glVertexAttribPointer</code> but it doesn't work.</p>
  
  <p>eg. </p>
  
  <pre><code>std::vector&lt;GLint&gt; vex =
  {
      0, 0, 0,
      4, 5, 0
  };
  glBufferData(GL_ARRAY_BUFFER, vex.size() * sizeof(GLint), vex.data(), GL_STATIC_DRAW);
  glVertexAttribPointer(0, 3, GL_INT, GL_TRUE, 3 * sizeof(GLint), (void*)0);
  
  // in the render loop
  glBindVertexArray(VAO);
  glDrawArrays(GL_LINES, 0, 2);
  </code></pre>
  
  <p>I use a basic vertex shader as follow:</p>
  
  <pre><code>#version 330 core
  layout (location = 0) in vec3 aPos;
  void main()
  {
      gl_Position = vec4(aPos.x, aPos.y, aPos.z, 1.0);
  }
  </code></pre>
  
  <p>I considered the <code>GL_TRUE</code> will normalize the integer positions into [-1.0, 1.0]. </p>
  
  <p>Maybe I ignored something important. So how can I render my point using integer coordinates correctly?</p>
  
  <p>About <code>glVertexAttribPointer()</code> I have read this <a href="http://www.informit.com/articles/article.aspx?p=2033340&amp;seqNum=3" rel="nofollow noreferrer">reference</a> while I still can't get what I want.</p>