diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2016-08-18 09:40:34 +0900 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2016-08-23 12:59:55 +0900 |
commit | be334f42a198a25e817e6dab43dd0e30aa1cd4f8 (patch) | |
tree | 7694fc0d8dd54ae8776f9a7b07ae46b5c21fc360 /glamor | |
parent | cba28d572ac799391beacd89d57e69d0d7ed70e7 (diff) |
glamor: Declare "pos" in the composite glyph GLSL 1.20 vertex shader
Fixes shader compile failure:
Failed to compile VS: 0:13(43): error: `pos' undeclared
0:13(14): error: operands to arithmetic operators must be numeric
0:13(13): error: operands to arithmetic operators must be numeric
Program source:
#define ATLAS_DIM_INV 0.000976562500000000
attribute vec2 primitive;
attribute vec2 source;
varying vec2 glyph_pos;
uniform vec2 fill_offset;
uniform vec2 fill_size_inv;
varying vec2 fill_pos;
uniform vec4 v_matrix;
void main() {
gl_Position.xy = primitive.xy * v_matrix.xz + v_matrix.yw;
gl_Position.zw = vec2(0.0,1.0);
glyph_pos = source.xy * ATLAS_DIM_INV;
fill_pos = (fill_offset + primitive.xy + pos) * fill_size_inv;
}
(EE) Fatal server error:
(EE) GLSL compile failure
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97300
Reviewed-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'glamor')
-rw-r--r-- | glamor/glamor_composite_glyphs.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/glamor/glamor_composite_glyphs.c b/glamor/glamor_composite_glyphs.c index cc0aa6f37..b65127477 100644 --- a/glamor/glamor_composite_glyphs.c +++ b/glamor/glamor_composite_glyphs.c @@ -199,7 +199,8 @@ static const glamor_facet glamor_facet_composite_glyphs_120 = { .vs_vars = ("attribute vec2 primitive;\n" "attribute vec2 source;\n" "varying vec2 glyph_pos;\n"), - .vs_exec = (GLAMOR_POS(gl_Position, primitive) + .vs_exec = (" vec2 pos = vec2(0,0);\n" + GLAMOR_POS(gl_Position, primitive.xy) " glyph_pos = source.xy * ATLAS_DIM_INV;\n"), .fs_vars = ("varying vec2 glyph_pos;\n"), .fs_exec = (" vec4 mask = texture2D(atlas, glyph_pos);\n"), |