void display_destroy(t_display* display) { display_mesh_renderer_destroy(display->mesh_renderer); display_gl_destroy_buffer(display->memory_vertex_buffer); display_gl_destroy_buffer(display->memory_grid_vertex_buffer); display_gl_destroy_buffer(display->memory_grid_index_buffer); display_gl_destroy_texture(display->hex_texture); display_gl_destroy_shader(&display->memory_shader); display_gl_destroy_shader(&display->io_shader); display_gl_destroy_vao(display->memory_vao); display_text_destroy(display->texts); glfwDestroyWindow(display->window); free(display->memory_temp_buffer); glfwTerminate(); }
void display_gl_io_destroy(struct display_gl_s* display) { glDeleteTextures(1, &display->read_texture); glDeleteTextures(1, &display->write_texture); display_gl_destroy_shader(&display->io_shader); free(display->io_read_buffer); free(display->io_write_buffer); }
void display_gl_memory_destroy(struct display_gl_s* display) { glDeleteBuffers(1, &display->memory_vertex_buffer); glDeleteTextures(1, &display->hex_texture); glDeleteVertexArrays(1, &display->memory_vao); display_gl_destroy_shader(&display->memory_shader); }