From 28543667fd6663132504824c7318ad4473c21c5d Mon Sep 17 00:00:00 2001 From: clayjohn Date: Thu, 19 Dec 2019 20:41:32 -0800 Subject: Always use 16 bit renderbuffer depth on WebGL --- drivers/gles2/rasterizer_storage_gles2.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'drivers') diff --git a/drivers/gles2/rasterizer_storage_gles2.cpp b/drivers/gles2/rasterizer_storage_gles2.cpp index 388a8423a0..60f72608a8 100644 --- a/drivers/gles2/rasterizer_storage_gles2.cpp +++ b/drivers/gles2/rasterizer_storage_gles2.cpp @@ -5812,10 +5812,11 @@ void RasterizerStorageGLES2::initialize() { config.support_npot_repeat_mipmap = config.extensions.has("GL_OES_texture_npot"); #ifdef JAVASCRIPT_ENABLED - // no way of detecting 32 or 16 bit support for renderbuffer, so default to 32 + // RenderBuffer internal format must be 16 bits in WebGL, + // but depth_texture should default to 32 always // if the implementation doesn't support 32, it should just quietly use 16 instead // https://www.khronos.org/registry/webgl/extensions/WEBGL_depth_texture/ - config.depth_buffer_internalformat = GL_DEPTH_COMPONENT; + config.depth_buffer_internalformat = GL_DEPTH_COMPONENT16; config.depth_type = GL_UNSIGNED_INT; #else // on mobile check for 24 bit depth support for RenderBufferStorage -- cgit v1.2.3