Removing WINED3D_RS entries from state tables and moving stubs to wined3d_device_apply_stateblock.
From: Max Figura maxfigura5061@gmail.com
--- dlls/wined3d/adapter_vk.c | 1 - dlls/wined3d/device.c | 9 +++++++++ dlls/wined3d/directx.c | 1 - dlls/wined3d/state.c | 12 +----------- 4 files changed, 10 insertions(+), 13 deletions(-)
diff --git a/dlls/wined3d/adapter_vk.c b/dlls/wined3d/adapter_vk.c index 6e46106a5e6..2db44cc8000 100644 --- a/dlls/wined3d/adapter_vk.c +++ b/dlls/wined3d/adapter_vk.c @@ -98,7 +98,6 @@ static const struct wined3d_state_entry_template misc_state_template_vk[] = {STATE_INDEXBUFFER, {STATE_INDEXBUFFER, state_nop}}, {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_SOFTWAREVERTEXPROCESSING), {STATE_RENDER(WINED3D_RS_SOFTWAREVERTEXPROCESSING), state_nop}}, {STATE_RENDER(WINED3D_RS_PATCHEDGESTYLE), {STATE_RENDER(WINED3D_RS_PATCHEDGESTYLE), state_nop}}, {STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), {STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), state_nop}}, {STATE_RENDER(WINED3D_RS_POSITIONDEGREE), {STATE_RENDER(WINED3D_RS_POSITIONDEGREE), state_nop}}, diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index 5d745a6e382..4b17afd87d1 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c @@ -4163,6 +4163,15 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device, FIXME("Render state WINED3D_RS_COLORKEYBLENDENABLE not implemented yet.\n"); break;
+ case WINED3D_RS_SOFTWAREVERTEXPROCESSING: + { + static unsigned int once; + + if ((state->rs[WINED3D_RS_SOFTWAREVERTEXPROCESSING]) && !once++) + FIXME("Software vertex processing not implemented.\n"); + break; + } + default: wined3d_device_set_render_state(device, idx, state->rs[idx]); break; diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index 0ec9570e1b6..3426e222d33 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c @@ -2811,7 +2811,6 @@ static const struct wined3d_state_entry_template misc_state_template_no3d[] = {STATE_RENDER(WINED3D_RS_LINEPATTERN), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_ZFUNC), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_DITHERENABLE), {STATE_VDECL}}, - {STATE_RENDER(WINED3D_RS_SOFTWAREVERTEXPROCESSING), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_PATCHEDGESTYLE), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_POSITIONDEGREE), {STATE_VDECL}}, diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c index 6ef82e9be4c..a7f8aa91574 100644 --- a/dlls/wined3d/state.c +++ b/dlls/wined3d/state.c @@ -2018,16 +2018,6 @@ static void state_tessellation(struct wined3d_context *context, const struct win state->render_states[WINED3D_RS_ENABLEADAPTIVETESSELLATION]); }
-static void state_swvp(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id) -{ - static int once; - if (state->render_states[WINED3D_RS_SOFTWAREVERTEXPROCESSING]) - { - if (!once++) - FIXME("Software vertex processing not implemented.\n"); - } -} - static void get_src_and_opr(uint32_t arg, BOOL is_alpha, GLenum* source, GLenum* operand) { /* The WINED3DTA_ALPHAREPLICATE flag specifies the alpha component of the * input should be used for all input components. The WINED3DTA_COMPLEMENT @@ -4645,7 +4635,6 @@ const struct wined3d_state_entry_template misc_state_template_gl[] = { STATE_RENDER(WINED3D_RS_LINEPATTERN), { STATE_RENDER(WINED3D_RS_LINEPATTERN), state_linepattern }, WINED3D_GL_LEGACY_CONTEXT }, { STATE_RENDER(WINED3D_RS_LINEPATTERN), { STATE_RENDER(WINED3D_RS_LINEPATTERN), state_linepattern_w }, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_DITHERENABLE), { STATE_RENDER(WINED3D_RS_DITHERENABLE), state_ditherenable }, WINED3D_GL_EXT_NONE }, - { STATE_RENDER(WINED3D_RS_SOFTWAREVERTEXPROCESSING), { STATE_RENDER(WINED3D_RS_SOFTWAREVERTEXPROCESSING), state_swvp }, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_PATCHEDGESTYLE), { STATE_RENDER(WINED3D_RS_PATCHEDGESTYLE), state_patchedgestyle}, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), { STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), state_patchsegments }, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_POSITIONDEGREE), { STATE_RENDER(WINED3D_RS_POSITIONDEGREE), state_positiondegree}, WINED3D_GL_EXT_NONE }, @@ -5426,6 +5415,7 @@ static void validate_state_table(struct wined3d_state_entry *state_table) {138, 138}, {144, 144}, {149, 150}, + {153, 153}, {162, 162}, {168, 169}, {171, 171},
From: Max Figura maxfigura5061@gmail.com
--- dlls/wined3d/adapter_vk.c | 1 - dlls/wined3d/device.c | 6 ++++++ dlls/wined3d/directx.c | 1 - dlls/wined3d/state.c | 10 +--------- 4 files changed, 7 insertions(+), 11 deletions(-)
diff --git a/dlls/wined3d/adapter_vk.c b/dlls/wined3d/adapter_vk.c index 2db44cc8000..1b61801e68d 100644 --- a/dlls/wined3d/adapter_vk.c +++ b/dlls/wined3d/adapter_vk.c @@ -98,7 +98,6 @@ static const struct wined3d_state_entry_template misc_state_template_vk[] = {STATE_INDEXBUFFER, {STATE_INDEXBUFFER, state_nop}}, {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_PATCHEDGESTYLE), {STATE_RENDER(WINED3D_RS_PATCHEDGESTYLE), state_nop}}, {STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), {STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), state_nop}}, {STATE_RENDER(WINED3D_RS_POSITIONDEGREE), {STATE_RENDER(WINED3D_RS_POSITIONDEGREE), state_nop}}, {STATE_RENDER(WINED3D_RS_NORMALDEGREE), {STATE_RENDER(WINED3D_RS_NORMALDEGREE), state_nop}}, diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index 4b17afd87d1..634fa9576dc 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c @@ -4172,6 +4172,12 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device, break; }
+ case WINED3D_RS_PATCHEDGESTYLE: + if (state->rs[WINED3D_RS_PATCHEDGESTYLE] != WINED3D_PATCH_EDGE_DISCRETE) + FIXME("WINED3D_RS_PATCHEDGESTYLE %#x not yet implemented.\n", + state->rs[WINED3D_RS_PATCHEDGESTYLE]); + break; + default: wined3d_device_set_render_state(device, idx, state->rs[idx]); break; diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index 3426e222d33..6ad3e26ca55 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c @@ -2811,7 +2811,6 @@ static const struct wined3d_state_entry_template misc_state_template_no3d[] = {STATE_RENDER(WINED3D_RS_LINEPATTERN), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_ZFUNC), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_DITHERENABLE), {STATE_VDECL}}, - {STATE_RENDER(WINED3D_RS_PATCHEDGESTYLE), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_POSITIONDEGREE), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_NORMALDEGREE), {STATE_VDECL}}, diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c index a7f8aa91574..8ec7bb45b77 100644 --- a/dlls/wined3d/state.c +++ b/dlls/wined3d/state.c @@ -1970,13 +1970,6 @@ static void state_sample_mask_w(struct wined3d_context *context, const struct wi WARN("Unsupported in local OpenGL implementation: glSampleMaski.\n"); }
-static void state_patchedgestyle(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id) -{ - if (state->render_states[WINED3D_RS_PATCHEDGESTYLE] != WINED3D_PATCH_EDGE_DISCRETE) - FIXME("WINED3D_RS_PATCHEDGESTYLE %#x not yet implemented.\n", - state->render_states[WINED3D_RS_PATCHEDGESTYLE]); -} - static void state_patchsegments(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id) { union { @@ -4635,7 +4628,6 @@ const struct wined3d_state_entry_template misc_state_template_gl[] = { STATE_RENDER(WINED3D_RS_LINEPATTERN), { STATE_RENDER(WINED3D_RS_LINEPATTERN), state_linepattern }, WINED3D_GL_LEGACY_CONTEXT }, { STATE_RENDER(WINED3D_RS_LINEPATTERN), { STATE_RENDER(WINED3D_RS_LINEPATTERN), state_linepattern_w }, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_DITHERENABLE), { STATE_RENDER(WINED3D_RS_DITHERENABLE), state_ditherenable }, WINED3D_GL_EXT_NONE }, - { STATE_RENDER(WINED3D_RS_PATCHEDGESTYLE), { STATE_RENDER(WINED3D_RS_PATCHEDGESTYLE), state_patchedgestyle}, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), { STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), state_patchsegments }, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_POSITIONDEGREE), { STATE_RENDER(WINED3D_RS_POSITIONDEGREE), state_positiondegree}, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_NORMALDEGREE), { STATE_RENDER(WINED3D_RS_NORMALDEGREE), state_normaldegree }, WINED3D_GL_EXT_NONE }, @@ -5416,7 +5408,7 @@ static void validate_state_table(struct wined3d_state_entry *state_table) {144, 144}, {149, 150}, {153, 153}, - {162, 162}, + {162, 163}, {168, 169}, {171, 171}, {174, 177},
From: Max Figura maxfigura5061@gmail.com
--- dlls/wined3d/adapter_vk.c | 1 - dlls/wined3d/device.c | 22 ++++++++++++++++++++++ dlls/wined3d/directx.c | 1 - dlls/wined3d/state.c | 23 +---------------------- 4 files changed, 23 insertions(+), 24 deletions(-)
diff --git a/dlls/wined3d/adapter_vk.c b/dlls/wined3d/adapter_vk.c index 1b61801e68d..f743d6386d7 100644 --- a/dlls/wined3d/adapter_vk.c +++ b/dlls/wined3d/adapter_vk.c @@ -98,7 +98,6 @@ static const struct wined3d_state_entry_template misc_state_template_vk[] = {STATE_INDEXBUFFER, {STATE_INDEXBUFFER, state_nop}}, {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_PATCHSEGMENTS), {STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), state_nop}}, {STATE_RENDER(WINED3D_RS_POSITIONDEGREE), {STATE_RENDER(WINED3D_RS_POSITIONDEGREE), state_nop}}, {STATE_RENDER(WINED3D_RS_NORMALDEGREE), {STATE_RENDER(WINED3D_RS_NORMALDEGREE), state_nop}}, {STATE_RENDER(WINED3D_RS_MINTESSELLATIONLEVEL), {STATE_RENDER(WINED3D_RS_ENABLEADAPTIVETESSELLATION)}}, diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index 634fa9576dc..ea2900eeae7 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c @@ -4178,6 +4178,28 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device, state->rs[WINED3D_RS_PATCHEDGESTYLE]); break;
+ case WINED3D_RS_PATCHSEGMENTS: + { + union + { + DWORD d; + float f; + } tmpvalue; + tmpvalue.f = 1.0f; + + if (state->rs[WINED3D_RS_PATCHSEGMENTS] != tmpvalue.d) + { + static bool displayed = false; + + tmpvalue.d = state->rs[WINED3D_RS_PATCHSEGMENTS]; + if(!displayed) + FIXME("(WINED3D_RS_PATCHSEGMENTS,%f) not yet implemented.\n", tmpvalue.f); + + displayed = true; + } + break; + } + default: wined3d_device_set_render_state(device, idx, state->rs[idx]); break; diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index 6ad3e26ca55..bb34c0f03af 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c @@ -2811,7 +2811,6 @@ static const struct wined3d_state_entry_template misc_state_template_no3d[] = {STATE_RENDER(WINED3D_RS_LINEPATTERN), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_ZFUNC), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_DITHERENABLE), {STATE_VDECL}}, - {STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_POSITIONDEGREE), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_NORMALDEGREE), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_MINTESSELLATIONLEVEL), {STATE_VDECL}}, diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c index 8ec7bb45b77..78ad0ed1062 100644 --- a/dlls/wined3d/state.c +++ b/dlls/wined3d/state.c @@ -1970,26 +1970,6 @@ static void state_sample_mask_w(struct wined3d_context *context, const struct wi WARN("Unsupported in local OpenGL implementation: glSampleMaski.\n"); }
-static void state_patchsegments(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id) -{ - union { - DWORD d; - float f; - } tmpvalue; - tmpvalue.f = 1.0f; - - if (state->render_states[WINED3D_RS_PATCHSEGMENTS] != tmpvalue.d) - { - static BOOL displayed = FALSE; - - tmpvalue.d = state->render_states[WINED3D_RS_PATCHSEGMENTS]; - if(!displayed) - FIXME("(WINED3D_RS_PATCHSEGMENTS,%f) not yet implemented\n", tmpvalue.f); - - displayed = TRUE; - } -} - static void state_positiondegree(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id) { if (state->render_states[WINED3D_RS_POSITIONDEGREE] != WINED3D_DEGREE_CUBIC) @@ -4628,7 +4608,6 @@ const struct wined3d_state_entry_template misc_state_template_gl[] = { STATE_RENDER(WINED3D_RS_LINEPATTERN), { STATE_RENDER(WINED3D_RS_LINEPATTERN), state_linepattern }, WINED3D_GL_LEGACY_CONTEXT }, { STATE_RENDER(WINED3D_RS_LINEPATTERN), { STATE_RENDER(WINED3D_RS_LINEPATTERN), state_linepattern_w }, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_DITHERENABLE), { STATE_RENDER(WINED3D_RS_DITHERENABLE), state_ditherenable }, WINED3D_GL_EXT_NONE }, - { STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), { STATE_RENDER(WINED3D_RS_PATCHSEGMENTS), state_patchsegments }, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_POSITIONDEGREE), { STATE_RENDER(WINED3D_RS_POSITIONDEGREE), state_positiondegree}, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_NORMALDEGREE), { STATE_RENDER(WINED3D_RS_NORMALDEGREE), state_normaldegree }, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_MINTESSELLATIONLEVEL), { STATE_RENDER(WINED3D_RS_ENABLEADAPTIVETESSELLATION),NULL }, WINED3D_GL_EXT_NONE }, @@ -5408,7 +5387,7 @@ static void validate_state_table(struct wined3d_state_entry *state_table) {144, 144}, {149, 150}, {153, 153}, - {162, 163}, + {162, 164}, {168, 169}, {171, 171}, {174, 177},
From: Max Figura maxfigura5061@gmail.com
--- dlls/wined3d/adapter_vk.c | 1 - dlls/wined3d/device.c | 4 ++++ dlls/wined3d/directx.c | 1 - dlls/wined3d/state.c | 8 +------- 4 files changed, 5 insertions(+), 9 deletions(-)
diff --git a/dlls/wined3d/adapter_vk.c b/dlls/wined3d/adapter_vk.c index f743d6386d7..7e33aea747b 100644 --- a/dlls/wined3d/adapter_vk.c +++ b/dlls/wined3d/adapter_vk.c @@ -108,7 +108,6 @@ static const struct wined3d_state_entry_template misc_state_template_vk[] = {STATE_RENDER(WINED3D_RS_ADAPTIVETESS_W), {STATE_RENDER(WINED3D_RS_ENABLEADAPTIVETESSELLATION)}}, {STATE_RENDER(WINED3D_RS_ENABLEADAPTIVETESSELLATION), {STATE_RENDER(WINED3D_RS_ENABLEADAPTIVETESSELLATION), state_nop}}, {STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), {STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), state_nop}}, - {STATE_RENDER(WINED3D_RS_DEBUGMONITORTOKEN), {STATE_RENDER(WINED3D_RS_DEBUGMONITORTOKEN), state_nop}}, /* Samplers */ {STATE_SAMPLER(0), {STATE_SAMPLER(0), state_nop}}, {STATE_SAMPLER(1), {STATE_SAMPLER(1), state_nop}}, diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index ea2900eeae7..f823e2ffa4a 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c @@ -4200,6 +4200,10 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device, break; }
+ case WINED3D_RS_DEBUGMONITORTOKEN: + WARN("token: %#x.\n", state->rs[WINED3D_RS_DEBUGMONITORTOKEN]); + break; + default: wined3d_device_set_render_state(device, idx, state->rs[idx]); break; diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index bb34c0f03af..db335652d8e 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c @@ -2821,7 +2821,6 @@ static const struct wined3d_state_entry_template misc_state_template_no3d[] = {STATE_RENDER(WINED3D_RS_ADAPTIVETESS_W), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_ENABLEADAPTIVETESSELLATION), {STATE_VDECL}}, {STATE_RENDER(WINED3D_RS_MULTISAMPLEANTIALIAS), {STATE_VDECL}}, - {STATE_RENDER(WINED3D_RS_DEBUGMONITORTOKEN), {STATE_VDECL}}, /* Samplers */ {STATE_SAMPLER(0), {STATE_VDECL}}, {STATE_SAMPLER(1), {STATE_VDECL}}, diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c index 78ad0ed1062..af26b3f9404 100644 --- a/dlls/wined3d/state.c +++ b/dlls/wined3d/state.c @@ -1766,11 +1766,6 @@ static void state_pscale(struct wined3d_context *context, const struct wined3d_s checkGLcall("glPointSize(...);"); }
-static void state_debug_monitor(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id) -{ - WARN("token: %#x.\n", state->render_states[WINED3D_RS_DEBUGMONITORTOKEN]); -} - static void state_localviewer(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id) { const struct wined3d_gl_info *gl_info = wined3d_context_gl(context)->gl_info; @@ -4619,7 +4614,6 @@ const struct wined3d_state_entry_template misc_state_template_gl[] = { STATE_RENDER(WINED3D_RS_ENABLEADAPTIVETESSELLATION),{ STATE_RENDER(WINED3D_RS_ENABLEADAPTIVETESSELLATION),state_tessellation }, 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 }, - { STATE_RENDER(WINED3D_RS_DEBUGMONITORTOKEN), { STATE_RENDER(WINED3D_RS_DEBUGMONITORTOKEN), state_debug_monitor }, 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 }, @@ -5387,7 +5381,7 @@ static void validate_state_table(struct wined3d_state_entry *state_table) {144, 144}, {149, 150}, {153, 153}, - {162, 164}, + {162, 165}, {168, 169}, {171, 171}, {174, 177},
From: Max Figura maxfigura5061@gmail.com
--- dlls/wined3d/device.c | 3 +++ dlls/wined3d/glsl_shader.c | 1 - dlls/wined3d/shader_spirv.c | 1 - dlls/wined3d/state.c | 3 +-- 4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index f823e2ffa4a..a19fb99caaf 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c @@ -4204,6 +4204,9 @@ void CDECL wined3d_device_apply_stateblock(struct wined3d_device *device, WARN("token: %#x.\n", state->rs[WINED3D_RS_DEBUGMONITORTOKEN]); break;
+ case WINED3D_RS_INDEXEDVERTEXBLENDENABLE: + break; + default: wined3d_device_set_render_state(device, idx, state->rs[idx]); break; diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c index 451e023d5fb..749f980ea03 100644 --- a/dlls/wined3d/glsl_shader.c +++ b/dlls/wined3d/glsl_shader.c @@ -11971,7 +11971,6 @@ static const struct wined3d_state_entry_template glsl_vertex_pipe_vp_states[] = {STATE_RENDER(WINED3D_RS_POINTSCALE_C), {STATE_RENDER(WINED3D_RS_POINTSCALEENABLE), NULL }, WINED3D_GL_EXT_NONE }, {STATE_RENDER(WINED3D_RS_POINTSIZE_MAX), {STATE_RENDER(WINED3D_RS_POINTSIZE_MIN), NULL }, WINED3D_GL_EXT_NONE }, {STATE_RENDER(WINED3D_RS_TWEENFACTOR), {STATE_SHADER(WINED3D_SHADER_TYPE_VERTEX), NULL }, WINED3D_GL_EXT_NONE }, - {STATE_RENDER(WINED3D_RS_INDEXEDVERTEXBLENDENABLE), {STATE_SHADER(WINED3D_SHADER_TYPE_VERTEX), NULL }, WINED3D_GL_EXT_NONE }, /* NP2 texture matrix fixups. They are not needed if * GL_ARB_texture_non_power_of_two is supported. Otherwise, register * glsl_vertex_pipe_texmatrix(), which takes care of updating the texture diff --git a/dlls/wined3d/shader_spirv.c b/dlls/wined3d/shader_spirv.c index 1dff25cc6a6..05e670d3af9 100644 --- a/dlls/wined3d/shader_spirv.c +++ b/dlls/wined3d/shader_spirv.c @@ -1147,7 +1147,6 @@ static const struct wined3d_state_entry_template spirv_vertex_pipe_vk_vp_states[ {STATE_RENDER(WINED3D_RS_POINTSCALE_B), {STATE_RENDER(WINED3D_RS_POINTSCALE_B), state_nop}}, {STATE_RENDER(WINED3D_RS_POINTSCALE_C), {STATE_RENDER(WINED3D_RS_POINTSCALE_C), state_nop}}, {STATE_RENDER(WINED3D_RS_POINTSIZE_MAX), {STATE_RENDER(WINED3D_RS_POINTSIZE_MAX), state_nop}}, - {STATE_RENDER(WINED3D_RS_INDEXEDVERTEXBLENDENABLE), {STATE_RENDER(WINED3D_RS_INDEXEDVERTEXBLENDENABLE), state_nop}}, {STATE_RENDER(WINED3D_RS_TWEENFACTOR), {STATE_RENDER(WINED3D_RS_TWEENFACTOR), state_nop}}, {STATE_MATERIAL, {STATE_MATERIAL, state_nop}}, {STATE_SHADER(WINED3D_SHADER_TYPE_VERTEX), {STATE_SHADER(WINED3D_SHADER_TYPE_VERTEX), state_nop}}, diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c index af26b3f9404..ed369064640 100644 --- a/dlls/wined3d/state.c +++ b/dlls/wined3d/state.c @@ -4987,7 +4987,6 @@ static const struct wined3d_state_entry_template vp_ffp_states[] = { STATE_RENDER(WINED3D_RS_POINTSIZE_MAX), { STATE_RENDER(WINED3D_RS_POINTSIZE_MIN), NULL }, EXT_POINT_PARAMETERS }, { STATE_RENDER(WINED3D_RS_POINTSIZE_MAX), { STATE_RENDER(WINED3D_RS_POINTSIZE_MIN), NULL }, WINED3D_GL_EXT_NONE }, { STATE_RENDER(WINED3D_RS_TWEENFACTOR), { STATE_RENDER(WINED3D_RS_VERTEXBLEND), NULL }, WINED3D_GL_EXT_NONE }, - { STATE_RENDER(WINED3D_RS_INDEXEDVERTEXBLENDENABLE), { STATE_RENDER(WINED3D_RS_VERTEXBLEND), NULL }, WINED3D_GL_EXT_NONE },
/* Samplers for NP2 texture matrix adjustions. They are not needed if GL_ARB_texture_non_power_of_two is supported, * so register a NULL state handler in that case to get the vertex part of sampler() skipped(VTF is handled in the misc states. @@ -5382,7 +5381,7 @@ static void validate_state_table(struct wined3d_state_entry *state_table) {149, 150}, {153, 153}, {162, 165}, - {168, 169}, + {167, 169}, {171, 171}, {174, 177}, {185, 193},
This merge request was approved by Zebediah Figura.
This merge request was approved by Jan Sikorski.