wined3d: Do not generate FFP fragment shader when SM4 vertex shader is active.

We should not ever generate fixed-function replacement shaders in
D3D10+. It is perfectly valid to draw with NULL pixel shader, e.g. for
stream output.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Józef Kucia 2017-03-22 09:40:57 +01:00 committed by Alexandre Julliard
parent a1ef2347b1
commit 56ce1d3dec
1 changed files with 2 additions and 1 deletions

View File

@ -8869,7 +8869,8 @@ static void set_glsl_shader_program(const struct wined3d_context *context, const
pshader, &ps_compile_args, &np2fixup_info);
ps_list = &pshader->linked_programs;
}
else if (priv->fragment_pipe == &glsl_fragment_pipe)
else if (priv->fragment_pipe == &glsl_fragment_pipe
&& !(vshader && vshader->reg_maps.shader_version.major >= 4))
{
struct glsl_ffp_fragment_shader *ffp_shader;
struct ffp_frag_settings settings;