]> git.tdb.fi Git - libs/gl.git/blob - source/backends/opengl/texture2darray_backend.cpp
Add support for padding in vertex formats
[libs/gl.git] / source / backends / opengl / texture2darray_backend.cpp
1 #include <msp/gl/extensions/ext_texture_array.h>
2 #include "texture2darray_backend.h"
3
4 namespace Msp {
5 namespace GL {
6
7 OpenGLTexture2DArray::OpenGLTexture2DArray():
8         Texture3D(GL_TEXTURE_2D_ARRAY)
9 {
10         static Require _req(EXT_texture_array);
11 }
12
13 size_t OpenGLTexture2DArray::get_data_size() const
14 {
15         if(!id)
16                 return 0;
17
18         size_t level_size = width*height*get_pixel_size(format);
19         size_t total_size = level_size;
20         for(unsigned i=0; i<levels; ++i, level_size>>=2)
21                 total_size += level_size*depth;
22         return total_size;
23 }
24
25 } // namespace GL
26 } // namespace Msp