Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vulkan: several fixes and refactors #1132

Merged
merged 2 commits into from
Mar 24, 2024

Conversation

goeiecool9999
Copy link
Collaborator

@goeiecool9999 goeiecool9999 commented Mar 22, 2024

  • make surfaces entirely managed by SwapchainInfoVK (and actually destroy the surfaces in destructor)
  • destroy temporary surface for device enumeration
  • simplify SwapchainInfoVk constructor
  • change drawbackbuffer render pass load operation to OP_LOAD, so that when the swapchain image was cleared the black background is kept (formally, it always was in practice)
  • fix structure type enum
  • move queue family code back into VulkanRenderer

 * make surfaces entirely managed by SwapchainInfoVK
 * destroy temporary surface for device enumeration
 * simplify SwapchainInfoVk constructor
 * change drawbackbuffer render pass load operation to OP_LOAD, so that when the swapchain image was cleared the black background is kept (formally, it always was in practice)
 * fix structure type enum
 * move queue family code back into VulkanRenderer
@amayra
Copy link

amayra commented Mar 24, 2024

can we have "VK_KHR_synchronization2" as option in settings

@Exzap
Copy link
Member

Exzap commented Mar 24, 2024

can we have "VK_KHR_synchronization2" as option in settings

There isn't really a point to it being available as an option. The reason we want to use it is that it's just a tiny bit faster. But if we make the code path dynamic that introduces branching overhead and it would offset the benefit while also making the code a lot more complicated.

@Exzap Exzap merged commit 1706075 into cemu-project:main Mar 24, 2024
5 checks passed
@Exzap
Copy link
Member

Exzap commented Mar 24, 2024

On a side note including anything from gui in non-GUI code is something we really want to move away from. The Vulkan renderer shouldn't be tightly coupled to our wxWidgets/UI code and in the long term we should find a more abstract interface to handle the canvas. I know you just moved things around and didn't introduce this, just a FYI

@goeiecool9999 goeiecool9999 deleted the destroysurfaces branch March 27, 2024 15:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants