void init();
unsigned get_levels() const;
+ protected:
+ void load_external_image(Graphics::Image &, const std::string &);
+ private:
void external_image(const std::string &);
void filter(TextureFilter);
void generate_mipmap(bool);
{
NO_SWIZZLE,
R_TO_LUMINANCE,
- RG_TO_LUMINANCE_ALPHA
+ RG_TO_LUMINANCE_ALPHA,
+ RGB_TO_BGR
};
unsigned id;
GLenum target;
- PixelFormat ifmt;
+ PixelFormat format;
+ PixelFormat storage_fmt;
FormatSwizzle swizzle;
bool auto_gen_mipmap;
- mutable int dirty_params;
Sampler default_sampler;
static int swizzle_orders[];
~Texture();
protected:
- static DataType get_alloc_type(PixelFormat);
- void set_internal_format(PixelFormat);
- PixelFormat get_upload_format(PixelFormat) const;
+ void set_format(PixelFormat);
+ void apply_swizzle();
+ void set_parameter_i(GLenum, int) const;
public:
Sampler &get_default_sampler() { return default_sampler; }
const Sampler &get_default_sampler() const { return default_sampler; }
-protected:
- void update_parameter(int) const;
- void set_parameter_i(GLenum, int) const;
- void set_parameter_f(GLenum, float) const;
-public:
DEPRECATED void set_min_filter(TextureFilter);
DEPRECATED void set_mag_filter(TextureFilter);