void OpenGLTexture2DMultisample::allocate()
{
- unsigned width = static_cast<const Texture2DMultisample *>(this)->width;
- unsigned height = static_cast<const Texture2DMultisample *>(this)->height;
- unsigned samples = static_cast<const Texture2DMultisample *>(this)->samples;
+ const Texture2DMultisample &self = *static_cast<const Texture2DMultisample *>(this);
if(!id)
create();
if(ARB_texture_storage_multisample)
{
if(ARB_direct_state_access)
- glTextureStorage2DMultisample(id, samples, gl_fmt, width, height, false);
+ glTextureStorage2DMultisample(id, self.samples, gl_fmt, self.width, self.height, false);
else
{
bind_scratch();
- glTexStorage2DMultisample(target, samples, gl_fmt, width, height, false);
+ glTexStorage2DMultisample(target, self.samples, gl_fmt, self.width, self.height, false);
}
}
else
{
bind_scratch();
- glTexImage2DMultisample(target, samples, gl_fmt, width, height, false);
+ glTexImage2DMultisample(target, self.samples, gl_fmt, self.width, self.height, false);
}
apply_swizzle();
}
size_t OpenGLTexture2DMultisample::get_data_size() const
{
- unsigned width = static_cast<const Texture2DMultisample *>(this)->width;
- unsigned height = static_cast<const Texture2DMultisample *>(this)->height;
- unsigned samples = static_cast<const Texture2DMultisample *>(this)->samples;
- return width*height*get_pixel_size(format)*samples;
+ const Texture2DMultisample &self = *static_cast<const Texture2DMultisample *>(this);
+ return self.width*self.height*get_pixel_size(format)*self.samples;
}
} // namespace GL