glBindBuffer(GL_PIXEL_UNPACK_BUFFER, 0);
}
-Resource::AsyncLoader *OpenGLTexture2D::create_async_loader(IO::Seekable &io)
+Resource::AsyncLoader *OpenGLTexture2D::load(IO::Seekable &io, const Resources *)
{
return new AsyncLoader(static_cast<Texture2D &>(*this), io);
}
+uint64_t OpenGLTexture2D::get_data_size() const
+{
+ unsigned width = static_cast<const Texture2D *>(this)->width;
+ unsigned height = static_cast<const Texture2D *>(this)->height;
+ return id ? width*height*get_pixel_size(format) : 0;
+}
+
void OpenGLTexture2D::unload()
{
glDeleteTextures(1, &id);