Commit a9f91246 authored by Tobias Jakobi's avatar Tobias Jakobi Committed by Alexandre Julliard

wined3d: Force NP2 fixup constant reloading in shader_glsl_select.

parent ef7f769b
......@@ -4250,6 +4250,13 @@ static void shader_glsl_select(IWineD3DDevice *iface, BOOL usePS, BOOL useVS) {
if (program_id) TRACE("Using GLSL program %u\n", program_id);
GL_EXTCALL(glUseProgramObjectARB(program_id));
checkGLcall("glUseProgramObjectARB");
/* In case that NP2 texcoord fixup data is found for the selected program, trigger a reload of the
* constants. This has to be done because it can't be guaranteed that sampler() (from state.c) is
* called between selecting the shader and using it, which results in wrong fixup for some frames. */
if (priv->glsl_program && priv->glsl_program->np2Fixup_info) {
This->shader_backend->shader_load_np2fixup_constants(iface, usePS, useVS);
}
}
/* GL locking is done by the caller */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment