Re: [Piglit] [PATCH 6/8] fbo: Use renderbuffers instead of textures

2017-06-02 Thread Mark Janes
Hi Ian,

This test fails on g33.  Was that expected?

-Mark

Ian Romanick  writes:

> From: Ian Romanick 
>
> This allows fbo-blit-stretch to run on platforms that support
> ARB_framebuffer_object but not ARB_texture_non_power_of_two.
>
> Coneptually similar to 7b3f6d5.
>
> Signed-off-by: Ian Romanick 
> ---
>  tests/fbo/fbo-blit-stretch.cpp | 26 --
>  1 file changed, 16 insertions(+), 10 deletions(-)
>
> diff --git a/tests/fbo/fbo-blit-stretch.cpp b/tests/fbo/fbo-blit-stretch.cpp
> index 935d0d4..da85335 100644
> --- a/tests/fbo/fbo-blit-stretch.cpp
> +++ b/tests/fbo/fbo-blit-stretch.cpp
> @@ -321,22 +321,22 @@ run_test(const TestCase )
>  
>   GLboolean pass;
>  
> - GLuint tex;
> + GLuint rbo;
>   GLuint fbo;
>   GLenum status;
>  
>   glGenFramebuffers(1, );
>   glBindFramebuffer(GL_FRAMEBUFFER, fbo);
>  
> - tex = piglit_rgbw_texture(GL_RGBA, test.srcW, test.srcH, GL_FALSE, 
> GL_TRUE, GL_UNSIGNED_NORMALIZED);
> + glGenRenderbuffers(1, );
> + glBindRenderbuffer(GL_RENDERBUFFER, rbo);
> + glRenderbufferStorage(GL_RENDERBUFFER, GL_RGBA, test.srcW, test.srcH);
> + glBindRenderbuffer(GL_RENDERBUFFER, 0);
>  
> - glBindTexture(GL_TEXTURE_2D, tex);
> -
> - glFramebufferTexture2D(GL_FRAMEBUFFER,
> -GL_COLOR_ATTACHMENT0,
> -GL_TEXTURE_2D,
> -tex,
> -0);
> + glFramebufferRenderbuffer(GL_FRAMEBUFFER,
> +   GL_COLOR_ATTACHMENT0,
> +   GL_RENDERBUFFER,
> +   rbo);
>   if (!piglit_check_gl_error(GL_NO_ERROR))
>   piglit_report_result(PIGLIT_FAIL);
>  
> @@ -344,6 +344,12 @@ run_test(const TestCase )
>   if (status != GL_FRAMEBUFFER_COMPLETE) {
>   pass = GL_TRUE;
>   } else {
> + GLubyte *image = piglit_rgbw_image_ubyte(test.srcW, test.srcH,
> +  GL_TRUE);
> + glDrawPixels(test.srcW, test.srcH, GL_RGBA, GL_UNSIGNED_BYTE,
> +  image);
> + free(image);
> +
>   glViewport(0, 0, piglit_width, piglit_height);
>   piglit_ortho_projection(piglit_width, piglit_height, GL_FALSE);
>  
> @@ -364,7 +370,7 @@ run_test(const TestCase )
>  
>   glBindFramebuffer(GL_FRAMEBUFFER, piglit_winsys_fbo);
>   glDeleteFramebuffers(1, );
> - glDeleteTextures(1, );
> + glDeleteRenderbuffers(1, );
>  
>   return pass;
>  }
> -- 
> 2.9.4
>
> ___
> Piglit mailing list
> Piglit@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/piglit
___
Piglit mailing list
Piglit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/piglit


[Piglit] [PATCH 6/8] fbo: Use renderbuffers instead of textures

2017-05-30 Thread Ian Romanick
From: Ian Romanick 

This allows fbo-blit-stretch to run on platforms that support
ARB_framebuffer_object but not ARB_texture_non_power_of_two.

Coneptually similar to 7b3f6d5.

Signed-off-by: Ian Romanick 
---
 tests/fbo/fbo-blit-stretch.cpp | 26 --
 1 file changed, 16 insertions(+), 10 deletions(-)

diff --git a/tests/fbo/fbo-blit-stretch.cpp b/tests/fbo/fbo-blit-stretch.cpp
index 935d0d4..da85335 100644
--- a/tests/fbo/fbo-blit-stretch.cpp
+++ b/tests/fbo/fbo-blit-stretch.cpp
@@ -321,22 +321,22 @@ run_test(const TestCase )
 
GLboolean pass;
 
-   GLuint tex;
+   GLuint rbo;
GLuint fbo;
GLenum status;
 
glGenFramebuffers(1, );
glBindFramebuffer(GL_FRAMEBUFFER, fbo);
 
-   tex = piglit_rgbw_texture(GL_RGBA, test.srcW, test.srcH, GL_FALSE, 
GL_TRUE, GL_UNSIGNED_NORMALIZED);
+   glGenRenderbuffers(1, );
+   glBindRenderbuffer(GL_RENDERBUFFER, rbo);
+   glRenderbufferStorage(GL_RENDERBUFFER, GL_RGBA, test.srcW, test.srcH);
+   glBindRenderbuffer(GL_RENDERBUFFER, 0);
 
-   glBindTexture(GL_TEXTURE_2D, tex);
-
-   glFramebufferTexture2D(GL_FRAMEBUFFER,
-  GL_COLOR_ATTACHMENT0,
-  GL_TEXTURE_2D,
-  tex,
-  0);
+   glFramebufferRenderbuffer(GL_FRAMEBUFFER,
+ GL_COLOR_ATTACHMENT0,
+ GL_RENDERBUFFER,
+ rbo);
if (!piglit_check_gl_error(GL_NO_ERROR))
piglit_report_result(PIGLIT_FAIL);
 
@@ -344,6 +344,12 @@ run_test(const TestCase )
if (status != GL_FRAMEBUFFER_COMPLETE) {
pass = GL_TRUE;
} else {
+   GLubyte *image = piglit_rgbw_image_ubyte(test.srcW, test.srcH,
+GL_TRUE);
+   glDrawPixels(test.srcW, test.srcH, GL_RGBA, GL_UNSIGNED_BYTE,
+image);
+   free(image);
+
glViewport(0, 0, piglit_width, piglit_height);
piglit_ortho_projection(piglit_width, piglit_height, GL_FALSE);
 
@@ -364,7 +370,7 @@ run_test(const TestCase )
 
glBindFramebuffer(GL_FRAMEBUFFER, piglit_winsys_fbo);
glDeleteFramebuffers(1, );
-   glDeleteTextures(1, );
+   glDeleteRenderbuffers(1, );
 
return pass;
 }
-- 
2.9.4

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