X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Ftexture2d.cpp;h=2189fa83360ba5ed93264f84383f249a236b7e0b;hb=d2efbd8a32efa2a3ee8542efc846277af19d63e0;hp=64ad124f97a1952f19307d429c8f9acd427d76c1;hpb=f35535633aab06e80f0666d8551431364654c6dc;p=libs%2Fgl.git diff --git a/source/texture2d.cpp b/source/texture2d.cpp index 64ad124f..2189fa83 100644 --- a/source/texture2d.cpp +++ b/source/texture2d.cpp @@ -1,4 +1,3 @@ -#include #include "bindable.h" #include "buffer.h" #include "error.h" @@ -99,14 +98,6 @@ void Texture2D::sub_image(unsigned level, int x, int y, unsigned wd, unsigned ht glTexSubImage2D(target, level, x, y, wd, ht, fmt, type, data); } -void Texture2D::load_image(const string &fn, bool srgb) -{ - Graphics::Image img; - img.load_file(fn); - - image(img, srgb); -} - void Texture2D::image(const Graphics::Image &img, bool srgb) { image(img, srgb, false); @@ -118,12 +109,7 @@ void Texture2D::image(const Graphics::Image &img, bool srgb, bool from_buffer) unsigned h = img.get_height(); PixelFormat fmt = pixelformat_from_graphics(img.get_format()); if(width==0) - { - PixelFormat f = storage_pixelformat_from_graphics(img.get_format()); - if(srgb) - f = get_srgb_pixelformat(f); - storage(f, w, h); - } + storage(storage_pixelformat_from_graphics(img.get_format(), srgb), w, h); else if(w!=width || h!=height) throw incompatible_data("Texture2D::image"); @@ -180,21 +166,11 @@ Texture2D::Loader::Loader(Texture2D &t, Collection &c): void Texture2D::Loader::init() { - add("image_data", &Loader::image_data); add("raw_data", &Loader::raw_data); add("storage", &Loader::storage); add("storage", &Loader::storage_b); } -void Texture2D::Loader::image_data(const string &data) -{ - Graphics::Image img; - IO::Memory mem(data.data(), data.size()); - img.load_io(mem); - - obj.image(img, srgb); -} - void Texture2D::Loader::raw_data(const string &data) { obj.image(0, get_base_pixelformat(obj.ifmt), UNSIGNED_BYTE, data.data());