[PATCH 2/4] wined3d: Use GL_RGB565 if available.
Stefan Dösinger
stefan at codeweavers.com
Thu Aug 20 03:03:33 CDT 2015
This offers better precision on r300g and r600g than GL_RGB5.
---
dlls/wined3d/directx.c | 7 +++++++
dlls/wined3d/utils.c | 5 +++++
dlls/wined3d/wined3d_gl.h | 1 +
3 files changed, 13 insertions(+)
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
index 8e4448d..3f52300 100644
--- a/dlls/wined3d/directx.c
+++ b/dlls/wined3d/directx.c
@@ -116,6 +116,7 @@ static const struct wined3d_extension_map gl_extension_map[] =
{"GL_ARB_draw_buffers", ARB_DRAW_BUFFERS },
{"GL_ARB_draw_elements_base_vertex", ARB_DRAW_ELEMENTS_BASE_VERTEX },
{"GL_ARB_draw_instanced", ARB_DRAW_INSTANCED },
+ {"GL_ARB_ES2_compatibility", ARB_ES2_COMPATIBILITY },
{"GL_ARB_fragment_program", ARB_FRAGMENT_PROGRAM },
{"GL_ARB_fragment_shader", ARB_FRAGMENT_SHADER },
{"GL_ARB_framebuffer_object", ARB_FRAMEBUFFER_OBJECT },
@@ -2483,6 +2484,12 @@ static void load_gl_funcs(struct wined3d_gl_info *gl_info)
/* GL_ARB_draw_instanced */
USE_GL_FUNC(glDrawArraysInstancedARB)
USE_GL_FUNC(glDrawElementsInstancedARB)
+ /* GL_ARB_ES2_compatibility */
+ USE_GL_FUNC(glReleaseShaderCompiler)
+ USE_GL_FUNC(glShaderBinary)
+ USE_GL_FUNC(glGetShaderPrecisionFormat)
+ USE_GL_FUNC(glDepthRangef)
+ USE_GL_FUNC(glClearDepthf)
/* GL_ARB_framebuffer_object */
USE_GL_FUNC(glBindFramebuffer)
USE_GL_FUNC(glBindRenderbuffer)
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c
index 0d4e878..ee4ccfd 100644
--- a/dlls/wined3d/utils.c
+++ b/dlls/wined3d/utils.c
@@ -1019,6 +1019,11 @@ static const struct wined3d_format_texture_info format_texture_info[] =
WINED3DFMT_FLAG_TEXTURE | WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING | WINED3DFMT_FLAG_FILTERING
| WINED3DFMT_FLAG_RENDERTARGET,
WINED3D_GL_EXT_NONE, NULL},
+ {WINED3DFMT_B5G6R5_UNORM, GL_RGB565, GL_RGB565, GL_RGB8,
+ GL_RGB, GL_UNSIGNED_SHORT_5_6_5, 0,
+ WINED3DFMT_FLAG_TEXTURE | WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING | WINED3DFMT_FLAG_FILTERING
+ | WINED3DFMT_FLAG_RENDERTARGET,
+ ARB_ES2_COMPATIBILITY, NULL},
{WINED3DFMT_B5G5R5X1_UNORM, GL_RGB5, GL_RGB5_A1, 0,
GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV, 0,
WINED3DFMT_FLAG_TEXTURE | WINED3DFMT_FLAG_POSTPIXELSHADER_BLENDING | WINED3DFMT_FLAG_FILTERING,
diff --git a/dlls/wined3d/wined3d_gl.h b/dlls/wined3d/wined3d_gl.h
index 8c07ed1..2be7262 100644
--- a/dlls/wined3d/wined3d_gl.h
+++ b/dlls/wined3d/wined3d_gl.h
@@ -52,6 +52,7 @@ enum wined3d_gl_extension
ARB_DRAW_BUFFERS,
ARB_DRAW_ELEMENTS_BASE_VERTEX,
ARB_DRAW_INSTANCED,
+ ARB_ES2_COMPATIBILITY,
ARB_FRAGMENT_PROGRAM,
ARB_FRAGMENT_SHADER,
ARB_FRAMEBUFFER_OBJECT,
--
2.4.6
More information about the wine-patches
mailing list