From: Elizabeth Figura zfigura@codeweavers.com
--- dlls/wined3d/adapter_vk.c | 21 --------------------- dlls/wined3d/context_gl.c | 6 ------ dlls/wined3d/cs.c | 11 ----------- dlls/wined3d/directx.c | 21 --------------------- dlls/wined3d/ffp_gl.c | 25 ------------------------- dlls/wined3d/texture.c | 15 --------------- dlls/wined3d/utils.c | 2 -- dlls/wined3d/view.c | 6 ------ dlls/wined3d/wined3d_private.h | 6 +----- 9 files changed, 1 insertion(+), 112 deletions(-)
diff --git a/dlls/wined3d/adapter_vk.c b/dlls/wined3d/adapter_vk.c index 10c62c3b7ca..9cdd731bcf5 100644 --- a/dlls/wined3d/adapter_vk.c +++ b/dlls/wined3d/adapter_vk.c @@ -100,27 +100,6 @@ static const struct wined3d_state_entry_template misc_state_template_vk[] = {STATE_RENDER(WINED3D_RS_LINEPATTERN), {STATE_RENDER(WINED3D_RS_LINEPATTERN), state_nop}}, {STATE_RENDER(WINED3D_RS_DITHERENABLE), {STATE_RENDER(WINED3D_RS_DITHERENABLE), state_nop}}, {STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), {STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), state_nop}}, - /* Samplers */ - {STATE_SAMPLER(0), {STATE_SAMPLER(0), state_nop}}, - {STATE_SAMPLER(1), {STATE_SAMPLER(1), state_nop}}, - {STATE_SAMPLER(2), {STATE_SAMPLER(2), state_nop}}, - {STATE_SAMPLER(3), {STATE_SAMPLER(3), state_nop}}, - {STATE_SAMPLER(4), {STATE_SAMPLER(4), state_nop}}, - {STATE_SAMPLER(5), {STATE_SAMPLER(5), state_nop}}, - {STATE_SAMPLER(6), {STATE_SAMPLER(6), state_nop}}, - {STATE_SAMPLER(7), {STATE_SAMPLER(7), state_nop}}, - {STATE_SAMPLER(8), {STATE_SAMPLER(8), state_nop}}, - {STATE_SAMPLER(9), {STATE_SAMPLER(9), state_nop}}, - {STATE_SAMPLER(10), {STATE_SAMPLER(10), state_nop}}, - {STATE_SAMPLER(11), {STATE_SAMPLER(11), state_nop}}, - {STATE_SAMPLER(12), {STATE_SAMPLER(12), state_nop}}, - {STATE_SAMPLER(13), {STATE_SAMPLER(13), state_nop}}, - {STATE_SAMPLER(14), {STATE_SAMPLER(14), state_nop}}, - {STATE_SAMPLER(15), {STATE_SAMPLER(15), state_nop}}, - {STATE_SAMPLER(16), /* Vertex sampler 0 */ {STATE_SAMPLER(16), state_nop}}, - {STATE_SAMPLER(17), /* Vertex sampler 1 */ {STATE_SAMPLER(17), state_nop}}, - {STATE_SAMPLER(18), /* Vertex sampler 2 */ {STATE_SAMPLER(18), state_nop}}, - {STATE_SAMPLER(19), /* Vertex sampler 3 */ {STATE_SAMPLER(19), state_nop}}, {STATE_BASEVERTEXINDEX, {STATE_STREAMSRC}}, {STATE_FRAMEBUFFER, {STATE_FRAMEBUFFER, state_nop}}, {STATE_SHADER(WINED3D_SHADER_TYPE_PIXEL), {STATE_SHADER(WINED3D_SHADER_TYPE_PIXEL), state_nop}}, diff --git a/dlls/wined3d/context_gl.c b/dlls/wined3d/context_gl.c index a894bc588c9..d1181c3cb1f 100644 --- a/dlls/wined3d/context_gl.c +++ b/dlls/wined3d/context_gl.c @@ -3206,7 +3206,6 @@ void wined3d_context_gl_apply_blit_state(struct wined3d_context_gl *context_gl, context_invalidate_state(context, STATE_TRANSFORM(WINED3D_TS_TEXTURE0 + sampler)); context_invalidate_state(context, STATE_TEXTURESTAGE(sampler, WINED3D_TSS_COLOR_OP)); } - context_invalidate_state(context, STATE_SAMPLER(sampler)); } context_invalidate_compute_state(context, STATE_COMPUTE_SHADER_RESOURCE_BINDING); context_invalidate_state(context, STATE_GRAPHICS_SHADER_RESOURCE_BINDING); @@ -3319,7 +3318,6 @@ void wined3d_context_gl_apply_ffp_blit_state(struct wined3d_context_gl *context_ { if (sampler < WINED3D_MAX_FFP_TEXTURES) context_invalidate_state(context, STATE_TEXTURESTAGE(sampler, WINED3D_TSS_COLOR_OP)); - context_invalidate_state(context, STATE_SAMPLER(sampler)); } }
@@ -3708,7 +3706,6 @@ static void wined3d_context_gl_map_fixed_function_samplers(struct wined3d_contex if (context_gl->tex_unit_map[i] != i) { wined3d_context_gl_map_stage(context_gl, i, i); - context_invalidate_state(&context_gl->c, STATE_SAMPLER(i)); context_invalidate_state(&context_gl->c, STATE_GRAPHICS_SHADER_RESOURCE_BINDING); context_invalidate_texture_stage(&context_gl->c, i); } @@ -3724,7 +3721,6 @@ static void wined3d_context_gl_map_fixed_function_samplers(struct wined3d_contex if (context_gl->tex_unit_map[i] != tex) { wined3d_context_gl_map_stage(context_gl, i, tex); - context_invalidate_state(&context_gl->c, STATE_SAMPLER(i)); context_invalidate_state(&context_gl->c, STATE_GRAPHICS_SHADER_RESOURCE_BINDING); context_invalidate_texture_stage(&context_gl->c, i); } @@ -3745,7 +3741,6 @@ static void wined3d_context_gl_map_psamplers(struct wined3d_context_gl *context_ if (resource_info[i].type && context_gl->tex_unit_map[i] != i) { wined3d_context_gl_map_stage(context_gl, i, i); - context_invalidate_state(&context_gl->c, STATE_SAMPLER(i)); context_invalidate_state(&context_gl->c, STATE_GRAPHICS_SHADER_RESOURCE_BINDING); if (i < d3d_info->ffp_fragment_caps.max_blend_stages) context_invalidate_texture_stage(&context_gl->c, i); @@ -3808,7 +3803,6 @@ static void wined3d_context_gl_map_vsamplers(struct wined3d_context_gl *context_ if (context_gl->tex_unit_map[vsampler_idx] != start) { wined3d_context_gl_map_stage(context_gl, vsampler_idx, start); - context_invalidate_state(&context_gl->c, STATE_SAMPLER(vsampler_idx)); context_invalidate_state(&context_gl->c, STATE_GRAPHICS_SHADER_RESOURCE_BINDING); }
diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c index 5ee4c8d1538..ebccc53951e 100644 --- a/dlls/wined3d/cs.c +++ b/dlls/wined3d/cs.c @@ -1575,10 +1575,6 @@ static void wined3d_cs_exec_set_texture(struct wined3d_cs *cs, const void *data) } }
- if (op->shader_type == WINED3D_SHADER_TYPE_VERTEX) - device_invalidate_state(cs->c.device, STATE_SAMPLER(WINED3D_VERTEX_SAMPLER_OFFSET + op->bind_index)); - else - device_invalidate_state(cs->c.device, STATE_SAMPLER(op->bind_index)); device_invalidate_state(cs->c.device, STATE_GRAPHICS_SHADER_RESOURCE_BINDING);
if (new_use_color_key != old_use_color_key) @@ -1696,15 +1692,8 @@ static void wined3d_cs_exec_set_samplers(struct wined3d_cs *cs, const void *data unsigned int i;
for (i = 0; i < op->count; ++i) - { cs->state.sampler[op->type][op->start_idx + i] = op->samplers[i];
- if (op->type == WINED3D_SHADER_TYPE_PIXEL && i < WINED3D_MAX_FRAGMENT_SAMPLERS) - device_invalidate_state(cs->c.device, STATE_SAMPLER(i)); - else if (op->type == WINED3D_SHADER_TYPE_VERTEX && i < WINED3D_MAX_VERTEX_SAMPLERS) - device_invalidate_state(cs->c.device, STATE_SAMPLER(WINED3D_VERTEX_SAMPLER_OFFSET + i)); - } - if (op->type != WINED3D_SHADER_TYPE_COMPUTE) device_invalidate_state(cs->c.device, STATE_GRAPHICS_SHADER_RESOURCE_BINDING); else diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index b11d284c10b..67fd4b9d680 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c @@ -2823,27 +2823,6 @@ static const struct wined3d_state_entry_template misc_state_template_no3d[] = {STATE_RENDER(WINED3D_RS_ZFUNC), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_DITHERENABLE), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), {STATE_VDECL}}, - /* Samplers */ - {STATE_SAMPLER(0), {STATE_VDECL}}, - {STATE_SAMPLER(1), {STATE_VDECL}}, - {STATE_SAMPLER(2), {STATE_VDECL}}, - {STATE_SAMPLER(3), {STATE_VDECL}}, - {STATE_SAMPLER(4), {STATE_VDECL}}, - {STATE_SAMPLER(5), {STATE_VDECL}}, - {STATE_SAMPLER(6), {STATE_VDECL}}, - {STATE_SAMPLER(7), {STATE_VDECL}}, - {STATE_SAMPLER(8), {STATE_VDECL}}, - {STATE_SAMPLER(9), {STATE_VDECL}}, - {STATE_SAMPLER(10), {STATE_VDECL}}, - {STATE_SAMPLER(11), {STATE_VDECL}}, - {STATE_SAMPLER(12), {STATE_VDECL}}, - {STATE_SAMPLER(13), {STATE_VDECL}}, - {STATE_SAMPLER(14), {STATE_VDECL}}, - {STATE_SAMPLER(15), {STATE_VDECL}}, - {STATE_SAMPLER(16), /* Vertex sampler 0 */ {STATE_VDECL}}, - {STATE_SAMPLER(17), /* Vertex sampler 1 */ {STATE_VDECL}}, - {STATE_SAMPLER(18), /* Vertex sampler 2 */ {STATE_VDECL}}, - {STATE_SAMPLER(19), /* Vertex sampler 3 */ {STATE_VDECL}}, {STATE_BASEVERTEXINDEX, {STATE_VDECL}}, {STATE_FRAMEBUFFER, {STATE_VDECL}}, {STATE_SHADER(WINED3D_SHADER_TYPE_PIXEL), {STATE_VDECL}}, diff --git a/dlls/wined3d/ffp_gl.c b/dlls/wined3d/ffp_gl.c index c708197bf8e..ab0e5afab24 100644 --- a/dlls/wined3d/ffp_gl.c +++ b/dlls/wined3d/ffp_gl.c @@ -1032,10 +1032,6 @@ static void state_sample_mask_w(struct wined3d_context *context, const struct wi WARN("Unsupported in local OpenGL implementation: glSampleMaski.\n"); }
-static void sampler(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id) -{ -} - static void state_compute_shader(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id) { context->shader_update_mask |= 1u << WINED3D_SHADER_TYPE_COMPUTE; @@ -1575,27 +1571,6 @@ const struct wined3d_state_entry_template misc_state_template_gl[] = { STATE_RENDER(WINED3D_RS_DITHERENABLE), { STATE_RENDER(WINED3D_RS_DITHERENABLE), state_ditherenable }, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), { STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), state_msaa }, ARB_MULTISAMPLE }, { STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), { STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), state_msaa_w }, WINED3D_GL_EXT_NONE }, - /* Samplers */ - { STATE_SAMPLER(0), { STATE_SAMPLER(0), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(1), { STATE_SAMPLER(1), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(2), { STATE_SAMPLER(2), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(3), { STATE_SAMPLER(3), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(4), { STATE_SAMPLER(4), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(5), { STATE_SAMPLER(5), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(6), { STATE_SAMPLER(6), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(7), { STATE_SAMPLER(7), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(8), { STATE_SAMPLER(8), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(9), { STATE_SAMPLER(9), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(10), { STATE_SAMPLER(10), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(11), { STATE_SAMPLER(11), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(12), { STATE_SAMPLER(12), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(13), { STATE_SAMPLER(13), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(14), { STATE_SAMPLER(14), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(15), { STATE_SAMPLER(15), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(16), /* Vertex sampler 0 */ { STATE_SAMPLER(16), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(17), /* Vertex sampler 1 */ { STATE_SAMPLER(17), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(18), /* Vertex sampler 2 */ { STATE_SAMPLER(18), sampler }, WINED3D_GL_EXT_NONE }, - { STATE_SAMPLER(19), /* Vertex sampler 3 */ { STATE_SAMPLER(19), sampler }, WINED3D_GL_EXT_NONE }, { STATE_BASEVERTEXINDEX, { STATE_BASEVERTEXINDEX, state_nop, }, ARB_DRAW_ELEMENTS_BASE_VERTEX }, { STATE_BASEVERTEXINDEX, { STATE_STREAMSRC, NULL, }, WINED3D_GL_EXT_NONE }, { STATE_FRAMEBUFFER, { STATE_FRAMEBUFFER, context_state_fb }, WINED3D_GL_EXT_NONE }, diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c index b2f076264c6..49832f9fabf 100644 --- a/dlls/wined3d/texture.c +++ b/dlls/wined3d/texture.c @@ -1403,21 +1403,6 @@ GLuint wined3d_texture_gl_prepare_gl_texture(struct wined3d_texture_gl *texture_ void wined3d_texture_gl_bind_and_dirtify(struct wined3d_texture_gl *texture_gl, struct wined3d_context_gl *context_gl, BOOL srgb) { - /* We don't need a specific texture unit, but after binding the texture - * the current unit is dirty. Read the unit back instead of switching to - * 0, this avoids messing around with the state manager's GL states. The - * current texture unit should always be a valid one. - * - * To be more specific, this is tricky because we can implicitly be - * called from sampler() in state.c. This means we can't touch anything - * other than whatever happens to be the currently active texture, or we - * would risk marking already applied sampler states dirty again. */ - if (context_gl->active_texture < ARRAY_SIZE(context_gl->rev_tex_unit_map)) - { - unsigned int active_sampler = context_gl->rev_tex_unit_map[context_gl->active_texture]; - if (active_sampler != WINED3D_UNMAPPED_STAGE) - context_invalidate_state(&context_gl->c, STATE_SAMPLER(active_sampler)); - } /* FIXME: Ideally we'd only do this when touching a binding that's used by * a shader. */ context_invalidate_compute_state(&context_gl->c, STATE_COMPUTE_SHADER_RESOURCE_BINDING); diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c index 5e33066c8b8..2d576b77c66 100644 --- a/dlls/wined3d/utils.c +++ b/dlls/wined3d/utils.c @@ -5347,8 +5347,6 @@ const char *debug_d3dstate(uint32_t state) return wine_dbg_sprintf("STATE_TEXTURESTAGE(%#x, %s)", texture_stage, debug_d3dtexturestate(texture_state)); } - if (STATE_IS_SAMPLER(state)) - return wine_dbg_sprintf("STATE_SAMPLER(%#x)", state - STATE_SAMPLER(0)); if (STATE_IS_COMPUTE_SHADER(state)) return wine_dbg_sprintf("STATE_SHADER(%s)", debug_shader_type(WINED3D_SHADER_TYPE_COMPUTE)); if (STATE_IS_GRAPHICS_SHADER(state)) diff --git a/dlls/wined3d/view.c b/dlls/wined3d/view.c index 0f597be397a..ca97f6258eb 100644 --- a/dlls/wined3d/view.c +++ b/dlls/wined3d/view.c @@ -1310,12 +1310,6 @@ void wined3d_shader_resource_view_gl_bind(struct wined3d_shader_resource_view_gl static void shader_resource_view_gl_bind_and_dirtify(struct wined3d_shader_resource_view_gl *view_gl, struct wined3d_context_gl *context_gl) { - if (context_gl->active_texture < ARRAY_SIZE(context_gl->rev_tex_unit_map)) - { - unsigned int active_sampler = context_gl->rev_tex_unit_map[context_gl->active_texture]; - if (active_sampler != WINED3D_UNMAPPED_STAGE) - context_invalidate_state(&context_gl->c, STATE_SAMPLER(active_sampler)); - } /* FIXME: Ideally we'd only do this when touching a binding that's used by * a shader. */ context_invalidate_compute_state(&context_gl->c, STATE_COMPUTE_SHADER_RESOURCE_BINDING); diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h index 757c6638645..35002309a42 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h @@ -1729,11 +1729,7 @@ void dispatch_compute(struct wined3d_device *device, const struct wined3d_state #define STATE_IS_TEXTURESTAGE(a) \ ((a) >= STATE_TEXTURESTAGE(0, 1) && (a) <= STATE_TEXTURESTAGE(WINED3D_MAX_FFP_TEXTURES - 1, WINED3D_HIGHEST_TEXTURE_STATE))
-/* + 1 because samplers start with 0 */ -#define STATE_SAMPLER(num) (STATE_TEXTURESTAGE(WINED3D_MAX_FFP_TEXTURES - 1, WINED3D_HIGHEST_TEXTURE_STATE) + 1 + (num)) -#define STATE_IS_SAMPLER(num) ((num) >= STATE_SAMPLER(0) && (num) <= STATE_SAMPLER(WINED3D_MAX_COMBINED_SAMPLERS - 1)) - -#define STATE_GRAPHICS_SHADER(a) (STATE_SAMPLER(WINED3D_MAX_COMBINED_SAMPLERS) + (a)) +#define STATE_GRAPHICS_SHADER(a) (STATE_TEXTURESTAGE(WINED3D_MAX_FFP_TEXTURES - 1, WINED3D_HIGHEST_TEXTURE_STATE) + 1 + (a)) #define STATE_IS_GRAPHICS_SHADER(a) \ ((a) >= STATE_GRAPHICS_SHADER(0) && (a) < STATE_GRAPHICS_SHADER(WINED3D_SHADER_TYPE_GRAPHICS_COUNT))