From 1edefd5717f3ad66c28d0cc396c94b499d3eb008 Mon Sep 17 00:00:00 2001 From: Jerome St-Louis Date: Sat, 5 Nov 2022 16:35:48 -0400 Subject: [PATCH] ecere/gfx/drivers/GL/GLAB: Avoid expensive call to glCheckFramebufferStatus() for WebGL - ecere.epj: Disable _DEBUG flag for Emscripten --- ecere/ecere.epj | 1 - ecere/src/gfx/drivers/gl3/glab.ec | 5 +++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ecere/ecere.epj b/ecere/ecere.epj index 1478b6ee66..61ecbcbead 100644 --- a/ecere/ecere.epj +++ b/ecere/ecere.epj @@ -478,7 +478,6 @@ "Name" : "Emscripten", "Options" : { "Warnings" : "Normal", - "Debug" : true, "Optimization" : "Speed", "PreprocessorDefinitions" : [ "ETC2_COMPRESS", diff --git a/ecere/src/gfx/drivers/gl3/glab.ec b/ecere/src/gfx/drivers/gl3/glab.ec index bd190d4374..1275482532 100644 --- a/ecere/src/gfx/drivers/gl3/glab.ec +++ b/ecere/src/gfx/drivers/gl3/glab.ec @@ -925,8 +925,13 @@ public struct GLFB this.h = height; { +#if !defined(_DEBUG) && defined(__EMSCRIPTEN__) + // Expensive check in WebGL? + result = true; +#else int status = glCheckFramebufferStatus(GL_FRAMEBUFFER); result = status == GL_FRAMEBUFFER_COMPLETE; +#endif #ifdef _DEBUG if(!result)