[Piglit] [PATCH] [v3] Check the max point size the driver supported and adjust it accordingly.
Jian Zhao
jian.j.zhao at intel.com
Tue Feb 21 10:50:38 PST 2012
v2: Use piglit_width and piglit_height for the ease of change in future, and
don't use testPoint_x for the y coodinate though they are of the same value.
(per Brian's suggestion)
v3: A minor change on the value assignment. (per Brian's suggestion)
Signed-off-by: Jian Zhao <jian.j.zhao at intel.com>
Reviewed-by: Brian Paul <brianp at vmware.com>
---
tests/fbo/fbo-gl_pointcoord.c | 16 +++++++++++++---
1 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/tests/fbo/fbo-gl_pointcoord.c b/tests/fbo/fbo-gl_pointcoord.c
index 8db6ad4..1625720 100644
--- a/tests/fbo/fbo-gl_pointcoord.c
+++ b/tests/fbo/fbo-gl_pointcoord.c
@@ -47,6 +47,8 @@ static const char fs_text[] =
;
static GLuint prog;
static GLuint fb, rb;
+static GLuint testPoint_x, testPoint_y;
+static GLuint PointSize;
static const float green[] = { 0.0, 1.0, 0.0, 1.0 };
static const float black[] = { 0.0, 0.0, 0.0, 1.0 };
@@ -63,9 +65,14 @@ piglit_display(void)
glEnd();
glBindFramebuffer(GL_READ_FRAMEBUFFER, fb);
+
+ testPoint_x = ( piglit_width - PointSize ) / 2;
+ testPoint_y = ( piglit_width - PointSize ) / 2;
pass = piglit_probe_pixel_rgb(0, 0, black) && pass;
- pass = piglit_probe_pixel_rgb(18, 18, green) && pass;
- pass = piglit_probe_pixel_rgb(18, 81, black) && pass;
+ pass = piglit_probe_pixel_rgb(testPoint_x, testPoint_y, green) && pass;
+
+ testPoint_y = piglit_height - testPoint_y ;
+ pass = piglit_probe_pixel_rgb(testPoint_x, testPoint_y - 1, black) && pass;
/* Draw the point out if want to have a look. */
if (!piglit_automatic){
@@ -84,11 +91,14 @@ void
piglit_init(int argc, char **argv)
{
GLuint vs, fs;
- int PointSize = 64;
+ int point_size_limits[2];
piglit_require_extension("GL_ARB_point_sprite");
piglit_require_extension("GL_ARB_framebuffer_object");
+ glGetIntegerv(GL_ALIASED_POINT_SIZE_RANGE, point_size_limits);
+
+ PointSize = point_size_limits[1] >= 64 ? 64 : point_size_limits[1];
glEnable(GL_POINT_SPRITE_ARB);
glPointSize(PointSize);
--
1.7.3.4
More information about the Piglit
mailing list