Module: Mesa Branch: gallium-mesa-7.4 Commit: cd8453c96a4f87c348c00b76f34ee00886d1d75f URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=cd8453c96a4f87c348c00b76f34ee00886d1d75f
Author: Brian Paul <[email protected]> Date: Thu Feb 19 08:58:48 2009 -0700 glsl-tri: add missing glLinkProgram() call Bindings set with glBindAttribLocation() do not take effect until the program is re-linked. So attr_pos, attr_color will not necessarily be the right indexes util that's done. --- progs/xdemos/glsl-tri.c | 13 +++++++++++-- 1 files changed, 11 insertions(+), 2 deletions(-) diff --git a/progs/xdemos/glsl-tri.c b/progs/xdemos/glsl-tri.c index bcae421..0771eac 100644 --- a/progs/xdemos/glsl-tri.c +++ b/progs/xdemos/glsl-tri.c @@ -207,8 +207,17 @@ create_shaders(void) glUseProgram(program); - glBindAttribLocation(program, attr_pos, "pos"); - glBindAttribLocation(program, attr_color, "color"); + if (1) { + /* test setting attrib locations */ + glBindAttribLocation(program, attr_pos, "pos"); + glBindAttribLocation(program, attr_color, "color"); + glLinkProgram(program); /* needed to put attribs into effect */ + } + else { + /* test automatic attrib locations */ + attr_pos = glGetAttribLocation(program, "pos"); + attr_color = glGetAttribLocation(program, "color"); + } u_matrix = glGetUniformLocation(program, "modelviewProjection"); printf("Uniform modelviewProjection at %d\n", u_matrix); _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
