switch (target) {
case GL_TEXTURE_1D:
+ error = _mesa_is_gles(ctx);
+ break;
case GL_TEXTURE_2D:
- case GL_TEXTURE_3D:
error = GL_FALSE;
break;
+ case GL_TEXTURE_3D:
+ error = ctx->API == API_OPENGLES;
+ break;
case GL_TEXTURE_CUBE_MAP:
error = !ctx->Extensions.ARB_texture_cube_map;
break;
case GL_TEXTURE_1D_ARRAY:
+ error = _mesa_is_gles(ctx) || !ctx->Extensions.EXT_texture_array;
+ break;
case GL_TEXTURE_2D_ARRAY:
- error = !ctx->Extensions.EXT_texture_array;
+ error = (_mesa_is_gles(ctx) && ctx->Version < 30)
+ || !ctx->Extensions.EXT_texture_array;
break;
default:
error = GL_TRUE;