From: Guillaume Charifi Subject: [PATCH] wined3d: Test and enable ARB_gpu_shader5 in shaders. Message-Id: <1468585505-21734-1-git-send-email-guillaume.charifi@sfr.fr> Date: Fri, 15 Jul 2016 14:25:05 +0200 Signed-off-by: Guillaume Charifi --- dlls/wined3d/directx.c | 1 + dlls/wined3d/glsl_shader.c | 6 ++++++ dlls/wined3d/wined3d_gl.h | 1 + 3 files changed, 8 insertions(+) diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index 7d80752..58132f8 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c @@ -124,6 +124,7 @@ static const struct wined3d_extension_map gl_extension_map[] = {"GL_ARB_framebuffer_object", ARB_FRAMEBUFFER_OBJECT }, {"GL_ARB_framebuffer_sRGB", ARB_FRAMEBUFFER_SRGB }, {"GL_ARB_geometry_shader4", ARB_GEOMETRY_SHADER4 }, + {"GL_ARB_gpu_shader5", ARB_GPU_SHADER5 }, {"GL_ARB_half_float_pixel", ARB_HALF_FLOAT_PIXEL }, {"GL_ARB_half_float_vertex", ARB_HALF_FLOAT_VERTEX }, {"GL_ARB_instanced_arrays", ARB_INSTANCED_ARRAYS }, diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c index a037414..dfc8455 100644 --- a/dlls/wined3d/glsl_shader.c +++ b/dlls/wined3d/glsl_shader.c @@ -5948,6 +5948,8 @@ static GLuint shader_glsl_generate_pshader(const struct wined3d_context *context shader_addline(buffer, "%s\n", shader_glsl_get_version(gl_info, ®_maps->shader_version)); + if (gl_info->supported[ARB_GPU_SHADER5]) + shader_addline(buffer, "#extension GL_ARB_gpu_shader5 : enable\n"); if (gl_info->supported[ARB_SHADER_BIT_ENCODING]) shader_addline(buffer, "#extension GL_ARB_shader_bit_encoding : enable\n"); if (gl_info->supported[ARB_SHADER_TEXTURE_LOD]) @@ -6074,6 +6076,8 @@ static GLuint shader_glsl_generate_vshader(const struct wined3d_context *context shader_addline(buffer, "%s\n", shader_glsl_get_version(gl_info, ®_maps->shader_version)); + if (gl_info->supported[ARB_GPU_SHADER5]) + shader_addline(buffer, "#extension GL_ARB_gpu_shader5 : enable\n"); if (gl_info->supported[ARB_DRAW_INSTANCED]) shader_addline(buffer, "#extension GL_ARB_draw_instanced : enable\n"); if (gl_info->supported[ARB_EXPLICIT_ATTRIB_LOCATION]) @@ -6170,6 +6174,8 @@ static GLuint shader_glsl_generate_geometry_shader(const struct wined3d_context shader_addline(buffer, "%s\n", shader_glsl_get_version(gl_info, ®_maps->shader_version)); + if (gl_info->supported[ARB_GPU_SHADER5]) + shader_addline(buffer, "#extension GL_ARB_gpu_shader5 : enable\n"); if (gl_info->supported[ARB_GEOMETRY_SHADER4]) shader_addline(buffer, "#extension GL_ARB_geometry_shader4 : enable\n"); if (gl_info->supported[ARB_SHADER_BIT_ENCODING]) diff --git a/dlls/wined3d/wined3d_gl.h b/dlls/wined3d/wined3d_gl.h index a0d80fa..ac96606 100644 --- a/dlls/wined3d/wined3d_gl.h +++ b/dlls/wined3d/wined3d_gl.h @@ -59,6 +59,7 @@ enum wined3d_gl_extension ARB_FRAMEBUFFER_OBJECT, ARB_FRAMEBUFFER_SRGB, ARB_GEOMETRY_SHADER4, + ARB_GPU_SHADER5, ARB_HALF_FLOAT_PIXEL, ARB_HALF_FLOAT_VERTEX, ARB_INSTANCED_ARRAYS, -- 2.7.4