summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/teximage.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/main/teximage.c')
-rw-r--r--src/mesa/main/teximage.c46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c
index bea5c9ae356..251cc08ecc5 100644
--- a/src/mesa/main/teximage.c
+++ b/src/mesa/main/teximage.c
@@ -6930,6 +6930,52 @@ _mesa_TextureStorage3DMultisample(GLuint texture, GLsizei samples,
"glTextureStorage3DMultisample");
}
+void GLAPIENTRY
+_mesa_TextureStorage2DMultisampleEXT(GLuint texture, GLenum target, GLsizei samples,
+ GLenum internalformat, GLsizei width,
+ GLsizei height,
+ GLboolean fixedsamplelocations)
+{
+ struct gl_texture_object *texObj;
+ GET_CURRENT_CONTEXT(ctx);
+
+ texObj = lookup_texture_ext_dsa(ctx, target, texture,
+ "glTextureStorage2DMultisampleEXT");
+ if (!texObj)
+ return;
+
+ if (!valid_texstorage_ms_parameters(width, height, 1, 2))
+ return;
+
+ texture_image_multisample(ctx, 2, texObj, NULL, texObj->Target,
+ samples, internalformat, width, height, 1,
+ fixedsamplelocations, GL_TRUE, 0,
+ "glTextureStorage2DMultisampleEXT");
+}
+
+void GLAPIENTRY
+_mesa_TextureStorage3DMultisampleEXT(GLuint texture, GLenum target, GLsizei samples,
+ GLenum internalformat, GLsizei width,
+ GLsizei height, GLsizei depth,
+ GLboolean fixedsamplelocations)
+{
+ struct gl_texture_object *texObj;
+ GET_CURRENT_CONTEXT(ctx);
+
+ texObj = lookup_texture_ext_dsa(ctx, target, texture,
+ "glTextureStorage3DMultisampleEXT");
+ if (!texObj)
+ return;
+
+ if (!valid_texstorage_ms_parameters(width, height, depth, 3))
+ return;
+
+ texture_image_multisample(ctx, 3, texObj, NULL, texObj->Target, samples,
+ internalformat, width, height, depth,
+ fixedsamplelocations, GL_TRUE, 0,
+ "glTextureStorage3DMultisampleEXT");
+}
+
void
_mesa_texture_storage_ms_memory(struct gl_context *ctx, GLuint dims,
struct gl_texture_object *texObj,