[Piglit] [PATCH] fbo-blit: test BlitFramebuffer with GL_TEXTURE_RECTANGLE

2013-02-26 Thread Marek Olšák
---
 tests/all.tests  |1 +
 tests/fbo/fbo-blit.c |   22 +-
 2 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/tests/all.tests b/tests/all.tests
index 2278026..9595070 100644
--- a/tests/all.tests
+++ b/tests/all.tests
@@ -1140,6 +1140,7 @@ add_concurrent_test(arb_texture_rectangle, 
'1-1-linear-texture')
 add_plain_test(arb_texture_rectangle, 'texrect-many')
 add_concurrent_test(arb_texture_rectangle, 'getteximage-targets RECT')
 add_plain_test(arb_texture_rectangle, 'texrect_simple_arb_texrect')
+add_plain_test(arb_texture_rectangle, 'fbo-blit rect')
 
 arb_texture_storage = Group()
 spec['ARB_texture_storage'] = arb_texture_storage
diff --git a/tests/fbo/fbo-blit.c b/tests/fbo/fbo-blit.c
index 933a56f..efa0661 100644
--- a/tests/fbo/fbo-blit.c
+++ b/tests/fbo/fbo-blit.c
@@ -52,6 +52,8 @@ PIGLIT_GL_TEST_CONFIG_END
 /* size of texture/renderbuffer (power of two) */
 #define FBO_SIZE 64
 
+static GLuint target = GL_TEXTURE_2D;
+
 
 static GLuint
 make_fbo(int w, int h)
@@ -64,17 +66,17 @@ make_fbo(int w, int h)
glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, fb);
 
glGenTextures(1, tex);
-   glBindTexture(GL_TEXTURE_2D, tex);
-   glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA,
+   glBindTexture(target, tex);
+   glTexImage2D(target, 0, GL_RGBA,
 w, h, 0,
 GL_RGBA, GL_UNSIGNED_BYTE, NULL);
 
-   glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
-   glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
+   glTexParameteri(target, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
+   glTexParameteri(target, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
 
glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT,
  GL_COLOR_ATTACHMENT0_EXT,
- GL_TEXTURE_2D,
+ target,
  tex,
  0);
assert(glGetError() == 0);
@@ -219,8 +221,18 @@ piglit_display(void)
 void
 piglit_init(int argc, char **argv)
 {
+   int i;
+
piglit_ortho_projection(piglit_width, piglit_height, GL_FALSE);
 
piglit_require_extension(GL_EXT_framebuffer_object);
piglit_require_extension(GL_EXT_framebuffer_blit);
+
+   for (i = 1; i  argc; i++) {
+   if (strcmp(argv[i], rect) == 0) {
+   piglit_require_extension(GL_ARB_texture_rectangle);
+   target = GL_TEXTURE_RECTANGLE;
+   puts(Testing ARB_texture_rectangle);
+   }
+   }
 }
-- 
1.7.10.4

___
Piglit mailing list
Piglit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/piglit


Re: [Piglit] [PATCH] fbo-blit: test BlitFramebuffer with GL_TEXTURE_RECTANGLE

2013-02-26 Thread Jose Fonseca


- Original Message -
 ---
  tests/all.tests  |1 +
  tests/fbo/fbo-blit.c |   22 +-
  2 files changed, 18 insertions(+), 5 deletions(-)
 
 diff --git a/tests/all.tests b/tests/all.tests
 index 2278026..9595070 100644
 --- a/tests/all.tests
 +++ b/tests/all.tests
 @@ -1140,6 +1140,7 @@ add_concurrent_test(arb_texture_rectangle,
 '1-1-linear-texture')
  add_plain_test(arb_texture_rectangle, 'texrect-many')
  add_concurrent_test(arb_texture_rectangle, 'getteximage-targets RECT')
  add_plain_test(arb_texture_rectangle, 'texrect_simple_arb_texrect')
 +add_plain_test(arb_texture_rectangle, 'fbo-blit rect')
  
  arb_texture_storage = Group()
  spec['ARB_texture_storage'] = arb_texture_storage
 diff --git a/tests/fbo/fbo-blit.c b/tests/fbo/fbo-blit.c
 index 933a56f..efa0661 100644
 --- a/tests/fbo/fbo-blit.c
 +++ b/tests/fbo/fbo-blit.c
 @@ -52,6 +52,8 @@ PIGLIT_GL_TEST_CONFIG_END
  /* size of texture/renderbuffer (power of two) */
  #define FBO_SIZE 64
  
 +static GLuint target = GL_TEXTURE_2D;
 +
  
  static GLuint
  make_fbo(int w, int h)
 @@ -64,17 +66,17 @@ make_fbo(int w, int h)
   glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, fb);
  
   glGenTextures(1, tex);
 - glBindTexture(GL_TEXTURE_2D, tex);
 - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA,
 + glBindTexture(target, tex);
 + glTexImage2D(target, 0, GL_RGBA,
w, h, 0,
GL_RGBA, GL_UNSIGNED_BYTE, NULL);
  
 - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
 - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
 + glTexParameteri(target, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
 + glTexParameteri(target, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
  
   glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT,
 GL_COLOR_ATTACHMENT0_EXT,
 -   GL_TEXTURE_2D,
 +   target,
 tex,
 0);
   assert(glGetError() == 0);
 @@ -219,8 +221,18 @@ piglit_display(void)
  void
  piglit_init(int argc, char **argv)
  {
 + int i;
 +
   piglit_ortho_projection(piglit_width, piglit_height, GL_FALSE);
  
   piglit_require_extension(GL_EXT_framebuffer_object);
   piglit_require_extension(GL_EXT_framebuffer_blit);
 +
 + for (i = 1; i  argc; i++) {
 + if (strcmp(argv[i], rect) == 0) {
 + piglit_require_extension(GL_ARB_texture_rectangle);
 + target = GL_TEXTURE_RECTANGLE;
 + puts(Testing ARB_texture_rectangle);
 + }
 + }
  }

Reviewed-by: Jose Fonseca jfons...@vmware.com
___
Piglit mailing list
Piglit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/piglit