piglit_gen_ortho_projection and piglit_ortho_projection already had a
similar implementation for GL and GLES1; common it up and remove the
ifdefs.

Move piglit_frustum_projection out of GL-only code as well, and add
support for GLES1 using glFrustumf.

Signed-off-by: Josh Triplett <[email protected]>
---
 tests/util/piglit-util-gl-common.c | 58 ++++++++++++++++++++++++++++++++++++++
 tests/util/piglit-util-gl.c        | 54 -----------------------------------
 tests/util/piglit-util-gles.c      | 37 ------------------------
 3 files changed, 58 insertions(+), 91 deletions(-)

diff --git a/tests/util/piglit-util-gl-common.c 
b/tests/util/piglit-util-gl-common.c
index a0be726..32bddf8 100644
--- a/tests/util/piglit-util-gl-common.c
+++ b/tests/util/piglit-util-gl-common.c
@@ -520,6 +520,64 @@ piglit_compressed_pixel_offset(GLenum format, unsigned 
width,
        return offset;
 }
 
+/**
+ * Convenience function to configure an abitrary orthogonal projection matrix
+ */
+void
+piglit_gen_ortho_projection(double left, double right, double bottom,
+                           double top, double near_val, double far_val,
+                           GLboolean push)
+{
+       glMatrixMode(GL_PROJECTION);
+       glLoadIdentity();
+       if (push)
+               glPushMatrix();
+
+       if (piglit_is_gles())
+               glOrthof(left, right, bottom, top, near_val, far_val);
+       else
+               glOrtho(left, right, bottom, top, near_val, far_val);
+
+       glMatrixMode(GL_MODELVIEW);
+       if (push)
+               glPushMatrix();
+       glLoadIdentity();
+}
+
+/**
+ * Convenience function to configure projection matrix for window coordinates
+ */
+void
+piglit_ortho_projection(int w, int h, GLboolean push)
+{
+        /* Set up projection matrix so we can just draw using window
+         * coordinates.
+         */
+       piglit_gen_ortho_projection(0, w, 0, h, -1, 1, push);
+}
+
+/**
+ * Convenience function to configure frustum projection.
+ */
+void
+piglit_frustum_projection(GLboolean push, double l, double r, double b,
+                         double t, double n, double f)
+{
+       glMatrixMode(GL_PROJECTION);
+       glLoadIdentity();
+       if (push)
+               glPushMatrix();
+
+       if (piglit_is_gles())
+               glFrustumf(l, r, b, t, n, f);
+       else
+               glFrustum(l, r, b, t, n, f);
+
+       glMatrixMode(GL_MODELVIEW);
+       if (push)
+               glPushMatrix();
+       glLoadIdentity();
+}
 
 #ifndef PIGLIT_USE_OPENGL_ES1
 /**
diff --git a/tests/util/piglit-util-gl.c b/tests/util/piglit-util-gl.c
index 773e09f..91f3dc0 100644
--- a/tests/util/piglit-util-gl.c
+++ b/tests/util/piglit-util-gl.c
@@ -894,60 +894,6 @@ piglit_draw_triangle_z(float z, float x1, float y1, float 
x2, float y2,
 }
 
 /**
- * Convenience function to configure an abitrary orthogonal projection matrix
- */
-void
-piglit_gen_ortho_projection(double left, double right, double bottom,
-                           double top, double near_val, double far_val,
-                           GLboolean push)
-{
-        glMatrixMode(GL_PROJECTION);
-        glLoadIdentity();
-       if (push)
-               glPushMatrix();
-        glOrtho(left, right, bottom, top, near_val, far_val);
-
-        glMatrixMode(GL_MODELVIEW);
-       if (push)
-               glPushMatrix();
-        glLoadIdentity();
-}
-
-
-/**
- * Convenience function to configure projection matrix for window coordinates
- */
-void
-piglit_ortho_projection(int w, int h, GLboolean push)
-{
-        /* Set up projection matrix so we can just draw using window
-         * coordinates.
-         */
-       piglit_gen_ortho_projection(0, w, 0, h, -1, 1, push);
-}
-
-/**
- * Convenience function to configure frustum projection.
- */
-void
-piglit_frustum_projection(GLboolean push, double l, double r, double b,
-                         double t, double n, double f)
-{
-       glMatrixMode(GL_PROJECTION);
-       glLoadIdentity();
-       if (push)
-               glPushMatrix();
-       glFrustum(l, r, b, t, n, f);
-
-       glMatrixMode(GL_MODELVIEW);
-       if (push)
-               glPushMatrix();
-       glLoadIdentity();
-}
-
-
-
-/**
  * Generate a checkerboard texture
  *
  * \param tex                Name of the texture to be used.  If \c tex is
diff --git a/tests/util/piglit-util-gles.c b/tests/util/piglit-util-gles.c
index 6789aeb..26c3fa3 100644
--- a/tests/util/piglit-util-gles.c
+++ b/tests/util/piglit-util-gles.c
@@ -386,40 +386,3 @@ piglit_checkerboard_texture(GLuint tex, unsigned level,
 
        return tex;
 }
-
-#if defined(PIGLIT_USE_OPENGL_ES1)
-
-/**
- * Convenience function to configure an abitrary orthogonal projection matrix
- */
-void
-piglit_gen_ortho_projection(double left, double right, double bottom,
-                           double top, double near_val, double far_val,
-                           GLboolean push)
-{
-       glMatrixMode(GL_PROJECTION);
-       glLoadIdentity();
-       if (push)
-               glPushMatrix();
-       glOrthof(left, right, bottom, top, near_val, far_val);
-
-       glMatrixMode(GL_MODELVIEW);
-       if (push)
-               glPushMatrix();
-       glLoadIdentity();
-}
-
-
-/**
- * Convenience function to configure projection matrix for window coordinates
- */
-void
-piglit_ortho_projection(int w, int h, GLboolean push)
-{
-       /* Set up projection matrix so we can just draw using window
-        * coordinates.
-        */
-       piglit_gen_ortho_projection(0, w, 0, h, -1, 1, push);
-}
-
-#endif /* PIGLIT_USE_OPENGL_ES1 */
-- 
2.0.1

_______________________________________________
Piglit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/piglit

Reply via email to