Advertisement
Guest User

Untitled

a guest
Dec 15th, 2019
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.77 KB | None | 0 0
  1. void StudentRenderer::clearStudentData()
  2. {
  3. if (vbo_position_cube)
  4. {
  5. glDeleteBuffers(1, &vbo_position_cube);
  6. vbo_position_cube = 0;
  7. }
  8. if (vbo_normal_cube)
  9. {
  10. glDeleteBuffers(1, &vbo_normal_cube);
  11. vbo_normal_cube = 0;
  12. }
  13. if (vbo_texture_cube)
  14. {
  15. glDeleteBuffers(1, &vbo_texture_cube);
  16. vbo_texture_cube = 0;
  17. }
  18. if (vao_cube)
  19. {
  20. glDeleteVertexArrays(1, &vao_cube);
  21. vao_cube = 0;
  22. }
  23.  
  24. if (vbo_position_sphere)
  25. {
  26. glDeleteBuffers(1, &vbo_position_sphere);
  27. vbo_position_sphere = 0;
  28. }
  29. if (vbo_normal_sphere)
  30. {
  31. glDeleteBuffers(1, &vbo_normal_sphere);
  32. vbo_normal_sphere = 0;
  33. }
  34. if (vbo_texture_sphere)
  35. {
  36. glDeleteBuffers(1, &vbo_texture_sphere);
  37. vbo_texture_sphere = 0;
  38. }
  39. if (vbo_elements_sphere)
  40. {
  41. glDeleteBuffers(1, &vbo_elements_sphere);
  42. vbo_elements_sphere = 0;
  43. }
  44. if (vao_sphere)
  45. {
  46. glDeleteVertexArrays(1, &vao_sphere);
  47. vao_sphere = 0;
  48. }
  49. if (vbo_plane)
  50. {
  51. glDeleteBuffers(1, &vbo_plane);
  52. vbo_plane = 0;
  53. }
  54. if (vao_plane)
  55. {
  56. glDeleteVertexArrays(1, &vao_plane);
  57. vao_plane = 0;
  58. }
  59.  
  60. GLsizei shaderCount, shaderNumber;
  61. if (gShaderProgramObject)
  62. {
  63.  
  64. glUseProgram(gShaderProgramObject);
  65. glGetProgramiv(gShaderProgramObject, GL_ATTACHED_SHADERS, &shaderCount);
  66. GLuint *pShaders = (GLuint *)malloc(shaderCount * sizeof(GLuint));
  67. if (pShaders)
  68. {
  69. glGetAttachedShaders(gShaderProgramObject, shaderCount, &shaderCount, pShaders);
  70. for (shaderNumber = 0; shaderNumber < shaderCount; shaderNumber++)
  71. {
  72. glDetachShader(gShaderProgramObject, pShaders[shaderNumber]);
  73. glDeleteShader(pShaders[shaderNumber]);
  74. pShaders[shaderNumber] = 0;
  75. }
  76. free(pShaders);
  77. }
  78. glDeleteProgram(gShaderProgramObject);
  79. gShaderProgramObject = 0;
  80. glUseProgram(0);
  81. }
  82.  
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement