-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Add support for Vulkan on Wayland #3994
Conversation
please try to adjust to our coding style as described in here: https://github.com/RPCS3/rpcs3/wiki/Coding-Style There are a lot of missing or wrong indentations like with the namespaces and you often have opening braces in the same line instead of a new one. |
rpcs3/rpcs3qt/gs_frame.cpp
Outdated
@@ -145,6 +150,17 @@ void gs_frame::show() | |||
}); | |||
} | |||
|
|||
#ifdef VK_USE_PLATFORM_WAYLAND_KHR | |||
std::pair<wl_display*, wl_surface*> gs_frame::wayland_handle() const | |||
{ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Move this into gs_frame::handle(). The checks in VKGSRender to check if wayland handle is valid can also be done there.
rpcs3/Emu/RSX/VK/VKHelpers.h
Outdated
#ifdef VK_USE_PLATFORM_WAYLAND_KHR | ||
, std::pair<wl_display*, wl_surface*> | ||
#endif | ||
> VkUnixContext; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This template can be moved to gsframe header instead as it is not restricted to use with vulkan only and holds general unix window and display properties. Name can be changed to reflect that as well, something like unix_display_context or something along those lines
13c05bb
to
bffeda5
Compare
The variable VK_USE_PLATFORM_WAYLAND_KHR is actually used by the Vulkan header, so use it here too.
bffeda5
to
fad5e8d
Compare
Moved the stuff to gsframe header. New version: also moved some identical code outside of platform ifdefs in VKGSRender.cpp |
rpcs3/rpcs3qt/gs_frame.cpp
Outdated
@@ -8,6 +8,13 @@ | |||
#include <QTimer> | |||
#include <QThread> | |||
|
|||
#ifdef VK_USE_PLATFORM_WAYLAND_KHR |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This whole block from line 11 to 16 should be in an ifndef _WIN32 block. That should fix appveyor CI and allow this set to be mergeable
Works on
QT_QPA_PLATFORM=wayland-egl
: