add deinit
This commit is contained in:
@@ -47,6 +47,8 @@ protected:
|
|||||||
|
|
||||||
virtual void display() {}
|
virtual void display() {}
|
||||||
|
|
||||||
|
virtual void deinit() {}
|
||||||
|
|
||||||
public:
|
public:
|
||||||
GLFWwindow *getWindow();
|
GLFWwindow *getWindow();
|
||||||
|
|
||||||
|
|||||||
@@ -152,6 +152,8 @@ int App::run() {
|
|||||||
};
|
};
|
||||||
manager.erase(getWindow());
|
manager.erase(getWindow());
|
||||||
|
|
||||||
|
deinit();
|
||||||
|
|
||||||
glfwDestroyWindow(_window);
|
glfwDestroyWindow(_window);
|
||||||
|
|
||||||
return EXIT_SUCCESS;
|
return EXIT_SUCCESS;
|
||||||
|
|||||||
@@ -82,6 +82,13 @@ protected:
|
|||||||
swapBuffers();
|
swapBuffers();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void deinit() override {
|
||||||
|
glDeleteBuffers(1, &vertex_buffer);
|
||||||
|
glDeleteProgram(program);
|
||||||
|
glDeleteShader(vertex_shader);
|
||||||
|
glDeleteShader(fragment_shader);
|
||||||
|
}
|
||||||
|
|
||||||
public:
|
public:
|
||||||
GLApp() : App(3, 0) {}
|
GLApp() : App(3, 0) {}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user