Advertisement
Guest User

Untitled

a guest
Jul 13th, 2014
220
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.04 KB | None | 0 0
  1.     glGenBuffers(1, &VBO);
  2.     glBindBuffer(GL_ARRAY_BUFFER, VBO);
  3.     glBufferData(GL_ARRAY_BUFFER, sizeof(MDVertex) * n, &vertex[0].x, GL_STATIC_DRAW);
  4.  
  5.     USHORT indices[n];
  6.     for (int i = 0; i < n; i++)
  7.         indices[i] = i;
  8.  
  9.     glGenBuffers(1, &IBO);
  10.     glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, IBO);
  11.     glBufferData(GL_ELEMENT_ARRAY_BUFFER, sizeof(USHORT) * n, indices, GL_STATIC_DRAW);
  12.  
  13.     glBindBuffer(GL_ARRAY_BUFFER, VBO);
  14.     glEnableClientState(GL_VERTEX_ARRAY);
  15.     glVertexPointer(3, GL_FLOAT, sizeof(MDVertex), BUFFER_OFFSET(0));
  16.     glEnableClientState(GL_NORMAL_ARRAY);
  17.     glNormalPointer(GL_FLOAT, sizeof(MDVertex), BUFFER_OFFSET(12));
  18.     glEnableClientState(GL_TEXTURE_COORD_ARRAY);
  19.     glTexCoordPointer(2, GL_FLOAT, sizeof(MDVertex), BUFFER_OFFSET(24));
  20.  
  21.     glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, IBO);
  22.  
  23.     glDrawElements(GL_TRIANGLES, n, GL_UNSIGNED_SHORT, BUFFER_OFFSET(0));
  24.  
  25.     glDisableClientState(GL_TEXTURE_COORD_ARRAY);
  26.     glDisableClientState(GL_NORMAL_ARRAY);
  27.     glDisableClientState(GL_VERTEX_ARRAY);
  28.  
  29.     glDeleteBuffers(1, &VBO);
  30.     glDeleteBuffers(1, &IBO);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement