]> git.tdb.fi Git - libs/gl.git/blobdiff - source/backends/vulkan/texture_backend.h
Check the flat qualifier from the correct member
[libs/gl.git] / source / backends / vulkan / texture_backend.h
index 0907fea058000fe849167ae1b36d385dff479dbc..c977e82e287f120fb13727e32c7c956617573804 100644 (file)
@@ -18,6 +18,7 @@ protected:
        Device &device;
        VkImage handle = 0;
        VkImageView view_handle = 0;
+       mutable std::vector<VkImageView> mip_view_handles;
        unsigned memory_id = 0;
        unsigned view_type;
        std::string debug_name;
@@ -28,15 +29,17 @@ protected:
 
        void allocate();
        virtual void fill_image_info(void *) const = 0;
+       VkImageView create_view(int) const;
+       void create_mip_views() const;
        void require_swizzle() { }
 
-       void stage_pixels(void *, const void *, size_t);
-
        void generate_mipmap();
        virtual void fill_mipmap_blit(unsigned, void *) = 0;
 
        void change_layout(int, unsigned, bool) const;
 
+       void refresh_mip_views() const { if(mip_view_handles.empty()) create_mip_views(); }
+
        void set_debug_name(const std::string &);
        void set_vulkan_object_names() const;
 };