protonscr

Age of Empire 4 : created image view with differing format from a swapchain image

vkd3dclosed
HansKristian-Work/vkd3d-proton#1213 · opened 2022-09-02 by djdeath · updated 2022-09-29 · 5 comments · github
Ddjdeath 2022-09-02 github

Before the first image is visible on screen, we run into this assert in mesa : https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/vulkan/runtime/vk_image.c#L418

This means that an image view was created out of an image but both formats different.

The image is actually coming from a swapchain. We'll set the VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT if the swapchain is created with VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR : https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/vulkan/wsi/wsi_common.c#L477

So it seems vkd3d-proton is missing that flag when creating the swapchain.

DDadSchoorse 2022-09-02 github

This is probably actually a bug in proton's full screen emulation, I have a fix pending for it https://github.com/ValveSoftware/wine/pull/158

Ddoitsujin maintainer 2022-09-03 github

Yeah, this can't really be our bug, we explicitly only use the swap chain format itself to create image views and never forward the swap chain images directly to the application.

The fshack issue should affect all games that run through Vulkan in one way or another, not just AoE 4. The question is whether or not we should work around this on our end.

Rrenatopereyra 2022-09-06 github

The question is whether or not we should work around this on our end.

Would a workaround still be needed given https://github.com/ValveSoftware/wine/pull/158?

DDadSchoorse 2022-09-29 github

@djdeath The fix should now be available in proton experimental.

Ddjdeath 2022-09-29 github

Cool, I guess we can close this then.

Proton versions

Upstream links