if(RefPtr<IO::Seekable> io = open_from_sources(name))
{
Graphics::Image image;
- image.load_io(*io);
+ if(!resource_manager)
+ image.load_io(*io);
- RefPtr<GL::Texture2D> tex = new GL::Texture2D;
+ RefPtr<GL::Texture2D> tex = new GL::Texture2D(resource_manager);
if(default_tex_filter==NEAREST_MIPMAP_NEAREST || default_tex_filter==NEAREST_MIPMAP_LINEAR ||
default_tex_filter==LINEAR_MIPMAP_NEAREST || default_tex_filter==LINEAR_MIPMAP_LINEAR)
tex->set_mag_filter(default_tex_filter);
tex->set_min_filter(default_tex_filter);
- tex->image(image, srgb_conversion);
+ // TODO Somehow pass the srgb flag if a resource manager is in use
+ if(resource_manager)
+ resource_manager->set_resource_location(*tex, *this, name);
+ else
+ tex->image(image, srgb_conversion);
return tex.release();
}