#include <SDL_image.h>
#include <assert.h>
#include <iostream>
+#include <sstream>
+#include <stdexcept>
#include "math/rect.hpp"
#include "physfs/physfs_sdl.hpp"
#include "util/file_system.hpp"
#include "util/log.hpp"
-#include "video/gl/gl_texture.hpp"
#include "video/sdl_surface_ptr.hpp"
+#include "video/texture.hpp"
#include "video/video_systems.hpp"
+#ifdef HAVE_OPENGL
+#include "video/gl/gl_texture.hpp"
+#endif
+
TextureManager::TextureManager() :
image_textures()
#ifdef HAVE_OPENGL
if(!texture) {
texture = create_image_texture(filename);
- image_textures[filename] = texture;
+ image_textures[texture->get_filename()] = texture;
}
return texture;
{
log_warning << "Couldn't load texture '" << filename << "' (now using dummy texture): " << err.what() << std::endl;
TexturePtr texture = create_dummy_texture();
+ texture->set_filename(filename);
return texture;
}
}
{
log_warning << "Couldn't load texture '" << filename << "' (now using dummy texture): " << err.what() << std::endl;
TexturePtr texture = create_dummy_texture();
+ texture->set_filename(filename);
return texture;
}
}