X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fcore%2Ftexture2dmultisample.cpp;h=5ea37e90e3d82e81f2674f94691f2051c25f1a69;hb=829d3bd891414405a4d388d22476ba1a98b654c3;hp=85fa19504ed65638d76204242d2dea102020c8b3;hpb=3a1b9cbe2441ae670a97541dc8ccb0a2860c8302;p=libs%2Fgl.git diff --git a/source/core/texture2dmultisample.cpp b/source/core/texture2dmultisample.cpp index 85fa1950..5ea37e90 100644 --- a/source/core/texture2dmultisample.cpp +++ b/source/core/texture2dmultisample.cpp @@ -1,6 +1,3 @@ -#include -#include -#include #include "deviceinfo.h" #include "error.h" #include "texture2dmultisample.h" @@ -11,12 +8,9 @@ namespace Msp { namespace GL { Texture2DMultisample::Texture2DMultisample(): - Texture(GL_TEXTURE_2D_MULTISAMPLE), width(0), height(0) -{ - static Require _req(ARB_texture_multisample); -} +{ } void Texture2DMultisample::storage(PixelFormat fmt, unsigned wd, unsigned ht, unsigned sm) { @@ -28,7 +22,7 @@ void Texture2DMultisample::storage(PixelFormat fmt, unsigned wd, unsigned ht, un } if(wd==0 || ht==0) throw invalid_argument("Texture2DMultisample::storage"); - if(!sm || sm>Limits::get_global().max_samples) + if(!sm || sm>DeviceInfo::get_global().limits.max_samples) throw invalid_argument("Texture2DMultisample::storage"); set_format(fmt); @@ -36,23 +30,7 @@ void Texture2DMultisample::storage(PixelFormat fmt, unsigned wd, unsigned ht, un height = ht; samples = sm; - GLenum gl_fmt = get_gl_pixelformat(storage_fmt); - if(ARB_texture_storage_multisample) - { - if(ARB_direct_state_access) - glTextureStorage2DMultisample(id, samples, gl_fmt, width, height, false); - else - { - bind_scratch(); - glTexStorage2DMultisample(target, samples, gl_fmt, width, height, false); - } - } - else - { - bind_scratch(); - glTexImage2DMultisample(target, samples, gl_fmt, width, height, false); - } - apply_swizzle(); + allocate(); } void Texture2DMultisample::image(const Graphics::Image &, unsigned)