diff options
author | Laszlo Agocs <laszlo.agocs@qt.io> | 2019-11-25 12:48:10 +0100 |
---|---|---|
committer | Laszlo Agocs <laszlo.agocs@qt.io> | 2019-11-25 14:10:17 +0100 |
commit | 9248166095b1e3383a43f106219e888b6d43b7d6 (patch) | |
tree | 91eac32d891986ae44fdc9210e1af3f320e933dc /src/quick | |
parent | 220c1031fc3e0957c4d94c42d30fb33d1e023929 (diff) |
rhi: Follow non-integer scaling fixes for native text
Add the dpr-related modifications to the shaders used on the QRhi-based
rendering path.
Change-Id: Ice980a80cbf9910d06a95a957817ff3d689c5e0f
Fixes: QTBUG-80297
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Diffstat (limited to 'src/quick')
-rw-r--r-- | src/quick/scenegraph/shaders_ng/outlinedtext.vert | 3 | ||||
-rw-r--r-- | src/quick/scenegraph/shaders_ng/outlinedtext.vert.qsb | bin | 2728 -> 3029 bytes | |||
-rw-r--r-- | src/quick/scenegraph/shaders_ng/styledtext.vert | 3 | ||||
-rw-r--r-- | src/quick/scenegraph/shaders_ng/styledtext.vert.qsb | bin | 2460 -> 2618 bytes | |||
-rw-r--r-- | src/quick/scenegraph/shaders_ng/textmask.vert | 3 | ||||
-rw-r--r-- | src/quick/scenegraph/shaders_ng/textmask.vert.qsb | bin | 2142 -> 2307 bytes |
6 files changed, 6 insertions, 3 deletions
diff --git a/src/quick/scenegraph/shaders_ng/outlinedtext.vert b/src/quick/scenegraph/shaders_ng/outlinedtext.vert index c683a4273c..023f9dfdc2 100644 --- a/src/quick/scenegraph/shaders_ng/outlinedtext.vert +++ b/src/quick/scenegraph/shaders_ng/outlinedtext.vert @@ -28,5 +28,6 @@ void main() sCoordDown = (tCoord - vec2(0.0, 1.0)) * ubuf.textureScale; sCoordLeft = (tCoord - vec2(-1.0, 0.0)) * ubuf.textureScale; sCoordRight = (tCoord - vec2(1.0, 0.0)) * ubuf.textureScale; - gl_Position = ubuf.matrix * vCoord; + vec3 dprSnapPos = floor(vCoord.xyz * ubuf.dpr + 0.5) / ubuf.dpr; + gl_Position = ubuf.matrix * vec4(dprSnapPos, vCoord.w); } diff --git a/src/quick/scenegraph/shaders_ng/outlinedtext.vert.qsb b/src/quick/scenegraph/shaders_ng/outlinedtext.vert.qsb Binary files differindex 6aee048faa..96746e6b0d 100644 --- a/src/quick/scenegraph/shaders_ng/outlinedtext.vert.qsb +++ b/src/quick/scenegraph/shaders_ng/outlinedtext.vert.qsb diff --git a/src/quick/scenegraph/shaders_ng/styledtext.vert b/src/quick/scenegraph/shaders_ng/styledtext.vert index 10565107c6..beadf07c79 100644 --- a/src/quick/scenegraph/shaders_ng/styledtext.vert +++ b/src/quick/scenegraph/shaders_ng/styledtext.vert @@ -22,5 +22,6 @@ void main() { sampleCoord = tCoord * ubuf.textureScale; shiftedSampleCoord = (tCoord - ubuf.shift) * ubuf.textureScale; - gl_Position = ubuf.matrix * floor((vCoord * ubuf.dpr) + 0.5) / ubuf.dpr; + vec3 dprSnapPos = floor(vCoord.xyz * ubuf.dpr + 0.5) / ubuf.dpr; + gl_Position = ubuf.matrix * vec4(dprSnapPos, vCoord.w); } diff --git a/src/quick/scenegraph/shaders_ng/styledtext.vert.qsb b/src/quick/scenegraph/shaders_ng/styledtext.vert.qsb Binary files differindex 9a27ed0eb8..d57d92bbe6 100644 --- a/src/quick/scenegraph/shaders_ng/styledtext.vert.qsb +++ b/src/quick/scenegraph/shaders_ng/styledtext.vert.qsb diff --git a/src/quick/scenegraph/shaders_ng/textmask.vert b/src/quick/scenegraph/shaders_ng/textmask.vert index d7d3bf892e..9d80d5dadb 100644 --- a/src/quick/scenegraph/shaders_ng/textmask.vert +++ b/src/quick/scenegraph/shaders_ng/textmask.vert @@ -17,5 +17,6 @@ out gl_PerVertex { vec4 gl_Position; }; void main() { sampleCoord = tCoord * ubuf.textureScale; - gl_Position = ubuf.matrix * floor((vCoord * ubuf.dpr) + 0.5) / ubuf.dpr; + vec3 dprSnapPos = floor(vCoord.xyz * ubuf.dpr + 0.5) / ubuf.dpr; + gl_Position = ubuf.matrix * vec4(dprSnapPos, vCoord.w); } diff --git a/src/quick/scenegraph/shaders_ng/textmask.vert.qsb b/src/quick/scenegraph/shaders_ng/textmask.vert.qsb Binary files differindex ae196ed0ad..99082297bf 100644 --- a/src/quick/scenegraph/shaders_ng/textmask.vert.qsb +++ b/src/quick/scenegraph/shaders_ng/textmask.vert.qsb |