X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fcore%2Ftexture.h;h=555d19ffee902f3d3457b9a831a1625b4819b03d;hp=e3697d2e712404940728085cce8b7ae0ea2818e5;hb=3a1b9cbe2441ae670a97541dc8ccb0a2860c8302;hpb=6353307898cd397e2bcde13e2448a8a678a60004 diff --git a/source/core/texture.h b/source/core/texture.h index e3697d2e..555d19ff 100644 --- a/source/core/texture.h +++ b/source/core/texture.h @@ -37,6 +37,8 @@ protected: private: void init(); + virtual void finish(); + protected: void load_external_image(Graphics::Image &, const std::string &); @@ -49,11 +51,6 @@ protected: void mipmap_levels(unsigned); }; - enum ParameterMask - { - FORMAT_SWIZZLE = 512 - }; - enum FormatSwizzle { NO_SWIZZLE, @@ -72,6 +69,7 @@ protected: std::string debug_name; static int swizzle_orders[]; + static Texture *scratch_binding; Texture(GLenum, ResourceManager * = 0); Texture(const Texture &); @@ -88,19 +86,7 @@ protected: public: PixelFormat get_format() const { return format; } - static bool can_generate_mipmap(); - void generate_mipmap(); -protected: - void generate_mipmap_(); - -public: - /** Sets automatic mipmap generation. If enabled, mipmaps are generated - when a texture image is uploaded. */ - void set_auto_generate_mipmap(bool); - - /// Deprecated. Use set_auto_generate_mipmap instead. - DEPRECATED void set_generate_mipmap(bool g) { set_auto_generate_mipmap(g); } /// Loads a Graphics::Image from a file and uploads it to the texture. virtual void load_image(const std::string &, unsigned = 0); @@ -117,9 +103,14 @@ public: GLenum get_target() const { return target; } unsigned get_id() const { return id; } - virtual UInt64 get_data_size() const { return 0; } + virtual std::uint64_t get_data_size() const { return 0; } void set_debug_name(const std::string &); + +protected: + void bind_scratch(); +public: + static void unbind_scratch(); }; } // namespace GL