diff --git a/renderdoc/driver/d3d11/d3d11_replay.cpp b/renderdoc/driver/d3d11/d3d11_replay.cpp index bf475b956..56bb71472 100644 --- a/renderdoc/driver/d3d11/d3d11_replay.cpp +++ b/renderdoc/driver/d3d11/d3d11_replay.cpp @@ -4306,16 +4306,10 @@ RDResult D3D11_CreateReplayDevice(RDCFile *rdc, const ReplayOptions &opts, IRepl // we control the debug flag ourselves flags &= ~D3D11_CREATE_DEVICE_DEBUG; -#if ENABLED(RDOC_DEVEL) - // in development builds, always enable debug layer during replay - flags |= D3D11_CREATE_DEVICE_DEBUG; -#else - // in release builds, only enable it if forced by replay options if(opts.apiValidation) flags |= D3D11_CREATE_DEVICE_DEBUG; else flags &= ~D3D11_CREATE_DEVICE_DEBUG; -#endif // we should now be set up to try creating feature level 11 devices either with a selected // adapter, a NULL (any) adapter, or WARP. diff --git a/renderdoc/driver/gl/egl_platform.cpp b/renderdoc/driver/gl/egl_platform.cpp index 9bb9d91c5..719bcf52c 100644 --- a/renderdoc/driver/gl/egl_platform.cpp +++ b/renderdoc/driver/gl/egl_platform.cpp @@ -58,6 +58,7 @@ static void *GetEGLHandle() class EGLPlatform : public GLPlatform { RDCDriver m_API = RDCDriver::OpenGLES; + bool m_Debug = false; bool MakeContextCurrent(GLWindowingData data) { @@ -76,7 +77,7 @@ class EGLPlatform : public GLPlatform if(EGL.CreateContext) { EGLint baseAttribs[] = {EGL_CONTEXT_CLIENT_VERSION, 3, EGL_CONTEXT_FLAGS_KHR, - EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR, EGL_NONE}; + m_Debug ? EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR : 0, EGL_NONE}; ret.egl_ctx = EGL.CreateContext(share.egl_dpy, share.egl_cfg, share.egl_ctx, baseAttribs); @@ -208,10 +209,6 @@ class EGLPlatform : public GLPlatform GLWindowingData CreateWindowingData(EGLDisplay eglDisplay, EGLContext share_ctx, EGLNativeWindowType window, bool debug) { -#if ENABLED(RDOC_DEVEL) - debug = true; -#endif - GLWindowingData ret; ret.egl_dpy = eglDisplay; ret.egl_ctx = NULL; @@ -383,6 +380,7 @@ class EGLPlatform : public GLPlatform RDCASSERT(api == RDCDriver::OpenGLES || api == RDCDriver::OpenGL); m_API = api; + m_Debug = debug; if(api == RDCDriver::OpenGLES) EGL.BindAPI(EGL_OPENGL_ES_API); diff --git a/renderdoc/driver/gl/glx_platform.cpp b/renderdoc/driver/gl/glx_platform.cpp index fdb7dc7ee..561f0c54a 100644 --- a/renderdoc/driver/gl/glx_platform.cpp +++ b/renderdoc/driver/gl/glx_platform.cpp @@ -51,6 +51,7 @@ void *GetGLHandle() class GLXPlatform : public GLPlatform { RDCDriver m_API = RDCDriver::OpenGL; + bool m_Debug = false; bool MakeContextCurrent(GLWindowingData data) { @@ -263,11 +264,7 @@ class GLXPlatform : public GLPlatform attribs[i++] = GLX_CONTEXT_MINOR_VERSION_ARB; attribs[i++] = GLCoreVersion % 10; attribs[i++] = GLX_CONTEXT_FLAGS_ARB; -#if ENABLED(RDOC_DEVEL) - attribs[i++] = GLX_CONTEXT_DEBUG_BIT_ARB; -#else - attribs[i++] = 0; -#endif + attribs[i++] = m_Debug ? GLX_CONTEXT_DEBUG_BIT_ARB : 0; attribs[i++] = GLX_CONTEXT_PROFILE_MASK_ARB; attribs[i++] = m_API == RDCDriver::OpenGLES ? GLX_CONTEXT_ES2_PROFILE_BIT_EXT : GLX_CONTEXT_CORE_PROFILE_BIT_ARB; @@ -365,14 +362,10 @@ class GLXPlatform : public GLPlatform void SetDriverType(RDCDriver api) { m_API = api; } RDResult InitialiseAPI(GLWindowingData &replayContext, RDCDriver api, bool debug) { -// force debug in development builds -#if ENABLED(RDOC_DEVEL) - debug = true; -#endif - RDCASSERT(api == RDCDriver::OpenGL || api == RDCDriver::OpenGLES); m_API = api; + m_Debug = debug; int attribs[64] = {0}; int i = 0; @@ -384,7 +377,7 @@ class GLXPlatform : public GLPlatform int &minor = attribs[i]; attribs[i++] = 0; attribs[i++] = GLX_CONTEXT_FLAGS_ARB; - attribs[i++] = debug ? GLX_CONTEXT_DEBUG_BIT_ARB : 0; + attribs[i++] = m_Debug ? GLX_CONTEXT_DEBUG_BIT_ARB : 0; attribs[i++] = GLX_CONTEXT_PROFILE_MASK_ARB; attribs[i++] = api == RDCDriver::OpenGLES ? GLX_CONTEXT_ES2_PROFILE_BIT_EXT : GLX_CONTEXT_CORE_PROFILE_BIT_ARB; diff --git a/renderdoc/driver/gl/wgl_platform.cpp b/renderdoc/driver/gl/wgl_platform.cpp index 2d6fa1af8..e26cc3988 100644 --- a/renderdoc/driver/gl/wgl_platform.cpp +++ b/renderdoc/driver/gl/wgl_platform.cpp @@ -30,6 +30,7 @@ class WGLPlatform : public GLPlatform { RDCDriver m_API = RDCDriver::OpenGL; + bool m_Debug = false; bool MakeContextCurrent(GLWindowingData data) { @@ -288,11 +289,7 @@ class WGLPlatform : public GLPlatform attribs[i++] = WGL_CONTEXT_MINOR_VERSION_ARB; attribs[i++] = GLCoreVersion % 10; attribs[i++] = WGL_CONTEXT_FLAGS_ARB; -#if ENABLED(RDOC_DEVEL) - attribs[i++] = WGL_CONTEXT_DEBUG_BIT_ARB; -#else - attribs[i++] = 0; -#endif + attribs[i++] = m_Debug ? WGL_CONTEXT_DEBUG_BIT_ARB : 0; attribs[i++] = WGL_CONTEXT_PROFILE_MASK_ARB; attribs[i++] = m_API == RDCDriver::OpenGLES ? WGL_CONTEXT_ES2_PROFILE_BIT_EXT : WGL_CONTEXT_CORE_PROFILE_BIT_ARB; @@ -374,14 +371,10 @@ class WGLPlatform : public GLPlatform void SetDriverType(RDCDriver api) { m_API = api; } RDResult InitialiseAPI(GLWindowingData &replayContext, RDCDriver api, bool debug) { -// force debug in development builds -#if ENABLED(RDOC_DEVEL) - debug = true; -#endif - RDCASSERT(api == RDCDriver::OpenGL || api == RDCDriver::OpenGLES); m_API = api; + m_Debug = debug; bool success = RegisterClass(); @@ -457,7 +450,7 @@ class WGLPlatform : public GLPlatform int &minor = attribs[i]; attribs[i++] = 0; attribs[i++] = WGL_CONTEXT_FLAGS_ARB; - attribs[i++] = debug ? WGL_CONTEXT_DEBUG_BIT_ARB : 0; + attribs[i++] = m_Debug ? WGL_CONTEXT_DEBUG_BIT_ARB : 0; attribs[i++] = WGL_CONTEXT_PROFILE_MASK_ARB; attribs[i++] = api == RDCDriver::OpenGLES ? WGL_CONTEXT_ES2_PROFILE_BIT_EXT : WGL_CONTEXT_CORE_PROFILE_BIT_ARB;