aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/winsys
diff options
context:
space:
mode:
authorRoland Scheidegger <[email protected]>2013-10-12 03:09:27 +0200
committerRoland Scheidegger <[email protected]>2013-10-12 04:05:57 +0200
commit7681beedd19cf437252fbc1041b19328ad773ea5 (patch)
treef239fae1017131cdc99fd28257ada51e295c4b70 /src/gallium/winsys
parent75f1fea14f524ef05e980d825fda3ae226ae2ffe (diff)
softpipe: fix seamless cube filtering
Fix coord wrapping (and face selection too) in case of edges. Unfortunately, the coord wrapping is way more complicated than what the code did, as it depends on the face and the direction where the texel falls off the face (the logic needed to get this right in fact seems utterly ridiculous). Also fix a bug in (y direction under/overflow) face selection. And get rid of complicated cube corner handling. Just like edge case, the coord wrapping was wrong and it seems very difficult to fix. I'm near certain it can't always work anyway (though ordinary seamless filtering on edge has actually a similar problem but not as severe) because we don't have per-pixel face, hence could have multiple corner texels which would make it very difficult to average the remaining texels correctly. Hence simply pick a texel which would only have fallen off one edge but not both instead, which is not quite accurate but actually I think should be enough to meet OpenGL (but not d3d10) requirements. v2: small fixes suggested by Brian, add some comments. Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'src/gallium/winsys')
0 files changed, 0 insertions, 0 deletions