From 29291cb47cdaa72d1142a008fef3301dcb86dfac Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Thu, 16 Jun 2022 14:43:24 +0200 Subject: render/texture: drop wlr_texture_is_opaque Whether a texture is opaque or not doesn't depend on the renderer at all, it just depends on the source buffer. Instead of forcing all renderers to implement wlr_texture_impl.is_opaque, let's move this in common code and use the wlr_buffer format to know whether a texture will be opaque. --- render/vulkan/texture.c | 9 --------- 1 file changed, 9 deletions(-) (limited to 'render/vulkan') diff --git a/render/vulkan/texture.c b/render/vulkan/texture.c index 26af9867..35b9562e 100644 --- a/render/vulkan/texture.c +++ b/render/vulkan/texture.c @@ -33,14 +33,6 @@ static VkImageAspectFlagBits mem_plane_aspect(unsigned i) { } } -static bool vulkan_texture_is_opaque(struct wlr_texture *wlr_texture) { - struct wlr_vk_texture *texture = vulkan_get_texture(wlr_texture); - const struct wlr_pixel_format_info *format_info = drm_get_pixel_format_info( - texture->format->drm_format); - assert(format_info); - return !format_info->has_alpha; -} - // Will transition the texture to shaderReadOnlyOptimal layout for reading // from fragment shader later on static bool write_pixels(struct wlr_texture *wlr_texture, @@ -199,7 +191,6 @@ static void vulkan_texture_unref(struct wlr_texture *wlr_texture) { } static const struct wlr_texture_impl texture_impl = { - .is_opaque = vulkan_texture_is_opaque, .write_pixels = vulkan_texture_write_pixels, .destroy = vulkan_texture_unref, }; -- cgit v1.2.3