Bug 1884583 - Make some of cs_border_segment's varyings highp. r=gw

The vClipRadii varying being changed to mediump is causing borders to
be clipped incorrectly at certain zoom levels. This patch reverts it
to highp to avoid the issue.

As a precaution it conservatively reverts several other varyings in
this shader to be highp as well. Although the others are not
responsible for the issue reported in this bug, using mediump for
varyings related to positioning could cause similar problems.

Differential Revision: https://phabricator.services.mozilla.com/D204507
This commit is contained in:
Jamie Nicol 2024-03-13 19:49:16 +00:00
Родитель 4553397731
Коммит 8eec7483d5
1 изменённых файлов: 4 добавлений и 4 удалений

Просмотреть файл

@ -13,7 +13,7 @@ flat varying mediump vec4 vColor11;
// A point + tangent defining the line where the edge
// transition occurs. Used for corners only.
flat varying mediump vec4 vColorLine;
flat varying highp vec4 vColorLine;
// x: segment, y: clip mode
// We cast these to/from floats rather than using an ivec due to a driver bug
@ -31,13 +31,13 @@ flat varying highp vec4 vClipCenter_Sign;
// An outer and inner elliptical radii for border
// corner clipping.
flat varying mediump vec4 vClipRadii;
flat varying highp vec4 vClipRadii;
// Reference point for determine edge clip lines.
flat varying mediump vec4 vEdgeReference;
flat varying highp vec4 vEdgeReference;
// Stores widths/2 and widths/3 to save doing this in FS.
flat varying mediump vec4 vPartialWidths;
flat varying highp vec4 vPartialWidths;
// Clipping parameters for dot or dash.
flat varying mediump vec4 vClipParams1;