mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2025-11-03 09:01:40 -05:00
render/vulkan: don't use UNDEFINED layout for imported DMA-BUFs
UNDEFINED when used as source layout means that the contents of
the underlying memory becomes undefined. This isn't what we want
here: we don't want to mutate the imported pixel data.
The Vulkan spec isn't really clear what the proper value should be
here, but after discussing with driver developers [1] it seems like
UNDEFINED isn't the right one. The recommendation is to use GENERAL
instead.
[1]: https://github.com/ValveSoftware/gamescope/issues/356
(cherry picked from commit 2c4d3ad12d)
This commit is contained in:
parent
e8cf5b1c2a
commit
60885c639b
2 changed files with 2 additions and 4 deletions
|
|
@ -791,7 +791,7 @@ void wlr_vk_texture_get_image_attribs(struct wlr_texture *texture,
|
|||
attribs->image = vk_texture->image;
|
||||
attribs->format = vk_texture->format->vk;
|
||||
attribs->layout = vk_texture->transitioned ?
|
||||
VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL : VK_IMAGE_LAYOUT_UNDEFINED;
|
||||
VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL : VK_IMAGE_LAYOUT_GENERAL;
|
||||
}
|
||||
|
||||
bool wlr_vk_texture_has_alpha(struct wlr_texture *texture) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue