Advertisement
Guest User

Untitled

a guest
Aug 25th, 2016
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.81 KB | None | 0 0
  1. void DrawCube(GLfloat centerPosX, GLfloat centerPosY, GLfloat centerPosZ, GLfloat edgeLength)
  2. {
  3. GLfloat halfSideLength = edgeLength * 0.5f;
  4.  
  5. GLfloat vertices[] =
  6. {
  7. // front face
  8. centerPosX - halfSideLength, centerPosY + halfSideLength, centerPosZ + halfSideLength, // top left
  9. centerPosX + halfSideLength, centerPosY + halfSideLength, centerPosZ + halfSideLength, // top right
  10. centerPosX + halfSideLength, centerPosY - halfSideLength, centerPosZ + halfSideLength, // bottom right
  11. centerPosX - halfSideLength, centerPosY - halfSideLength, centerPosZ + halfSideLength, // bottom left
  12.  
  13. // back face
  14. centerPosX - halfSideLength, centerPosY + halfSideLength, centerPosZ - halfSideLength, // top left
  15. centerPosX + halfSideLength, centerPosY + halfSideLength, centerPosZ - halfSideLength, // top right
  16. centerPosX + halfSideLength, centerPosY - halfSideLength, centerPosZ - halfSideLength, // bottom right
  17. centerPosX - halfSideLength, centerPosY - halfSideLength, centerPosZ - halfSideLength, // bottom left
  18.  
  19. // left face
  20. centerPosX - halfSideLength, centerPosY + halfSideLength, centerPosZ + halfSideLength, // top left
  21. centerPosX - halfSideLength, centerPosY + halfSideLength, centerPosZ - halfSideLength, // top right
  22. centerPosX - halfSideLength, centerPosY - halfSideLength, centerPosZ - halfSideLength, // bottom right
  23. centerPosX - halfSideLength, centerPosY - halfSideLength, centerPosZ + halfSideLength, // bottom left
  24.  
  25. // right face
  26. centerPosX + halfSideLength, centerPosY + halfSideLength, centerPosZ + halfSideLength, // top left
  27. centerPosX + halfSideLength, centerPosY + halfSideLength, centerPosZ - halfSideLength, // top right
  28. centerPosX + halfSideLength, centerPosY - halfSideLength, centerPosZ - halfSideLength, // bottom right
  29. centerPosX + halfSideLength, centerPosY - halfSideLength, centerPosZ + halfSideLength, // bottom left
  30.  
  31. // top face
  32. centerPosX - halfSideLength, centerPosY + halfSideLength, centerPosZ + halfSideLength, // top left
  33. centerPosX - halfSideLength, centerPosY + halfSideLength, centerPosZ - halfSideLength, // top right
  34. centerPosX + halfSideLength, centerPosY + halfSideLength, centerPosZ - halfSideLength, // bottom right
  35. centerPosX + halfSideLength, centerPosY + halfSideLength, centerPosZ + halfSideLength, // bottom left
  36.  
  37. // bottom face // right face
  38. centerPosX - halfSideLength, centerPosY - halfSideLength, centerPosZ + halfSideLength, // top left
  39. centerPosX - halfSideLength, centerPosY - halfSideLength, centerPosZ - halfSideLength, // top right
  40. centerPosX + halfSideLength, centerPosY - halfSideLength, centerPosZ - halfSideLength, // bottom right
  41. centerPosX + halfSideLength, centerPosY - halfSideLength, centerPosZ + halfSideLength, // bottom left centerPosX + halfSideLength, centerPosY - halfSideLength, centerPosZ - halfSideLength, // bottom right centerPosX + halfSideLength, centerPosY - halfSideLength, centerPosZ + halfSideLength // bottom left
  42. };
  43.  
  44. GLubyte colour[] = {
  45. 255,255,0, //yellow
  46. 255,255,0,
  47. 255,255,0,
  48. 255,255,0,
  49. 0,0,255, // blue
  50. 0,0,255,
  51. 0,0,255,
  52. 0,0,255,
  53. 255,0,0, // red
  54. 255,0,0,
  55. 255,0,0,
  56. 255,0,0,
  57. 0,255,0, // lime
  58. 0,255,0,
  59. 0,255,0,
  60. 0,255,0,
  61. 102,0,204, // purple
  62. 102,0,204,
  63. 102,0,204,
  64. 102,0,204,
  65. 192,192,192, // white
  66. 192,192,192,
  67. 192,192,192,
  68. 192,192,192,
  69. };
  70.  
  71. glEnableClientState(GL_VERTEX_ARRAY);
  72. glEnableClientState(GL_COLOR_ARRAY);
  73. glVertexPointer(3, GL_FLOAT, 0, vertices);
  74. glColorPointer(3,GL_UNSIGNED_BYTE, 0, colour);
  75. glDrawArrays(GL_QUADS, 0, 24);
  76. glDisableClientState(GL_VERTEX_ARRAY);
  77. glDisableClientState(GL_COLOR_ARRAY);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement