[PATCH 3/5] wined3d: Check relative addressing indices when accessing uniforms in GLSL shaders.

Henri Verbeet hverbeet at gmail.com
Thu Feb 11 15:27:30 CST 2016


On 11 February 2016 at 22:03, Stefan Dösinger <stefandoesinger at gmail.com> wrote:
>> +                        sprintf(register_name, "(%s + %u >= 0 &&
>> %s + %u < %u ? %s_c[%s + %u] : vec4(0.0))",
> Did you do any testing on the performance impact of this? This seems
> like something where it's convenient to sacrifice performance
> everywhere for a corner case, but later on we wonder why games are
> unplayably slow. Keep in mind that currently it's pretty difficult to
> be GPU limited. With the CSMT patches you'll have a higher chance of
> being GPU limited, but there's no guarantee of course.
>
> dx10+ GPUs don't return 0.0 reliably on Windows here. My Geforce GPUs
> returned the int constants at c[-32] to c[-48].
>
Yeah, I'm not all that convinced this is how we want to fix this, or
that this is necessarily something that needs fixing on our end. I
could perhaps be convinced to have a registry setting along the lines
of StrictDrawOrdering though.



More information about the wine-devel mailing list