Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void StudentRenderer::clearStudentData()
- {
- if (vbo_position_cube)
- {
- glDeleteBuffers(1, &vbo_position_cube);
- vbo_position_cube = 0;
- }
- if (vbo_normal_cube)
- {
- glDeleteBuffers(1, &vbo_normal_cube);
- vbo_normal_cube = 0;
- }
- if (vbo_texture_cube)
- {
- glDeleteBuffers(1, &vbo_texture_cube);
- vbo_texture_cube = 0;
- }
- if (vao_cube)
- {
- glDeleteVertexArrays(1, &vao_cube);
- vao_cube = 0;
- }
- if (vbo_position_sphere)
- {
- glDeleteBuffers(1, &vbo_position_sphere);
- vbo_position_sphere = 0;
- }
- if (vbo_normal_sphere)
- {
- glDeleteBuffers(1, &vbo_normal_sphere);
- vbo_normal_sphere = 0;
- }
- if (vbo_texture_sphere)
- {
- glDeleteBuffers(1, &vbo_texture_sphere);
- vbo_texture_sphere = 0;
- }
- if (vbo_elements_sphere)
- {
- glDeleteBuffers(1, &vbo_elements_sphere);
- vbo_elements_sphere = 0;
- }
- if (vao_sphere)
- {
- glDeleteVertexArrays(1, &vao_sphere);
- vao_sphere = 0;
- }
- if (vbo_plane)
- {
- glDeleteBuffers(1, &vbo_plane);
- vbo_plane = 0;
- }
- if (vao_plane)
- {
- glDeleteVertexArrays(1, &vao_plane);
- vao_plane = 0;
- }
- GLsizei shaderCount, shaderNumber;
- if (gShaderProgramObject)
- {
- glUseProgram(gShaderProgramObject);
- glGetProgramiv(gShaderProgramObject, GL_ATTACHED_SHADERS, &shaderCount);
- GLuint *pShaders = (GLuint *)malloc(shaderCount * sizeof(GLuint));
- if (pShaders)
- {
- glGetAttachedShaders(gShaderProgramObject, shaderCount, &shaderCount, pShaders);
- for (shaderNumber = 0; shaderNumber < shaderCount; shaderNumber++)
- {
- glDetachShader(gShaderProgramObject, pShaders[shaderNumber]);
- glDeleteShader(pShaders[shaderNumber]);
- pShaders[shaderNumber] = 0;
- }
- free(pShaders);
- }
- glDeleteProgram(gShaderProgramObject);
- gShaderProgramObject = 0;
- glUseProgram(0);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement