[mutter] cogl: Remove unused 3D texture support



commit 28954e827163641af5959f158e05feb2428fdc71
Author: Adam Jackson <ajax redhat com>
Date:   Thu Mar 7 12:06:35 2019 -0500

    cogl: Remove unused 3D texture support
    
    We're not using this, and it's difficult to imagine we ever would.
    
    https://gitlab.gnome.org/GNOME/mutter/merge_requests/487

 cogl/cogl/cogl-context-private.h                   |   2 -
 cogl/cogl/cogl-context.c                           |  18 -
 cogl/cogl/cogl-context.h                           |   2 -
 cogl/cogl/cogl-framebuffer.h                       |  20 +-
 cogl/cogl/cogl-gles2.h                             |   5 +-
 cogl/cogl/cogl-glsl-shader.c                       |   9 -
 cogl/cogl/cogl-meta-texture.h                      |  14 +-
 cogl/cogl/cogl-offscreen.h                         |   8 +-
 cogl/cogl/cogl-pipeline-layer-state.c              |  10 -
 cogl/cogl/cogl-pipeline.c                          |   4 -
 cogl/cogl/cogl-primitive-texture.h                 |  10 +-
 cogl/cogl/cogl-primitive.h                         |   4 +-
 cogl/cogl/cogl-primitives.c                        |   2 +-
 cogl/cogl/cogl-texture-3d-private.h                |  66 --
 cogl/cogl/cogl-texture-3d.c                        | 758 ---------------------
 cogl/cogl/cogl-texture-3d.h                        | 202 ------
 cogl/cogl/cogl-texture-driver.h                    |  29 -
 cogl/cogl/cogl-texture.c                           |  17 +-
 cogl/cogl/cogl-texture.h                           |   2 -
 cogl/cogl/cogl-types.h                             |   2 -
 cogl/cogl/cogl.h                                   |   1 -
 cogl/cogl/cogl.symbols                             |   7 -
 cogl/cogl/driver/gl/cogl-pipeline-opengl.c         |   3 -
 cogl/cogl/driver/gl/cogl-texture-gl.c              |   1 -
 cogl/cogl/driver/gl/cogl-util-gl.c                 |   5 -
 cogl/cogl/driver/gl/gl/cogl-driver-gl.c            |   6 -
 cogl/cogl/driver/gl/gl/cogl-texture-driver-gl.c    |  91 ---
 cogl/cogl/driver/gl/gles/cogl-driver-gles.c        |   6 -
 .../cogl/driver/gl/gles/cogl-texture-driver-gles.c | 167 -----
 cogl/cogl/gl-prototypes/cogl-all-functions.h       |  21 -
 cogl/cogl/meson.build                              |   3 -
 cogl/test-fixtures/test-utils.c                    |   6 -
 cogl/test-fixtures/test-utils.h                    |   1 -
 cogl/tests/conform/meson.build                     |   1 -
 cogl/tests/conform/test-conform-main.c             |   2 -
 cogl/tests/conform/test-declarations.h             |   1 -
 cogl/tests/conform/test-texture-3d.c               | 275 --------
 cogl/tests/conform/test-texture-no-allocate.c      |   9 -
 38 files changed, 31 insertions(+), 1759 deletions(-)
---
diff --git a/cogl/cogl/cogl-context-private.h b/cogl/cogl/cogl-context-private.h
index 8eeb56bc0..fc3b77c3e 100644
--- a/cogl/cogl/cogl-context-private.h
+++ b/cogl/cogl/cogl-context-private.h
@@ -50,7 +50,6 @@
 #include "cogl-texture-driver.h"
 #include "cogl-pipeline-cache.h"
 #include "cogl-texture-2d.h"
-#include "cogl-texture-3d.h"
 #include "cogl-texture-rectangle.h"
 #include "cogl-sampler-cache-private.h"
 #include "cogl-gpu-info-private.h"
@@ -166,7 +165,6 @@ struct _CoglContext
 
   /* Textures */
   CoglTexture2D *default_gl_texture_2d_tex;
-  CoglTexture3D *default_gl_texture_3d_tex;
   CoglTextureRectangle *default_gl_texture_rect_tex;
 
   /* Central list of all framebuffers so all journals can be flushed
diff --git a/cogl/cogl/cogl-context.c b/cogl/cogl/cogl-context.c
index c4ea57146..7dffad2df 100644
--- a/cogl/cogl/cogl-context.c
+++ b/cogl/cogl/cogl-context.c
@@ -40,7 +40,6 @@
 #include "cogl-journal-private.h"
 #include "cogl-texture-private.h"
 #include "cogl-texture-2d-private.h"
-#include "cogl-texture-3d-private.h"
 #include "cogl-texture-rectangle-private.h"
 #include "cogl-pipeline-private.h"
 #include "cogl-framebuffer-private.h"
@@ -307,7 +306,6 @@ cogl_context_new (CoglDisplay *display,
   context->legacy_state_set = 0;
 
   context->default_gl_texture_2d_tex = NULL;
-  context->default_gl_texture_3d_tex = NULL;
   context->default_gl_texture_rect_tex = NULL;
 
   context->framebuffers = NULL;
@@ -436,20 +434,6 @@ cogl_context_new (CoglDisplay *display,
                                    white_pixel,
                                    NULL); /* abort on error */
 
-  /* If 3D or rectangle textures aren't supported then these will
-   * return errors that we can simply ignore. */
-  internal_error = NULL;
-  context->default_gl_texture_3d_tex =
-    cogl_texture_3d_new_from_data (context,
-                                   1, 1, 1, /* width, height, depth */
-                                   COGL_PIXEL_FORMAT_RGBA_8888_PRE,
-                                   0, /* rowstride */
-                                   0, /* image stride */
-                                   white_pixel,
-                                   &internal_error);
-  if (internal_error)
-    cogl_error_free (internal_error);
-
   /* TODO: add cogl_texture_rectangle_new_from_data() */
   white_pixel_bitmap =
     cogl_bitmap_new_for_data (context,
@@ -509,8 +493,6 @@ _cogl_context_free (CoglContext *context)
 
   if (context->default_gl_texture_2d_tex)
     cogl_object_unref (context->default_gl_texture_2d_tex);
-  if (context->default_gl_texture_3d_tex)
-    cogl_object_unref (context->default_gl_texture_3d_tex);
   if (context->default_gl_texture_rect_tex)
     cogl_object_unref (context->default_gl_texture_rect_tex);
 
diff --git a/cogl/cogl/cogl-context.h b/cogl/cogl/cogl-context.h
index d4104625e..5016a216b 100644
--- a/cogl/cogl/cogl-context.h
+++ b/cogl/cogl/cogl-context.h
@@ -194,7 +194,6 @@ cogl_is_context (void *object);
  * @COGL_FEATURE_ID_TEXTURE_RG: Support for
  *    %COGL_TEXTURE_COMPONENTS_RG as the internal components of a
  *    texture.
- * @COGL_FEATURE_ID_TEXTURE_3D: 3D texture support
  * @COGL_FEATURE_ID_OFFSCREEN: Offscreen rendering support
  * @COGL_FEATURE_ID_OFFSCREEN_MULTISAMPLE: Multisample support for
  *    offscreen framebuffers
@@ -241,7 +240,6 @@ typedef enum _CoglFeatureID
   COGL_FEATURE_ID_TEXTURE_NPOT_REPEAT,
   COGL_FEATURE_ID_TEXTURE_NPOT,
   COGL_FEATURE_ID_TEXTURE_RECTANGLE,
-  COGL_FEATURE_ID_TEXTURE_3D,
   COGL_FEATURE_ID_GLSL,
   COGL_FEATURE_ID_OFFSCREEN,
   COGL_FEATURE_ID_OFFSCREEN_MULTISAMPLE,
diff --git a/cogl/cogl/cogl-framebuffer.h b/cogl/cogl/cogl-framebuffer.h
index e16cc417b..97273a71b 100644
--- a/cogl/cogl/cogl-framebuffer.h
+++ b/cogl/cogl/cogl-framebuffer.h
@@ -1129,8 +1129,8 @@ cogl_framebuffer_clear4f (CoglFramebuffer *framebuffer,
  * This drawing api doesn't support high-level meta texture types such
  * as #CoglTexture2DSliced so it is the user's responsibility to
  * ensure that only low-level textures that can be directly sampled by
- * a GPU such as #CoglTexture2D, #CoglTextureRectangle or #CoglTexture3D
- * are associated with layers of the given @pipeline.
+ * a GPU such as #CoglTexture2D or #CoglTextureRectangle are associated with
+ * layers of the given @pipeline.
  *
  * <note>This api doesn't support any of the legacy global state options such
  * as cogl_set_depth_test_enabled(), cogl_set_backface_culling_enabled() or
@@ -1171,8 +1171,8 @@ cogl_framebuffer_draw_primitive (CoglFramebuffer *framebuffer,
  * This drawing api doesn't support high-level meta texture types such
  * as #CoglTexture2DSliced so it is the user's responsibility to
  * ensure that only low-level textures that can be directly sampled by
- * a GPU such as #CoglTexture2D, #CoglTextureRectangle or #CoglTexture3D
- * are associated with layers of the given @pipeline.
+ * a GPU such as #CoglTexture2D or #CoglTextureRectangle are associated with
+ * layers of the given @pipeline.
  *
  * Stability: unstable
  * Since: 1.10
@@ -1214,8 +1214,8 @@ cogl_framebuffer_vdraw_attributes (CoglFramebuffer *framebuffer,
  * This drawing api doesn't support high-level meta texture types such
  * as #CoglTexture2DSliced so it is the user's responsibility to
  * ensure that only low-level textures that can be directly sampled by
- * a GPU such as #CoglTexture2D, #CoglTextureRectangle or #CoglTexture3D
- * are associated with layers of the given @pipeline.
+ * a GPU such as #CoglTexture2D or #CoglTextureRectangle are associated with
+ * layers of the given @pipeline.
  *
  * <note>This api doesn't support any of the legacy global state options such
  * as cogl_set_depth_test_enabled(), cogl_set_backface_culling_enabled() or
@@ -1280,8 +1280,8 @@ cogl_framebuffer_draw_attributes (CoglFramebuffer *framebuffer,
  * This drawing api doesn't support high-level meta texture types such
  * as #CoglTexture2DSliced so it is the user's responsibility to
  * ensure that only low-level textures that can be directly sampled by
- * a GPU such as #CoglTexture2D, #CoglTextureRectangle or
- * #CoglTexture3D are associated with layers of the given @pipeline.
+ * a GPU such as #CoglTexture2D or #CoglTextureRectangle are associated with
+ * layers of the given @pipeline.
  *
  * <note>This api doesn't support any of the legacy global state
  * options such as cogl_set_depth_test_enabled(),
@@ -1348,8 +1348,8 @@ cogl_framebuffer_vdraw_indexed_attributes (CoglFramebuffer *framebuffer,
  * This drawing api doesn't support high-level meta texture types such
  * as #CoglTexture2DSliced so it is the user's responsibility to
  * ensure that only low-level textures that can be directly sampled by
- * a GPU such as #CoglTexture2D, #CoglTextureRectangle or
- * #CoglTexture3D are associated with layers of the given @pipeline.
+ * a GPU such as #CoglTexture2D or #CoglTextureRectangle are associated with
+ * layers of the given @pipeline.
  *
  * <note>This api doesn't support any of the legacy global state
  * options such as cogl_set_depth_test_enabled(),
diff --git a/cogl/cogl/cogl-gles2.h b/cogl/cogl/cogl-gles2.h
index 99bf39459..46daf62ac 100644
--- a/cogl/cogl/cogl-gles2.h
+++ b/cogl/cogl/cogl-gles2.h
@@ -366,9 +366,8 @@ cogl_gles2_texture_2d_new_from_handle (CoglContext *ctx,
  * GLES2 context.</note>
  *
  * <note>This function will only return %TRUE for low-level
- * #CoglTexture<!-- -->s such as #CoglTexture2D or #CoglTexture3D but
- * not for high level meta textures such as
- * #CoglTexture2DSliced</note>
+ * #CoglTexture<!-- -->s such as #CoglTexture2D but not for high level
+ * meta textures such as #CoglTexture2DSliced</note>
  *
  * <note>The handle returned should not be passed directly to a system
  * OpenGL ES 2.0 library, the handle is only intended to be used via
diff --git a/cogl/cogl/cogl-glsl-shader.c b/cogl/cogl/cogl-glsl-shader.c
index d30f3de50..6e1deb66c 100644
--- a/cogl/cogl/cogl-glsl-shader.c
+++ b/cogl/cogl/cogl-glsl-shader.c
@@ -100,15 +100,6 @@ _cogl_glsl_shader_set_source_with_boilerplate (CoglContext *ctx,
   strings[count] = version_string;
   lengths[count++] = -1;
 
-  if (_cogl_has_private_feature (ctx, COGL_PRIVATE_FEATURE_GL_EMBEDDED) &&
-      cogl_has_feature (ctx, COGL_FEATURE_ID_TEXTURE_3D))
-    {
-      static const char texture_3d_extension[] =
-        "#extension GL_OES_texture_3D : enable\n";
-      strings[count] = texture_3d_extension;
-      lengths[count++] = sizeof (texture_3d_extension) - 1;
-    }
-
   if (cogl_has_feature (ctx, COGL_FEATURE_ID_TEXTURE_EGL_IMAGE_EXTERNAL))
     {
       static const char texture_3d_extension[] =
diff --git a/cogl/cogl/cogl-meta-texture.h b/cogl/cogl/cogl-meta-texture.h
index f398e7a2a..66d592181 100644
--- a/cogl/cogl/cogl-meta-texture.h
+++ b/cogl/cogl/cogl-meta-texture.h
@@ -42,8 +42,7 @@ G_BEGIN_DECLS
 /**
  * SECTION:cogl-meta-texture
  * @short_description: Interface for high-level textures built from
- *                     low-level textures like #CoglTexture2D and
- *                     #CoglTexture3D.
+ *                     low-level textures like #CoglTexture2D.
  *
  * Cogl helps to make it easy to deal with high level textures such
  * as #CoglAtlasTexture<!-- -->s, #CoglSubTexture<!-- -->s,
@@ -52,12 +51,11 @@ G_BEGIN_DECLS
  *
  * A #CoglMetaTexture is a texture that might internally be
  * represented by one or more low-level #CoglTexture<!-- -->s
- * such as #CoglTexture2D or #CoglTexture3D. These low-level textures
- * are the only ones that a GPU really understands but because
- * applications often want more high-level texture abstractions
- * (such as storing multiple textures inside one larger "atlas"
- * texture) it's desirable to be able to deal with these
- * using a common interface.
+ * such as #CoglTexture2D. These low-level textures are the only ones
+ * that a GPU really understands but because applications often want
+ * more high-level texture abstractions (such as storing multiple
+ * textures inside one larger "atlas" texture) it's desirable to be
+ * able to deal with these using a common interface.
  *
  * For example the GPU is not able to automatically handle repeating a
  * texture that is part of a larger atlas texture but if you use
diff --git a/cogl/cogl/cogl-offscreen.h b/cogl/cogl/cogl-offscreen.h
index bc80b3166..5782de594 100644
--- a/cogl/cogl/cogl-offscreen.h
+++ b/cogl/cogl/cogl-offscreen.h
@@ -75,8 +75,8 @@ GType cogl_offscreen_get_gtype (void);
  * destroy the offscreen buffer before you can use the @texture again.
  *
  * <note>This api only works with low-level #CoglTexture types such as
- * #CoglTexture2D, #CoglTexture3D and #CoglTextureRectangle, and not
- * with meta-texture types such as #CoglTexture2DSliced.</note>
+ * #CoglTexture2D and #CoglTextureRectangle, and not with meta-texture
+ * types such as #CoglTexture2DSliced.</note>
  *
  * The storage for the framebuffer is actually allocated lazily
  * so this function will never return %NULL to indicate a runtime
@@ -110,8 +110,8 @@ cogl_offscreen_new_with_texture (CoglTexture *texture);
  * you can use the @texture again.
  *
  * <note>This only works with low-level #CoglTexture types such as
- * #CoglTexture2D, #CoglTexture3D and #CoglTextureRectangle, and not
- * with meta-texture types such as #CoglTexture2DSliced.</note>
+ * #CoglTexture2D and #CoglTextureRectangle, and not with meta-texture
+ * types such as #CoglTexture2DSliced.</note>
  *
  * Return value: (transfer full): a newly instantiated #CoglOffscreen
  *   framebuffer or %NULL if it wasn't possible to create the
diff --git a/cogl/cogl/cogl-pipeline-layer-state.c b/cogl/cogl/cogl-pipeline-layer-state.c
index ea29982e0..3d10925c4 100644
--- a/cogl/cogl/cogl-pipeline-layer-state.c
+++ b/cogl/cogl/cogl-pipeline-layer-state.c
@@ -343,16 +343,6 @@ cogl_pipeline_set_layer_null_texture (CoglPipeline *pipeline,
     case COGL_TEXTURE_TYPE_2D:
       break;
 
-    case COGL_TEXTURE_TYPE_3D:
-      if (ctx->default_gl_texture_3d_tex == NULL)
-        {
-          g_warning ("The default 3D texture was set on a pipeline but "
-                     "3D textures are not supported");
-          texture_type = COGL_TEXTURE_TYPE_2D;
-          return;
-        }
-      break;
-
     case COGL_TEXTURE_TYPE_RECTANGLE:
       if (ctx->default_gl_texture_rect_tex == NULL)
         {
diff --git a/cogl/cogl/cogl-pipeline.c b/cogl/cogl/cogl-pipeline.c
index d1f66d440..d61ee668d 100644
--- a/cogl/cogl/cogl-pipeline.c
+++ b/cogl/cogl/cogl-pipeline.c
@@ -1925,10 +1925,6 @@ fallback_layer_cb (CoglPipelineLayer *layer, void *user_data)
       texture = COGL_TEXTURE (ctx->default_gl_texture_2d_tex);
       break;
 
-    case COGL_TEXTURE_TYPE_3D:
-      texture = COGL_TEXTURE (ctx->default_gl_texture_3d_tex);
-      break;
-
     case COGL_TEXTURE_TYPE_RECTANGLE:
       texture = COGL_TEXTURE (ctx->default_gl_texture_rect_tex);
       break;
diff --git a/cogl/cogl/cogl-primitive-texture.h b/cogl/cogl/cogl-primitive-texture.h
index 6fd26a529..837347509 100644
--- a/cogl/cogl/cogl-primitive-texture.h
+++ b/cogl/cogl/cogl-primitive-texture.h
@@ -42,14 +42,14 @@ G_BEGIN_DECLS
 /**
  * SECTION:cogl-primitive-texture
  * @short_description: Interface for low-level textures like
- *                     #CoglTexture2D and #CoglTexture3D.
+ *                     #CoglTexture2D.
  *
  * A #CoglPrimitiveTexture is a texture that is directly represented
  * by a single texture on the GPU. For example these could be a
- * #CoglTexture2D, #CoglTexture3D or #CoglTextureRectangle. This is
- * opposed to high level meta textures which may be composed of
- * multiple primitive textures or a sub-region of another texture such
- * as #CoglAtlasTexture and #CoglTexture2DSliced.
+ * #CoglTexture2D or #CoglTextureRectangle. This is opposed to high level
+ * meta textures which may be composed of multiple primitive textures or a
+ * sub-region of another texture such as #CoglAtlasTexture and
+ * #CoglTexture2DSliced.
  *
  * A texture that implements this interface can be directly used with
  * the low level cogl_primitive_draw() API. Other types of textures
diff --git a/cogl/cogl/cogl-primitive.h b/cogl/cogl/cogl-primitive.h
index 6503b53a5..b6867bbbe 100644
--- a/cogl/cogl/cogl-primitive.h
+++ b/cogl/cogl/cogl-primitive.h
@@ -926,8 +926,8 @@ cogl_primitive_foreach_attribute (CoglPrimitive *primitive,
  * This drawing api doesn't support high-level meta texture types such
  * as #CoglTexture2DSliced so it is the user's responsibility to
  * ensure that only low-level textures that can be directly sampled by
- * a GPU such as #CoglTexture2D, #CoglTextureRectangle or #CoglTexture3D
- * are associated with layers of the given @pipeline.
+ * a GPU such as #CoglTexture2D or #CoglTextureRectangle are associated
+ * with layers of the given @pipeline.
  *
  * Stability: unstable
  * Since: 1.16
diff --git a/cogl/cogl/cogl-primitives.c b/cogl/cogl/cogl-primitives.c
index 912ef5475..811dfd8f7 100644
--- a/cogl/cogl/cogl-primitives.c
+++ b/cogl/cogl/cogl-primitives.c
@@ -427,7 +427,7 @@ validate_tex_coords_cb (CoglPipeline *pipeline,
  * - CoglTexture2DSliced: if only comprised of a single slice with optional
  *   waste, assuming the users given texture coordinates don't require
  *   repeating.
- * - CoglTexture{1D,2D,3D}: always.
+ * - CoglTexture{1D,2D}: always.
  * - CoglTexture2DAtlas: assuming the users given texture coordinates don't
  *   require repeating.
  * - CoglTextureRectangle: assuming the users given texture coordinates don't
diff --git a/cogl/cogl/cogl-texture-driver.h b/cogl/cogl/cogl-texture-driver.h
index a6e7d4f1a..e5932a98f 100644
--- a/cogl/cogl/cogl-texture-driver.h
+++ b/cogl/cogl/cogl-texture-driver.h
@@ -103,26 +103,6 @@ struct _CoglTextureDriver
                     GLuint source_gl_type,
                     CoglError **error);
 
-  /*
-   * Replaces the contents of the GL texture with the entire bitmap. The
-   * width of the texture is inferred from the bitmap. The height and
-   * depth of the texture is given directly. The 'image_height' (which
-   * is the number of rows between images) is inferred by dividing the
-   * height of the bitmap by the depth.
-   */
-  gboolean
-  (* upload_to_gl_3d) (CoglContext *ctx,
-                       GLenum gl_target,
-                       GLuint gl_handle,
-                       gboolean is_foreign,
-                       GLint height,
-                       GLint depth,
-                       CoglBitmap *source_bmp,
-                       GLint internal_gl_format,
-                       GLuint source_gl_format,
-                       GLuint source_gl_type,
-                       CoglError **error);
-
   /*
    * This sets up the glPixelStore state for an download to a destination with
    * the same size, and with no offset.
@@ -162,15 +142,6 @@ struct _CoglTextureDriver
                       int width,
                       int height);
 
-  gboolean
-  (* size_supported_3d) (CoglContext *ctx,
-                         GLenum gl_target,
-                         GLenum gl_format,
-                         GLenum gl_type,
-                         int width,
-                         int height,
-                         int depth);
-
   /*
    * It may depend on the driver as to what texture targets may be used when
    * creating a foreign texture. E.g. OpenGL supports ARB_texture_rectangle
diff --git a/cogl/cogl/cogl-texture.c b/cogl/cogl/cogl-texture.c
index 695b9bea4..dd4c37e9a 100644
--- a/cogl/cogl/cogl-texture.c
+++ b/cogl/cogl/cogl-texture.c
@@ -47,7 +47,6 @@
 #include "cogl-texture-2d-sliced-private.h"
 #include "cogl-texture-2d-private.h"
 #include "cogl-texture-2d-gl.h"
-#include "cogl-texture-3d-private.h"
 #include "cogl-texture-rectangle-private.h"
 #include "cogl-sub-texture-private.h"
 #include "cogl-atlas-texture-private.h"
@@ -245,12 +244,6 @@ _cogl_texture_get_n_levels (CoglTexture *texture)
   int height = cogl_texture_get_height (texture);
   int max_dimension = MAX (width, height);
 
-  if (cogl_is_texture_3d (texture))
-    {
-      CoglTexture3D *tex_3d = COGL_TEXTURE_3D (texture);
-      max_dimension = MAX (max_dimension, tex_3d->depth);
-    }
-
   return _cogl_util_fls (max_dimension);
 }
 
@@ -263,17 +256,9 @@ _cogl_texture_get_level_size (CoglTexture *texture,
 {
   int current_width = cogl_texture_get_width (texture);
   int current_height = cogl_texture_get_height (texture);
-  int current_depth;
+  int current_depth = 0;
   int i;
 
-  if (cogl_is_texture_3d (texture))
-    {
-      CoglTexture3D *tex_3d = COGL_TEXTURE_3D (texture);
-      current_depth = tex_3d->depth;
-    }
-  else
-    current_depth = 0;
-
   /* NB: The OpenGL spec (like D3D) uses a floor() convention to
    * round down the size of a mipmap level when dividing the size
    * of the previous level results in a fraction...
diff --git a/cogl/cogl/cogl-texture.h b/cogl/cogl/cogl-texture.h
index a19b6c2e0..0c428b5ee 100644
--- a/cogl/cogl/cogl-texture.h
+++ b/cogl/cogl/cogl-texture.h
@@ -110,7 +110,6 @@ typedef enum
 /**
  * CoglTextureType:
  * @COGL_TEXTURE_TYPE_2D: A #CoglTexture2D
- * @COGL_TEXTURE_TYPE_3D: A #CoglTexture3D
  * @COGL_TEXTURE_TYPE_RECTANGLE: A #CoglTextureRectangle
  *
  * Constants representing the underlying hardware texture type of a
@@ -122,7 +121,6 @@ typedef enum
 typedef enum
 {
   COGL_TEXTURE_TYPE_2D,
-  COGL_TEXTURE_TYPE_3D,
   COGL_TEXTURE_TYPE_RECTANGLE
 } CoglTextureType;
 
diff --git a/cogl/cogl/cogl-types.h b/cogl/cogl/cogl-types.h
index dc0de87c4..981b74fff 100644
--- a/cogl/cogl/cogl-types.h
+++ b/cogl/cogl/cogl-types.h
@@ -347,7 +347,6 @@ typedef enum /*< prefix=COGL_PIXEL_FORMAT >*/
  *     hardware.
  * @COGL_FEATURE_POINT_SPRITE: Whether
  *     cogl_material_set_layer_point_sprite_coords_enabled() is supported.
- * @COGL_FEATURE_TEXTURE_3D: 3D texture support
  * @COGL_FEATURE_MAP_BUFFER_FOR_READ: Whether cogl_buffer_map() is
  *     supported with CoglBufferAccess including read support.
  * @COGL_FEATURE_MAP_BUFFER_FOR_WRITE: Whether cogl_buffer_map() is
@@ -379,7 +378,6 @@ typedef enum
   COGL_FEATURE_TEXTURE_NPOT_MIPMAP    = (1 << 16),
   COGL_FEATURE_TEXTURE_NPOT_REPEAT    = (1 << 17),
   COGL_FEATURE_POINT_SPRITE           = (1 << 18),
-  COGL_FEATURE_TEXTURE_3D             = (1 << 19),
   COGL_FEATURE_MAP_BUFFER_FOR_READ    = (1 << 21),
   COGL_FEATURE_MAP_BUFFER_FOR_WRITE   = (1 << 22),
   COGL_FEATURE_ONSCREEN_MULTIPLE      = (1 << 23),
diff --git a/cogl/cogl/cogl.h b/cogl/cogl/cogl.h
index 565ea289a..8663d251e 100644
--- a/cogl/cogl/cogl.h
+++ b/cogl/cogl/cogl.h
@@ -106,7 +106,6 @@
 #include <cogl/cogl-texture-2d.h>
 #include <cogl/cogl-texture-2d-gl.h>
 #include <cogl/cogl-texture-rectangle.h>
-#include <cogl/cogl-texture-3d.h>
 #include <cogl/cogl-texture-2d-sliced.h>
 #include <cogl/cogl-sub-texture.h>
 #include <cogl/cogl-atlas-texture.h>
diff --git a/cogl/cogl/cogl.symbols b/cogl/cogl/cogl.symbols
index f26e43d35..4fbf2246b 100644
--- a/cogl/cogl/cogl.symbols
+++ b/cogl/cogl/cogl.symbols
@@ -410,7 +410,6 @@ cogl_is_texture_pixmap_x11
 #endif
 cogl_is_texture_rectangle
 cogl_is_texture_2d
-cogl_is_texture_3d
 
 cogl_material_alpha_func_get_type
 cogl_material_copy
@@ -954,12 +953,6 @@ cogl_texture_2d_sliced_new_from_bitmap
 cogl_texture_2d_sliced_new_from_data
 cogl_texture_2d_sliced_new_from_file
 cogl_texture_2d_sliced_new_with_size
-#ifdef COGL_HAS_GTYPE_SUPPORT
-cogl_texture_3d_get_gtype
-#endif
-cogl_texture_3d_new_from_bitmap
-cogl_texture_3d_new_from_data
-cogl_texture_3d_new_with_size
 
 cogl_transform
 cogl_translate
diff --git a/cogl/cogl/driver/gl/cogl-pipeline-opengl.c b/cogl/cogl/driver/gl/cogl-pipeline-opengl.c
index 9e00b1049..cadb2d2ef 100644
--- a/cogl/cogl/driver/gl/cogl-pipeline-opengl.c
+++ b/cogl/cogl/driver/gl/cogl-pipeline-opengl.c
@@ -778,9 +778,6 @@ flush_layers_common_gl_state_cb (CoglPipelineLayer *layer, void *user_data)
           case COGL_TEXTURE_TYPE_2D:
             texture = COGL_TEXTURE (ctx->default_gl_texture_2d_tex);
             break;
-          case COGL_TEXTURE_TYPE_3D:
-            texture = COGL_TEXTURE (ctx->default_gl_texture_3d_tex);
-            break;
           case COGL_TEXTURE_TYPE_RECTANGLE:
             texture = COGL_TEXTURE (ctx->default_gl_texture_rect_tex);
             break;
diff --git a/cogl/cogl/driver/gl/cogl-texture-gl.c b/cogl/cogl/driver/gl/cogl-texture-gl.c
index 89308adaa..17b5662fd 100644
--- a/cogl/cogl/driver/gl/cogl-texture-gl.c
+++ b/cogl/cogl/driver/gl/cogl-texture-gl.c
@@ -32,7 +32,6 @@
 #include <strings.h>
 
 #include "cogl-context-private.h"
-#include "cogl-texture-3d-private.h"
 #include "cogl-util.h"
 #include "driver/gl/cogl-util-gl-private.h"
 #include "driver/gl/cogl-texture-gl-private.h"
diff --git a/cogl/cogl/driver/gl/cogl-util-gl.c b/cogl/cogl/driver/gl/cogl-util-gl.c
index 45f5130db..022516c79 100644
--- a/cogl/cogl/driver/gl/cogl-util-gl.c
+++ b/cogl/cogl/driver/gl/cogl-util-gl.c
@@ -148,11 +148,6 @@ _cogl_gl_util_get_texture_target_string (CoglTextureType texture_type,
       tex_coord_swizzle = "st";
       break;
 
-    case COGL_TEXTURE_TYPE_3D:
-      target_string = "3D";
-      tex_coord_swizzle = "stp";
-      break;
-
     case COGL_TEXTURE_TYPE_RECTANGLE:
       target_string = "2DRect";
       tex_coord_swizzle = "st";
diff --git a/cogl/cogl/driver/gl/gl/cogl-driver-gl.c b/cogl/cogl/driver/gl/gl/cogl-driver-gl.c
index d7ba9280e..ab92b0e08 100644
--- a/cogl/cogl/driver/gl/gl/cogl-driver-gl.c
+++ b/cogl/cogl/driver/gl/gl/cogl-driver-gl.c
@@ -475,12 +475,6 @@ _cogl_driver_update_features (CoglContext *ctx,
                       COGL_FEATURE_ID_TEXTURE_RECTANGLE, TRUE);
     }
 
-  if (ctx->glTexImage3D)
-    {
-      flags |= COGL_FEATURE_TEXTURE_3D;
-      COGL_FLAGS_SET (ctx->features, COGL_FEATURE_ID_TEXTURE_3D, TRUE);
-    }
-
   if (ctx->glEGLImageTargetTexture2D)
     COGL_FLAGS_SET (private_features,
                     COGL_PRIVATE_FEATURE_TEXTURE_2D_FROM_EGL_IMAGE, TRUE);
diff --git a/cogl/cogl/driver/gl/gl/cogl-texture-driver-gl.c b/cogl/cogl/driver/gl/gl/cogl-texture-driver-gl.c
index 35b87f7a7..c2270124f 100644
--- a/cogl/cogl/driver/gl/gl/cogl-texture-driver-gl.c
+++ b/cogl/cogl/driver/gl/gl/cogl-texture-driver-gl.c
@@ -71,7 +71,6 @@ _cogl_texture_driver_gen (CoglContext *ctx,
   switch (gl_target)
     {
     case GL_TEXTURE_2D:
-    case GL_TEXTURE_3D:
       /* In case automatic mipmap generation gets disabled for this
        * texture but a minification filter depending on mipmap
        * interpolation is selected then we initialize the max mipmap
@@ -131,9 +130,6 @@ prep_gl_for_pixels_upload_full (CoglContext *ctx,
   GE( ctx, glPixelStorei (GL_UNPACK_SKIP_PIXELS, pixels_src_x) );
   GE( ctx, glPixelStorei (GL_UNPACK_SKIP_ROWS, pixels_src_y) );
 
-  if (cogl_has_feature (ctx, COGL_FEATURE_ID_TEXTURE_3D))
-    GE( ctx, glPixelStorei (GL_UNPACK_IMAGE_HEIGHT, image_height) );
-
   _cogl_texture_gl_prep_alignment_for_pixels_upload (ctx, pixels_rowstride);
 }
 
@@ -161,9 +157,6 @@ prep_gl_for_pixels_download_full (CoglContext *ctx,
   GE( ctx, glPixelStorei (GL_PACK_SKIP_PIXELS, pixels_src_x) );
   GE( ctx, glPixelStorei (GL_PACK_SKIP_ROWS, pixels_src_y) );
 
-  if (cogl_has_feature (ctx, COGL_FEATURE_ID_TEXTURE_3D))
-    GE( ctx, glPixelStorei (GL_PACK_IMAGE_HEIGHT, image_height) );
-
   _cogl_texture_gl_prep_alignment_for_pixels_download (ctx,
                                                        pixels_bpp,
                                                        image_width,
@@ -355,59 +348,6 @@ _cogl_texture_driver_upload_to_gl (CoglContext *ctx,
   return status;
 }
 
-static gboolean
-_cogl_texture_driver_upload_to_gl_3d (CoglContext *ctx,
-                                      GLenum gl_target,
-                                      GLuint gl_handle,
-                                      gboolean is_foreign,
-                                      GLint height,
-                                      GLint depth,
-                                      CoglBitmap *source_bmp,
-                                      GLint internal_gl_format,
-                                      GLuint source_gl_format,
-                                      GLuint source_gl_type,
-                                      CoglError **error)
-{
-  uint8_t *data;
-  CoglPixelFormat source_format = cogl_bitmap_get_format (source_bmp);
-  int bpp = _cogl_pixel_format_get_bytes_per_pixel (source_format);
-  gboolean status = TRUE;
-
-  data = _cogl_bitmap_gl_bind (source_bmp, COGL_BUFFER_ACCESS_READ, 0, error);
-  if (!data)
-    return FALSE;
-
-  /* Setup gl alignment to match rowstride and top-left corner */
-  prep_gl_for_pixels_upload_full (ctx,
-                                  cogl_bitmap_get_rowstride (source_bmp),
-                                  (cogl_bitmap_get_height (source_bmp) /
-                                   depth),
-                                  0, 0, bpp);
-
-  _cogl_bind_gl_texture_transient (gl_target, gl_handle, is_foreign);
-
-  /* Clear any GL errors */
-  _cogl_gl_util_clear_gl_errors (ctx);
-
-  ctx->glTexImage3D (gl_target,
-                     0, /* level */
-                     internal_gl_format,
-                     cogl_bitmap_get_width (source_bmp),
-                     height,
-                     depth,
-                     0,
-                     source_gl_format,
-                     source_gl_type,
-                     data);
-
-  if (_cogl_gl_util_catch_out_of_memory (ctx, error))
-    status = FALSE;
-
-  _cogl_bitmap_gl_unbind (source_bmp);
-
-  return status;
-}
-
 static gboolean
 _cogl_texture_driver_gl_get_tex_image (CoglContext *ctx,
                                        GLenum gl_target,
@@ -423,35 +363,6 @@ _cogl_texture_driver_gl_get_tex_image (CoglContext *ctx,
   return TRUE;
 }
 
-static gboolean
-_cogl_texture_driver_size_supported_3d (CoglContext *ctx,
-                                        GLenum gl_target,
-                                        GLenum gl_format,
-                                        GLenum gl_type,
-                                        int width,
-                                        int height,
-                                        int depth)
-{
-  GLenum proxy_target;
-  GLint new_width = 0;
-
-  if (gl_target == GL_TEXTURE_3D)
-    proxy_target = GL_PROXY_TEXTURE_3D;
-  else
-    /* Unknown target, assume it's not supported */
-    return FALSE;
-
-  /* Proxy texture allows for a quick check for supported size */
-  GE( ctx, glTexImage3D (proxy_target, 0, GL_RGBA,
-                         width, height, depth, 0 /* border */,
-                         gl_format, gl_type, NULL) );
-
-  GE( ctx, glGetTexLevelParameteriv (proxy_target, 0,
-                                     GL_TEXTURE_WIDTH, &new_width) );
-
-  return new_width != 0;
-}
-
 static gboolean
 _cogl_texture_driver_size_supported (CoglContext *ctx,
                                      GLenum gl_target,
@@ -523,11 +434,9 @@ _cogl_texture_driver_gl =
     _cogl_texture_driver_prep_gl_for_pixels_upload,
     _cogl_texture_driver_upload_subregion_to_gl,
     _cogl_texture_driver_upload_to_gl,
-    _cogl_texture_driver_upload_to_gl_3d,
     _cogl_texture_driver_prep_gl_for_pixels_download,
     _cogl_texture_driver_gl_get_tex_image,
     _cogl_texture_driver_size_supported,
-    _cogl_texture_driver_size_supported_3d,
     _cogl_texture_driver_allows_foreign_gl_target,
     _cogl_texture_driver_find_best_gl_get_data_format
   };
diff --git a/cogl/cogl/driver/gl/gles/cogl-driver-gles.c b/cogl/cogl/driver/gl/gles/cogl-driver-gles.c
index df9e8674f..49a81ba0d 100644
--- a/cogl/cogl/driver/gl/gles/cogl-driver-gles.c
+++ b/cogl/cogl/driver/gl/gles/cogl-driver-gles.c
@@ -362,12 +362,6 @@ _cogl_driver_update_features (CoglContext *context,
   COGL_FLAGS_SET (context->features,
                   COGL_FEATURE_ID_TEXTURE_NPOT_REPEAT, TRUE);
 
-  if (context->glTexImage3D)
-    {
-      flags |= COGL_FEATURE_TEXTURE_3D;
-      COGL_FLAGS_SET (context->features, COGL_FEATURE_ID_TEXTURE_3D, TRUE);
-    }
-
   if (context->glMapBuffer)
     {
       /* The GL_OES_mapbuffer extension doesn't support mapping for
diff --git a/cogl/cogl/driver/gl/gles/cogl-texture-driver-gles.c 
b/cogl/cogl/driver/gl/gles/cogl-texture-driver-gles.c
index f773f93b8..db0135dcc 100644
--- a/cogl/cogl/driver/gl/gles/cogl-texture-driver-gles.c
+++ b/cogl/cogl/driver/gl/gles/cogl-texture-driver-gles.c
@@ -394,152 +394,6 @@ _cogl_texture_driver_upload_to_gl (CoglContext *ctx,
   return status;
 }
 
-static gboolean
-_cogl_texture_driver_upload_to_gl_3d (CoglContext *ctx,
-                                      GLenum gl_target,
-                                      GLuint gl_handle,
-                                      gboolean is_foreign,
-                                      GLint height,
-                                      GLint depth,
-                                      CoglBitmap *source_bmp,
-                                      GLint internal_gl_format,
-                                      GLuint source_gl_format,
-                                      GLuint source_gl_type,
-                                      CoglError **error)
-{
-  CoglPixelFormat source_format = cogl_bitmap_get_format (source_bmp);
-  int bpp = _cogl_pixel_format_get_bytes_per_pixel (source_format);
-  int rowstride = cogl_bitmap_get_rowstride (source_bmp);
-  int bmp_width = cogl_bitmap_get_width (source_bmp);
-  int bmp_height = cogl_bitmap_get_height (source_bmp);
-  uint8_t *data;
-
-  _cogl_bind_gl_texture_transient (gl_target, gl_handle, is_foreign);
-
-  /* If the rowstride or image height can't be specified with just
-     GL_ALIGNMENT alone then we need to copy the bitmap because there
-     is no GL_ROW_LENGTH */
-  if (rowstride / bpp != bmp_width ||
-      height != bmp_height / depth)
-    {
-      CoglBitmap *bmp;
-      int image_height = bmp_height / depth;
-      CoglPixelFormat source_bmp_format = cogl_bitmap_get_format (source_bmp);
-      int i;
-
-      _cogl_texture_driver_prep_gl_for_pixels_upload (ctx, bmp_width * bpp, bpp);
-
-      /* Initialize the texture with empty data and then upload each
-         image with a sub-region update */
-
-      /* Clear any GL errors */
-      _cogl_gl_util_clear_gl_errors (ctx);
-
-      ctx->glTexImage3D (gl_target,
-                         0, /* level */
-                         internal_gl_format,
-                         bmp_width,
-                         height,
-                         depth,
-                         0,
-                         source_gl_format,
-                         source_gl_type,
-                         NULL);
-
-      if (_cogl_gl_util_catch_out_of_memory (ctx, error))
-        return FALSE;
-
-      bmp = _cogl_bitmap_new_with_malloc_buffer (ctx,
-                                                 bmp_width,
-                                                 height,
-                                                 source_bmp_format,
-                                                 error);
-      if (!bmp)
-        return FALSE;
-
-      for (i = 0; i < depth; i++)
-        {
-          if (!_cogl_bitmap_copy_subregion (source_bmp,
-                                            bmp,
-                                            0, image_height * i,
-                                            0, 0,
-                                            bmp_width,
-                                            height,
-                                            error))
-            {
-              cogl_object_unref (bmp);
-              return FALSE;
-            }
-
-          data = _cogl_bitmap_gl_bind (bmp,
-                                       COGL_BUFFER_ACCESS_READ, 0, error);
-          if (!data)
-            {
-              cogl_object_unref (bmp);
-              return FALSE;
-            }
-
-          /* Clear any GL errors */
-          _cogl_gl_util_clear_gl_errors (ctx);
-
-          ctx->glTexSubImage3D (gl_target,
-                                0, /* level */
-                                0, /* xoffset */
-                                0, /* yoffset */
-                                i, /* zoffset */
-                                bmp_width, /* width */
-                                height, /* height */
-                                1, /* depth */
-                                source_gl_format,
-                                source_gl_type,
-                                data);
-
-          if (_cogl_gl_util_catch_out_of_memory (ctx, error))
-            {
-              cogl_object_unref (bmp);
-              _cogl_bitmap_gl_unbind (bmp);
-              return FALSE;
-            }
-
-          _cogl_bitmap_gl_unbind (bmp);
-        }
-
-      cogl_object_unref (bmp);
-    }
-  else
-    {
-      data = _cogl_bitmap_gl_bind (source_bmp, COGL_BUFFER_ACCESS_READ, 0, error);
-      if (!data)
-        return FALSE;
-
-      _cogl_texture_driver_prep_gl_for_pixels_upload (ctx, rowstride, bpp);
-
-      /* Clear any GL errors */
-      _cogl_gl_util_clear_gl_errors (ctx);
-
-      ctx->glTexImage3D (gl_target,
-                         0, /* level */
-                         internal_gl_format,
-                         bmp_width,
-                         height,
-                         depth,
-                         0,
-                         source_gl_format,
-                         source_gl_type,
-                         data);
-
-      if (_cogl_gl_util_catch_out_of_memory (ctx, error))
-        {
-          _cogl_bitmap_gl_unbind (source_bmp);
-          return FALSE;
-        }
-
-      _cogl_bitmap_gl_unbind (source_bmp);
-    }
-
-  return TRUE;
-}
-
 /* NB: GLES doesn't support glGetTexImage2D, so cogl-texture will instead
  * fallback to a generic render + readpixels approach to downloading
  * texture data. (See _cogl_texture_draw_and_read() ) */
@@ -553,25 +407,6 @@ _cogl_texture_driver_gl_get_tex_image (CoglContext *ctx,
   return FALSE;
 }
 
-static gboolean
-_cogl_texture_driver_size_supported_3d (CoglContext *ctx,
-                                        GLenum gl_target,
-                                        GLenum gl_format,
-                                        GLenum gl_type,
-                                        int width,
-                                        int height,
-                                        int depth)
-{
-  GLint max_size;
-
-  /* GLES doesn't support a proxy texture target so let's at least
-     check whether the size is greater than
-     GL_MAX_3D_TEXTURE_SIZE_OES */
-  GE( ctx, glGetIntegerv (GL_MAX_3D_TEXTURE_SIZE_OES, &max_size) );
-
-  return width <= max_size && height <= max_size && depth <= max_size;
-}
-
 static gboolean
 _cogl_texture_driver_size_supported (CoglContext *ctx,
                                      GLenum gl_target,
@@ -622,11 +457,9 @@ _cogl_texture_driver_gles =
     _cogl_texture_driver_prep_gl_for_pixels_upload,
     _cogl_texture_driver_upload_subregion_to_gl,
     _cogl_texture_driver_upload_to_gl,
-    _cogl_texture_driver_upload_to_gl_3d,
     _cogl_texture_driver_prep_gl_for_pixels_download,
     _cogl_texture_driver_gl_get_tex_image,
     _cogl_texture_driver_size_supported,
-    _cogl_texture_driver_size_supported_3d,
     _cogl_texture_driver_allows_foreign_gl_target,
     _cogl_texture_driver_find_best_gl_get_data_format
   };
diff --git a/cogl/cogl/gl-prototypes/cogl-all-functions.h b/cogl/cogl/gl-prototypes/cogl-all-functions.h
index 924ee349d..8c92bdb05 100644
--- a/cogl/cogl/gl-prototypes/cogl-all-functions.h
+++ b/cogl/cogl/gl-prototypes/cogl-all-functions.h
@@ -109,27 +109,6 @@ COGL_EXT_FUNCTION (GLboolean, glUnmapBuffer,
                    (GLenum              target))
 COGL_EXT_END ()
 
-COGL_EXT_BEGIN (texture_3d, 1, 2,
-                0, /* not in either GLES */
-                "OES\0",
-                "texture_3D\0")
-COGL_EXT_FUNCTION (void, glTexImage3D,
-                   (GLenum target, GLint level,
-                    GLint internalFormat,
-                    GLsizei width, GLsizei height,
-                    GLsizei depth, GLint border,
-                    GLenum format, GLenum type,
-                    const GLvoid *pixels))
-COGL_EXT_FUNCTION (void, glTexSubImage3D,
-                   (GLenum target, GLint level,
-                    GLint xoffset, GLint yoffset,
-                    GLint zoffset, GLsizei width,
-                    GLsizei height, GLsizei depth,
-                    GLenum format,
-                    GLenum type, const GLvoid *pixels))
-COGL_EXT_END ()
-
-
 
 COGL_EXT_BEGIN (offscreen_blit, 3, 0,
                 0, /* not in either GLES */
diff --git a/cogl/cogl/meson.build b/cogl/cogl/meson.build
index cb940420a..2e8e5af31 100644
--- a/cogl/cogl/meson.build
+++ b/cogl/cogl/meson.build
@@ -119,7 +119,6 @@ cogl_nonintrospected_headers = [
   'cogl-quaternion.h',
   'cogl-matrix-stack.h',
   'cogl-poll.h',
-  'cogl-texture-3d.h',
   'cogl-texture-2d-gl.h',
   'cogl-texture-rectangle.h',
   'cogl-sub-texture.h',
@@ -307,13 +306,11 @@ cogl_sources = [
   'cogl-texture-private.h',
   'cogl-texture-2d-private.h',
   'cogl-texture-2d-sliced-private.h',
-  'cogl-texture-3d-private.h',
   'cogl-texture-driver.h',
   'cogl-sub-texture.c',
   'cogl-texture.c',
   'cogl-texture-2d.c',
   'cogl-texture-2d-sliced.c',
-  'cogl-texture-3d.c',
   'cogl-texture-rectangle-private.h',
   'cogl-texture-rectangle.c',
   'cogl-rectangle-map.h',
diff --git a/cogl/test-fixtures/test-utils.c b/cogl/test-fixtures/test-utils.c
index c1dd44f54..1bf2acd26 100644
--- a/cogl/test-fixtures/test-utils.c
+++ b/cogl/test-fixtures/test-utils.c
@@ -30,12 +30,6 @@ check_flags (TestFlags flags,
       return FALSE;
     }
 
-  if (flags & TEST_REQUIREMENT_TEXTURE_3D &&
-      !cogl_has_feature (test_ctx, COGL_FEATURE_ID_TEXTURE_3D))
-    {
-      return FALSE;
-    }
-
   if (flags & TEST_REQUIREMENT_TEXTURE_RECTANGLE &&
       !cogl_has_feature (test_ctx, COGL_FEATURE_ID_TEXTURE_RECTANGLE))
     {
diff --git a/cogl/test-fixtures/test-utils.h b/cogl/test-fixtures/test-utils.h
index e4929e57f..3ce68895b 100644
--- a/cogl/test-fixtures/test-utils.h
+++ b/cogl/test-fixtures/test-utils.h
@@ -33,7 +33,6 @@ typedef enum _TestFlags
   TEST_KNOWN_FAILURE = 1<<0,
   TEST_REQUIREMENT_GL = 1<<1,
   TEST_REQUIREMENT_NPOT = 1<<2,
-  TEST_REQUIREMENT_TEXTURE_3D = 1<<3,
   TEST_REQUIREMENT_TEXTURE_RECTANGLE = 1<<4,
   TEST_REQUIREMENT_TEXTURE_RG = 1<<5,
   TEST_REQUIREMENT_POINT_SPRITE = 1<<6,
diff --git a/cogl/tests/conform/meson.build b/cogl/tests/conform/meson.build
index e4d516947..beb9a084d 100644
--- a/cogl/tests/conform/meson.build
+++ b/cogl/tests/conform/meson.build
@@ -17,7 +17,6 @@ cogl_test_conformance_sources = [
   'test-custom-attributes.c',
   'test-offscreen.c',
   'test-primitive.c',
-  'test-texture-3d.c',
   'test-sparse-pipeline.c',
   'test-read-texture-formats.c',
   'test-write-texture-formats.c',
diff --git a/cogl/tests/conform/test-conform-main.c b/cogl/tests/conform/test-conform-main.c
index 000b37d27..087faab2f 100644
--- a/cogl/tests/conform/test-conform-main.c
+++ b/cogl/tests/conform/test-conform-main.c
@@ -73,8 +73,6 @@ main (int argc, char **argv)
   ADD_TEST (test_pixel_buffer_set_data, 0, 0);
   ADD_TEST (test_pixel_buffer_sub_region, 0, 0);
   UNPORTED_TEST (test_texture_rectangle);
-  ADD_TEST (test_texture_3d, TEST_REQUIREMENT_TEXTURE_3D,
-            TEST_REQUIREMENT_GL | TEST_KNOWN_FAILURE);
   ADD_TEST (test_wrap_modes, 0, 0);
   UNPORTED_TEST (test_texture_pixmap_x11);
   ADD_TEST (test_texture_get_set_data, 0, 0);
diff --git a/cogl/tests/conform/test-declarations.h b/cogl/tests/conform/test-declarations.h
index c41b3e31b..f64d4feb6 100644
--- a/cogl/tests/conform/test-declarations.h
+++ b/cogl/tests/conform/test-declarations.h
@@ -16,7 +16,6 @@ void test_sub_texture (void);
 void test_pixel_buffer_map (void);
 void test_pixel_buffer_set_data (void);
 void test_pixel_buffer_sub_region (void);
-void test_texture_3d (void);
 void test_wrap_modes (void);
 void test_texture_get_set_data (void);
 void test_atlas_migration (void);
diff --git a/cogl/tests/conform/test-texture-no-allocate.c b/cogl/tests/conform/test-texture-no-allocate.c
index 74726d627..0c1c14fa4 100644
--- a/cogl/tests/conform/test-texture-no-allocate.c
+++ b/cogl/tests/conform/test-texture-no-allocate.c
@@ -61,15 +61,6 @@ test_texture_no_allocate (void)
                                               64, 64);
   cogl_object_unref (texture_2d);
 
-  /* 3D texture */
-  if (cogl_has_feature (test_ctx, COGL_FEATURE_ID_TEXTURE_3D))
-    {
-      CoglTexture3D *texture_3d =
-        cogl_texture_3d_new_with_size (test_ctx,
-                                       64, 64, 64);
-      cogl_object_unref (texture_3d);
-    }
-
   /* Rectangle texture */
   if (cogl_has_feature (test_ctx, COGL_FEATURE_ID_TEXTURE_RECTANGLE))
     {



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]