@@ -163,7 +163,7 @@ bool GLRenderer::Init()
163163 glGenTextures (1 , &CaptureOutput256Tex);
164164 glBindTexture (GL_TEXTURE_2D_ARRAY, CaptureOutput256Tex);
165165 glTexParams (GL_TEXTURE_2D_ARRAY, GL_REPEAT);
166- glGenFramebuffers (5 , CaptureOutput256FB);
166+ glGenFramebuffers (4 , CaptureOutput256FB);
167167
168168 glGenTextures (1 , &CaptureOutput128Tex);
169169 glBindTexture (GL_TEXTURE_2D_ARRAY, CaptureOutput128Tex);
@@ -261,7 +261,9 @@ GLRenderer::~GLRenderer()
261261 delete[] AuxInputBuffer[1 ];
262262
263263 glDeleteTextures (1 , &CaptureOutput256Tex);
264+ glDeleteFramebuffers (4 , CaptureOutput256FB);
264265 glDeleteTextures (1 , &CaptureOutput128Tex);
266+ glDeleteFramebuffers (16 , CaptureOutput128FB);
265267 glDeleteTextures (1 , &CaptureSyncTex);
266268 glDeleteFramebuffers (1 , &CaptureSyncFB);
267269
@@ -344,9 +346,9 @@ void GLRenderer::SetScaleFactor(int scale)
344346 const GLenum fbassign2[] = {GL_COLOR_ATTACHMENT0, GL_COLOR_ATTACHMENT1};
345347
346348 glBindTexture (GL_TEXTURE_2D_ARRAY, CaptureOutput256Tex);
347- glTexImage3D (GL_TEXTURE_2D_ARRAY, 0 , GL_RGBA, 256 *ScaleFactor, 256 *ScaleFactor, 5 , 0 , GL_RGBA, GL_UNSIGNED_BYTE, nullptr );
349+ glTexImage3D (GL_TEXTURE_2D_ARRAY, 0 , GL_RGBA, 256 *ScaleFactor, 256 *ScaleFactor, 4 , 0 , GL_RGBA, GL_UNSIGNED_BYTE, nullptr );
348350
349- for (int i = 0 ; i < 5 ; i++)
351+ for (int i = 0 ; i < 4 ; i++)
350352 {
351353 glBindFramebuffer (GL_FRAMEBUFFER, CaptureOutput256FB[i]);
352354 glFramebufferTextureLayer (GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, CaptureOutput256Tex, 0 , i);
@@ -723,15 +725,6 @@ void GLRenderer::DoCapture(int ystart, int yend)
723725 CaptureConfig.uSrcBColorFactor = 255 .f ;
724726 }
725727
726- {
727- // HACK
728- glBindFramebuffer (GL_READ_FRAMEBUFFER, CaptureOutput256FB[srcBblock]);
729- glBindFramebuffer (GL_DRAW_FRAMEBUFFER, CaptureOutput256FB[4 ]);
730- glBlitFramebuffer (0 , 0 , 256 *ScaleFactor, 256 *ScaleFactor,
731- 0 , 0 , 256 *ScaleFactor, 256 *ScaleFactor,
732- GL_COLOR_BUFFER_BIT, GL_NEAREST);
733- }
734-
735728 glBindFramebuffer (GL_READ_FRAMEBUFFER, 0 );
736729 if (capsize == 0 )
737730 {
0 commit comments