From 64cb57c5ee7c1fecafd660ecc86f4af6a2b7d27e Mon Sep 17 00:00:00 2001 From: Ryan Houdek Date: Mon, 15 Feb 2016 06:05:09 -0600 Subject: [PATCH 1/2] Disable a few OpenGL 4.5 functions that AMD fails to expose. --- .../Common/GL/GLExtensions/GLExtensions.cpp | 38 ++++++++++--------- 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/Source/Core/Common/GL/GLExtensions/GLExtensions.cpp b/Source/Core/Common/GL/GLExtensions/GLExtensions.cpp index 8f85a2eca3..766aa5aa41 100644 --- a/Source/Core/Common/GL/GLExtensions/GLExtensions.cpp +++ b/Source/Core/Common/GL/GLExtensions/GLExtensions.cpp @@ -1817,26 +1817,28 @@ const GLFunc gl_function_array[] = GLFUNC_REQUIRES(glGetTextureSubImage, "VERSION_4_5"), GLFUNC_REQUIRES(glGetCompressedTextureSubImage, "VERSION_4_5"), GLFUNC_REQUIRES(glGetGraphicsResetStatus, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnCompressedTexImage, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnTexImage, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnUniformdv, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnUniformfv, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnUniformiv, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnUniformuiv, "VERSION_4_5"), GLFUNC_REQUIRES(glReadnPixels, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnMapdv, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnMapfv, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnMapiv, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnPixelMapfv, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnPixelMapuiv, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnPixelMapusv, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnPolygonStipple, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnColorTable, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnConvolutionFilter, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnSeparableFilter, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnHistogram, "VERSION_4_5"), - GLFUNC_REQUIRES(glGetnMinmax, "VERSION_4_5"), GLFUNC_REQUIRES(glTextureBarrier, "VERSION_4_5"), + // AMD's video driver is trash and doesn't expose these function pointers + // Remove them for now until they learn how to implement the spec properly. + // GLFUNC_REQUIRES(glGetnCompressedTexImage, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnTexImage, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnUniformdv, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnUniformfv, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnUniformiv, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnUniformuiv, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnMapdv, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnMapfv, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnMapiv, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnPixelMapfv, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnPixelMapuiv, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnPixelMapusv, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnPolygonStipple, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnColorTable, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnConvolutionFilter, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnSeparableFilter, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnHistogram, "VERSION_4_5"), + // GLFUNC_REQUIRES(glGetnMinmax, "VERSION_4_5"), // ARB_uniform_buffer_object GLFUNC_REQUIRES(glGetActiveUniformName, "GL_ARB_uniform_buffer_object"), From d4dfbbf214ea84ce65640d99d073dffb4703a9ec Mon Sep 17 00:00:00 2001 From: Ryan Houdek Date: Mon, 15 Feb 2016 06:05:38 -0600 Subject: [PATCH 2/2] Make sure to get the right function pointer for DSA+buffer_storage --- Source/Core/Common/GL/GLExtensions/GLExtensions.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Core/Common/GL/GLExtensions/GLExtensions.cpp b/Source/Core/Common/GL/GLExtensions/GLExtensions.cpp index 766aa5aa41..e66e8ac74c 100644 --- a/Source/Core/Common/GL/GLExtensions/GLExtensions.cpp +++ b/Source/Core/Common/GL/GLExtensions/GLExtensions.cpp @@ -2012,7 +2012,7 @@ const GLFunc gl_function_array[] = // ARB_buffer_storage GLFUNC_REQUIRES(glBufferStorage, "GL_ARB_buffer_storage !VERSION_4_4"), - GLFUNC_REQUIRES(glNamedBufferStorage, "GL_ARB_buffer_storage GL_EXT_direct_state_access !VERSION_4_5"), + GLFUNC_SUFFIX(glNamedBufferStorage, EXT, "GL_ARB_buffer_storage GL_EXT_direct_state_access !VERSION_4_5"), // EXT_buffer_storage GLFUNC_SUFFIX(glBufferStorage, EXT, "GL_EXT_buffer_storage !GL_ARB_buffer_storage !VERSION_4_4"),