Module: wine Branch: master Commit: 70f017ac4d40642195947f6e03aff83c246dede8 URL: https://source.winehq.org/git/wine.git/?a=commit;h=70f017ac4d40642195947f6e0...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Thu Mar 22 14:40:43 2018 +0430
wined3d: Get rid of the "StrictDrawOrdering" setting.
Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/wined3d/arb_program_shader.c | 5 ++--- dlls/wined3d/buffer.c | 2 -- dlls/wined3d/context.c | 6 ------ dlls/wined3d/device.c | 5 ++--- dlls/wined3d/surface.c | 14 +++----------- dlls/wined3d/texture.c | 3 --- dlls/wined3d/wined3d_main.c | 8 -------- dlls/wined3d/wined3d_private.h | 1 - 8 files changed, 7 insertions(+), 37 deletions(-)
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c index e9c9d7d..4b4cd4e 100644 --- a/dlls/wined3d/arb_program_shader.c +++ b/dlls/wined3d/arb_program_shader.c @@ -7886,9 +7886,8 @@ static DWORD arbfp_blitter_blit(struct wined3d_blitter *blitter, enum wined3d_bl /* Leave the opengl state valid for blitting */ arbfp_blit_unset(context->gl_info);
- if (wined3d_settings.strict_draw_ordering - || (dst_texture->swapchain && (dst_texture->swapchain->front_buffer == dst_texture))) - context->gl_info->gl_ops.gl.p_glFlush(); /* Flush to ensure ordering across contexts. */ + if (dst_texture->swapchain && (dst_texture->swapchain->front_buffer == dst_texture)) + context->gl_info->gl_ops.gl.p_glFlush();
return dst_location; } diff --git a/dlls/wined3d/buffer.c b/dlls/wined3d/buffer.c index 1055326..5b92470 100644 --- a/dlls/wined3d/buffer.c +++ b/dlls/wined3d/buffer.c @@ -1183,8 +1183,6 @@ static void wined3d_buffer_unmap(struct wined3d_buffer *buffer) }
GL_EXTCALL(glUnmapBuffer(buffer->buffer_type_hint)); - if (wined3d_settings.strict_draw_ordering) - gl_info->gl_ops.gl.p_glFlush(); /* Flush to ensure ordering across contexts. */ context_release(context);
buffer_clear_dirty_areas(buffer); diff --git a/dlls/wined3d/context.c b/dlls/wined3d/context.c index 34102c7..db32f1d 100644 --- a/dlls/wined3d/context.c +++ b/dlls/wined3d/context.c @@ -4322,9 +4322,6 @@ void dispatch_compute(struct wined3d_device *device, const struct wined3d_state GL_EXTCALL(glMemoryBarrier(GL_ALL_BARRIER_BITS)); checkGLcall("glMemoryBarrier");
- if (wined3d_settings.strict_draw_ordering) - gl_info->gl_ops.gl.p_glFlush(); /* Flush to ensure ordering across contexts. */ - context_release(context); }
@@ -4985,8 +4982,5 @@ void draw_primitive(struct wined3d_device *device, const struct wined3d_state *s for (i = 0; i < context->buffer_fence_count; ++i) wined3d_fence_issue(context->buffer_fences[i], device);
- if (wined3d_settings.strict_draw_ordering) - gl_info->gl_ops.gl.p_glFlush(); /* Flush to ensure ordering across contexts. */ - context_release(context); } diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index c5517f5..d4e39db 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c @@ -457,9 +457,8 @@ void device_clear_render_targets(struct wined3d_device *device, UINT rt_count, c } }
- if (wined3d_settings.strict_draw_ordering || (flags & WINED3DCLEAR_TARGET - && target->swapchain && target->swapchain->front_buffer == target)) - gl_info->gl_ops.gl.p_glFlush(); /* Flush to ensure ordering across contexts. */ + if (flags & WINED3DCLEAR_TARGET && target->swapchain && target->swapchain->front_buffer == target) + gl_info->gl_ops.gl.p_glFlush();
context_release(context); } diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c index 2a725e6..ea6a984 100644 --- a/dlls/wined3d/surface.c +++ b/dlls/wined3d/surface.c @@ -337,9 +337,6 @@ static void texture2d_depth_blt_fbo(const struct wined3d_device *device, struct gl_info->fbo_ops.glBlitFramebuffer(src_rect->left, src_rect->top, src_rect->right, src_rect->bottom, dst_rect->left, dst_rect->top, dst_rect->right, dst_rect->bottom, gl_mask, GL_NEAREST); checkGLcall("glBlitFramebuffer()"); - - if (wined3d_settings.strict_draw_ordering) - gl_info->gl_ops.gl.p_glFlush(); /* Flush to ensure ordering across contexts. */ }
static BOOL is_multisample_location(const struct wined3d_texture *texture, DWORD location) @@ -489,8 +486,7 @@ static void texture2d_blt_fbo(const struct wined3d_device *device, struct wined3 dst_rect->left, dst_rect->top, dst_rect->right, dst_rect->bottom, GL_COLOR_BUFFER_BIT, gl_filter); checkGLcall("glBlitFramebuffer()");
- if (wined3d_settings.strict_draw_ordering || (dst_location == WINED3D_LOCATION_DRAWABLE - && dst_texture->swapchain->front_buffer == dst_texture)) + if (dst_location == WINED3D_LOCATION_DRAWABLE && dst_texture->swapchain->front_buffer == dst_texture) gl_info->gl_ops.gl.p_glFlush();
if (restore_texture) @@ -1741,9 +1737,6 @@ static void fb_copy_to_texture_hwstretch(struct wined3d_texture *dst_texture, un checkGLcall("glDeleteTextures(1, &backup)"); }
- if (wined3d_settings.strict_draw_ordering) - gl_info->gl_ops.gl.p_glFlush(); /* Flush to ensure ordering across contexts. */ - context_release(context);
/* The texture is now most up to date - If the surface is a render target @@ -2662,9 +2655,8 @@ static DWORD ffp_blitter_blit(struct wined3d_blitter *blitter, enum wined3d_blit checkGLcall("glDisable(GL_TEXTURE_RECTANGLE_ARB)"); }
- if (wined3d_settings.strict_draw_ordering - || (dst_texture->swapchain && dst_texture->swapchain->front_buffer == dst_texture)) - gl_info->gl_ops.gl.p_glFlush(); /* Flush to ensure ordering across contexts. */ + if (dst_texture->swapchain && dst_texture->swapchain->front_buffer == dst_texture) + gl_info->gl_ops.gl.p_glFlush();
/* Restore the color key parameters */ wined3d_texture_set_color_key(src_texture, WINED3D_CKEY_SRC_BLT, diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c index 187e2a2..9e6b599 100644 --- a/dlls/wined3d/texture.c +++ b/dlls/wined3d/texture.c @@ -1931,9 +1931,6 @@ void wined3d_texture_upload_data(struct wined3d_texture *texture, unsigned int s } heap_free(converted_mem);
- if (wined3d_settings.strict_draw_ordering) - gl_info->gl_ops.gl.p_glFlush(); - if (gl_info->quirks & WINED3D_QUIRK_FBO_TEX_UPDATE) { struct wined3d_device *device = texture->resource.device; diff --git a/dlls/wined3d/wined3d_main.c b/dlls/wined3d/wined3d_main.c index b57bcdc..56fae6b 100644 --- a/dlls/wined3d/wined3d_main.c +++ b/dlls/wined3d/wined3d_main.c @@ -83,7 +83,6 @@ struct wined3d_settings wined3d_settings = NULL, /* No wine logo by default */ TRUE, /* Prefer multisample textures to multisample renderbuffers. */ ~0u, /* Don't force a specific sample count by default. */ - FALSE, /* No strict draw ordering. */ FALSE, /* Don't range check relative addressing indices in float constants. */ ~0U, /* No VS shader model limit by default. */ ~0U, /* No HS shader model limit by default. */ @@ -290,13 +289,6 @@ static BOOL wined3d_dll_init(HINSTANCE hInstDLL) if (!get_config_key_dword(hkey, appkey, "SampleCount", &wined3d_settings.sample_count)) ERR_(winediag)("Forcing sample count to %u. This may not be compatible with all applications.\n", wined3d_settings.sample_count); - if (!get_config_key(hkey, appkey, "StrictDrawOrdering", buffer, size) - && !strcmp(buffer,"enabled")) - { - ERR_(winediag)(""StrictDrawOrdering" is deprecated, please use "csmt" instead.\n"); - TRACE("Enforcing strict draw ordering.\n"); - wined3d_settings.strict_draw_ordering = TRUE; - } if (!get_config_key(hkey, appkey, "CheckFloatConstants", buffer, size) && !strcmp(buffer, "enabled")) { diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h index fdbcd7c..5e8734e 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h @@ -395,7 +395,6 @@ struct wined3d_settings char *logo; unsigned int multisample_textures; unsigned int sample_count; - BOOL strict_draw_ordering; BOOL check_float_constants; unsigned int max_sm_vs; unsigned int max_sm_hs;