title: How to setup a c++ project for 2D graphics with hardware accelleration
body: <p>I'm trying to create a project in c++ that emulates the rendering pipeline to get a better understanding of how it works. I also want to use hardware acceleration (using compute shader programs) to increase the speed of the program, but I can't find much helpful information on the internet. I'm thinking of using OpenGL for the 2d graphics but to increase performance I need to disable the 3d rendering stage so I can have purely 2d graphics. The objectives of the program are</p>
  <ol>
  <li><p>Vector object <code>vec&lt;int size, T&gt;</code></p>
  </li>
  <li><p>Vertex object <code>vert a(vec&lt;3,int&gt; pos, vec&lt;4,int&gt; col)</code></p>
  </li>
  <li><p>Place pixel <code>gfxPixel(vert a)</code></p>
  </li>
  <li><p>Create Line <code>gfxLine(vert a, vert b)</code> (with interpolation)</p>
  </li>
  <li><p>Create face <code>gfxFace(vert a, vert b, vert c)</code> (with interpolation)</p>
  </li>
  <li><p>Matrices and other mathematical objects for 3d rendering (later on)</p>
  </li>
  </ol>
  <p>How can I use hardware acceleration for the graphics that I plan to implement with OpenGL for maximum speed? I plan to implement the functions from scratch (apart from the <code>gfxPixel</code> command as that seems to be fundemental). If theres any help on how I should setup this project that would be great help thanks.</p>