diff options
author | Francisco Jerez <currojerez@riseup.net> | 2016-10-16 08:00:02 -0700 |
---|---|---|
committer | Francisco Jerez <currojerez@riseup.net> | 2016-11-07 14:07:05 -0800 |
commit | 2483f0cf67e3ea824cd78c25e8f3d099f4db6299 (patch) | |
tree | 8c815e34f03d5d29eacdbf7bd8d4b50118103cbe | |
parent | 7f08b2ca2acc08c80c4e2a96dcd6a6fc1c727d19 (diff) |
shader_runner: Take advantage of texture binding book-keeping in fb command handling.
-rw-r--r-- | tests/shaders/shader_runner.c | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/tests/shaders/shader_runner.c b/tests/shaders/shader_runner.c index b2669e377..78a09b8d0 100644 --- a/tests/shaders/shader_runner.c +++ b/tests/shaders/shader_runner.c @@ -2961,10 +2961,6 @@ piglit_display(void) glDepthFunc(piglit_get_gl_enum_from_name(s)); } else if (sscanf(line, "fb tex 2d %d", &tex) == 1) { GLenum status; - GLint tex_num; - - glActiveTexture(GL_TEXTURE0 + tex); - glGetIntegerv(GL_TEXTURE_BINDING_2D, &tex_num); if (fbo == 0) { glGenFramebuffers(1, &fbo); @@ -2973,7 +2969,8 @@ piglit_display(void) glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, - GL_TEXTURE_2D, tex_num, 0); + GL_TEXTURE_2D, + get_texture_binding(tex)->obj, 0); if (!piglit_check_gl_error(GL_NO_ERROR)) { fprintf(stderr, "glFramebufferTexture2D error\n"); piglit_report_result(PIGLIT_FAIL); @@ -2985,14 +2982,10 @@ piglit_display(void) piglit_report_result(PIGLIT_FAIL); } - glGetTexLevelParameteriv(GL_TEXTURE_2D, 0, GL_TEXTURE_WIDTH, &render_width); - glGetTexLevelParameteriv(GL_TEXTURE_2D, 0, GL_TEXTURE_HEIGHT, &render_height); + render_width = get_texture_binding(tex)->width; + render_height = get_texture_binding(tex)->height; } else if (sscanf(line, "fb tex layered %d", &tex) == 1) { GLenum status; - GLint tex_num; - - glActiveTexture(GL_TEXTURE0 + tex); - glGetIntegerv(GL_TEXTURE_BINDING_2D_ARRAY, &tex_num); if (fbo == 0) { glGenFramebuffers(1, &fbo); @@ -3001,7 +2994,7 @@ piglit_display(void) glFramebufferTexture(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, - tex_num, 0); + get_texture_binding(tex)->obj, 0); if (!piglit_check_gl_error(GL_NO_ERROR)) { fprintf(stderr, "glFramebufferTexture error\n"); piglit_report_result(PIGLIT_FAIL); |