diff options
author | Ian Romanick <ian.d.romanick@intel.com> | 2010-10-12 16:41:45 -0700 |
---|---|---|
committer | Ian Romanick <ian.d.romanick@intel.com> | 2010-10-12 19:24:28 -0700 |
commit | c5abc91f36524b450264cc1f5a8e3c7e0542cae6 (patch) | |
tree | 70c4b507c432e312c9b06180c07a7f36fecf0949 /tests/shaders/glsl-useprogram-displaylist.c | |
parent | 4aaf95afaaaba1c1d146cbba6f0643c8e3ad24d7 (diff) |
glsl-useprogram-displaylist: Refactor initialization, compact shaders
Diffstat (limited to 'tests/shaders/glsl-useprogram-displaylist.c')
-rw-r--r-- | tests/shaders/glsl-useprogram-displaylist.c | 61 |
1 files changed, 23 insertions, 38 deletions
diff --git a/tests/shaders/glsl-useprogram-displaylist.c b/tests/shaders/glsl-useprogram-displaylist.c index e0377774..d26f718c 100644 --- a/tests/shaders/glsl-useprogram-displaylist.c +++ b/tests/shaders/glsl-useprogram-displaylist.c @@ -36,50 +36,24 @@ int piglit_window_mode = GLUT_RGB | GLUT_DOUBLE; static GLint progr; static GLint progg; -static GLint fsr; -static GLint fsg; -static GLint vs; static GLuint list; -static const char *vertShaderText = - "void main()\n" - "{ \n" - " gl_Position = gl_Vertex;\n" - "} \n"; - -static const char *fragShaderTextRed = - "void main()\n" - "{ \n" - " gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);\n" - "} \n"; - -static const char *fragShaderTextGreen = - "void main()\n" - "{ \n" - " gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0);\n" - "} \n"; - -static void -compileLinkProg(void) -{ - vs = piglit_compile_shader_text(GL_VERTEX_SHADER, vertShaderText); - fsr = piglit_compile_shader_text(GL_FRAGMENT_SHADER, fragShaderTextRed); - fsg = - piglit_compile_shader_text(GL_FRAGMENT_SHADER, fragShaderTextGreen); +static const char vertShaderText[] = + "void main() { gl_Position = gl_Vertex; }"; - progr = piglit_link_simple_program(vs, fsr); - progg = piglit_link_simple_program(vs, fsg); +static const char fragShaderTextRed[] = + "void main() { gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0); }"; - list = glGenLists(1); - glNewList(list, GL_COMPILE); - glUseProgram(progg); - glEndList(); - -} +static const char fragShaderTextGreen[] = + "void main() { gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0); }"; void piglit_init(int argc, char **argv) { + GLint fsr; + GLint fsg; + GLint vs; + if (!GLEW_VERSION_2_0) { printf("Requires OpenGL 2.0\n"); piglit_report_result(PIGLIT_SKIP); @@ -87,13 +61,24 @@ piglit_init(int argc, char **argv) glClearColor(0.2, 0.2, 0.2, 1.0); - compileLinkProg(); + vs = piglit_compile_shader_text(GL_VERTEX_SHADER, vertShaderText); + fsr = piglit_compile_shader_text(GL_FRAGMENT_SHADER, fragShaderTextRed); + fsg = + piglit_compile_shader_text(GL_FRAGMENT_SHADER, fragShaderTextGreen); + + progr = piglit_link_simple_program(vs, fsr); + progg = piglit_link_simple_program(vs, fsg); + + list = glGenLists(1); + glNewList(list, GL_COMPILE); + glUseProgram(progg); + glEndList(); } enum piglit_result piglit_display(void) { - GLfloat green[3] = {0.0, 1.0, 0.0}; + static const GLfloat green[3] = {0.0, 1.0, 0.0}; GLboolean pass = GL_TRUE; glClear(GL_COLOR_BUFFER_BIT); |