diff --git a/src/renderers/webgl/WebGLTextures.js b/src/renderers/webgl/WebGLTextures.js index b5e44d6b214ff89a8470f21f88a59b66e9f37cf9..462a40a1b1da06a48621dc8e5576a8cb16f8261d 100644 --- a/src/renderers/webgl/WebGLTextures.js +++ b/src/renderers/webgl/WebGLTextures.js @@ -258,6 +258,21 @@ function WebGLTextures( _gl, extensions, state, properties, capabilities, utils, } + if ( renderTarget.isWebGLMultiviewRenderTarget ) { + + _gl.deleteTexture( renderTargetProperties.__webglColorTexture ); + _gl.deleteTexture( renderTargetProperties.__webglDepthStencilTexture ); + + info.memory.textures -= 2; + + for ( var i = 0, il = renderTargetProperties.__webglViewFramebuffers.length; i < il; i ++ ) { + + _gl.deleteFramebuffer( renderTargetProperties.__webglViewFramebuffers[ i ] ); + + } + + } + properties.remove( renderTarget.texture ); properties.remove( renderTarget ); @@ -992,6 +1007,8 @@ function WebGLTextures( _gl, extensions, state, properties, capabilities, utils, var ext = extensions.get( 'OVR_multiview2' ); + info.memory.textures += 2; + var colorTexture = _gl.createTexture(); _gl.bindTexture( _gl.TEXTURE_2D_ARRAY, colorTexture ); _gl.texParameteri( _gl.TEXTURE_2D_ARRAY, _gl.TEXTURE_MAG_FILTER, _gl.NEAREST ); @@ -1227,4 +1244,4 @@ function WebGLTextures( _gl, extensions, state, properties, capabilities, utils, } -export { WebGLTextures }; +export { WebGLTextures }; \ No newline at end of file