diff options
author | Roland Scheidegger <[email protected]> | 2017-12-12 04:22:28 +0100 |
---|---|---|
committer | Roland Scheidegger <[email protected]> | 2017-12-12 04:23:02 +0100 |
commit | 84c363fb09167bc45aeba95423b20bee7293f44a (patch) | |
tree | 238e528af552b76379738dae1964986d6c680074 /src/mesa/state_tracker | |
parent | 24f019fd6911c360f32ebdb474375212706fff62 (diff) |
gallivm: fix texture wrapping for texture gather for mirror modes
Care must be taken that all coords end up correct, the tests are very
sensitive that everything is correctly rounded. This doesn't matter
for bilinear filter (since picking a wrong texel with weight zero is
ok), and we could also switch the per-sample coords mistakenly.
While here, also optimize the coord_mirror helper a bit (we can do the
mirroring directly by exploiting float rounding, no need for fixing up
odd/even manually).
I did not touch the mirror_clamp and mirror_clamp_to_border modes.
In contrast to mirror_clamp_to_edge and mirror_repeat these are legacy
modes. They are specified against old gl rules, which actually does
the mirroring not per sample (so you get swapped order if the coord
is in the mirrored section). I think the idea though is that they should
follow the respecified mirror_clamp_to_edge rules so the order would be
correct.
Reviewed-by: Jose Fonseca <[email protected]>
Diffstat (limited to 'src/mesa/state_tracker')
0 files changed, 0 insertions, 0 deletions