1
0
mirror of https://github.com/TomHarte/CLK.git synced 2026-04-25 11:17:26 +00:00

Corrects stencil buffer creation, and edges towards using it for [guaranteed] full-screen decay.

This commit is contained in:
Thomas Harte
2018-11-18 22:22:43 -05:00
parent 75bc0e451d
commit 97c5ee6c0a
3 changed files with 18 additions and 3 deletions
@@ -41,7 +41,10 @@ TextureTarget::TextureTarget(GLsizei width, GLsizei height, GLenum texture_unit,
// Also add a stencil buffer if requested.
if(has_stencil_buffer) {
glGenRenderbuffers(1, &renderbuffer_);
glBindRenderbuffer(GL_RENDERBUFFER, renderbuffer_);
glRenderbufferStorage(GL_RENDERBUFFER, GL_STENCIL_INDEX1, expanded_width_, expanded_height_);
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, GL_RENDERBUFFER, renderbuffer_);
}
// Check for successful construction.
@@ -52,6 +55,7 @@ TextureTarget::TextureTarget(GLsizei width, GLsizei height, GLenum texture_unit,
TextureTarget::~TextureTarget() {
glDeleteFramebuffers(1, &framebuffer_);
glDeleteTextures(1, &texture_);
if(renderbuffer_) glDeleteRenderbuffers(1, &renderbuffer_);
if(drawing_vertex_array_) glDeleteVertexArrays(1, &drawing_vertex_array_);
if(drawing_array_buffer_) glDeleteBuffers(1, &drawing_array_buffer_);
}