title: OpenGL VAO, VBO equivalent in DirectX11
body: <p>I am working on implementing a directx11 instance of our game engine and I am a newbie in 3d game programming.</p>
  
  <p>I know a little about DirectX11 graphics pipeline and shaders and what vertex buffers, input layout, etc are.</p>
  
  <p>While looking at the one of the APIs the code is something like:</p>
  
  <pre><code>glBindVertexArray(current_vao);
  glBindBuffer(GL_ARRAY_BUFFER, current_vbo);
  glBufferData(GL_ARRAY_BUFFER, sizeof(Vector3) * Vertices.size(), &amp;Vertices.front(), GL_DYNAMIC_DRAW);
  glEnableVertexAttribArray(0);
  glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, sizeof(Vector3), reinterpret_cast&lt;void*&gt;(0));
  glDisableVertexAttribArray(1);
  glDisableVertexAttribArray(2);
  glDisableVertexAttribArray(3);
  glDisableVertexAttribArray(4);
  glDisableVertexAttribArray(5);
  glDisableVertexAttribArray(6);
  glBindBuffer(GL_ARRAY_BUFFER, 0);
  </code></pre>
  
  <p>What is this <code>VAO</code> and <code>VBO</code> equivalent in <code>DirectX11</code> ? What exactly is this code doing ?</p>