--- /dev/null
+#ifndef MSP_GL_TEXTURE3D_BACKEND_H_
+#define MSP_GL_TEXTURE3D_BACKEND_H_
+
+#include "texture.h"
+
+namespace Msp {
+namespace GL {
+
+class OpenGLTexture3D: public Texture
+{
+protected:
+ OpenGLTexture3D();
+ OpenGLTexture3D(unsigned);
+
+ void allocate();
+ void sub_image(unsigned, int, int, int, unsigned, unsigned, unsigned, const void *);
+
+ bool is_array() const;
+};
+
+using Texture3DBackend = OpenGLTexture3D;
+
+} // namespace GL
+} // namespace Msp
+
+#endif