Open VasanthBalguri opened 10 months ago
Non qt examples work fine on Wayland, including vsgwindows.
vsgQt relies upon the VulkanSceneGraph itself for it's vkSurface support so depend upon support native windowing support. Presently we have a vsg::Xcb_Window implementation for unices,
For Wayland support we'll need to implement a vsg::Wayland_Window in a similar way to the present Xcb_Window. GLFW was one of my references I learned from when I implemented vsg::Xcb_Window, and it has a Wayland support which looks relatively sraight forward so my expectation is that it would just take a couple of days to write when the time came.
I have had too many other pressing tasks on my plate to tackle this work, and have remain very bust so can't tackle it in the near future. Others are welcome to contribute a vsg::Wayland_Wndow, this will benefit the VSG in general as well as enabling vsgQt to work under Wayland.
Hi,
I was thinking about implementing that, but Wayland doesn't support decorations out of box, which means the outer shell of window which has minimise, maximise and close button should be implemented by us or hope that the running system provides extensions for it.
I am planning to implementing it, will create a PR once I am ready...
Other than that xcb_Window will work in standalone if we have Xwayland installed, but the Linux community is adamant on removing X11 sooner or later.
Help from community is highly appreciated.
shall I keep the issue open until then?
Thanks. Yes keep this Issue open, once the VSG supports Wayland and we've updated vsgQt we'll be able to close the Issue.
W.r.t window decoration, I wasn't aware of this issue, but for vsgQt it'll not need window decoration in a vsg::Wayland_Window as Qt will provide the window, the Wayland integration is essential used to add the Vulkan integration.
FYI, last year vsgQt originally used Qt's Vulkan integration but I had to remove this as it didn't support multi-window Vulkan usage whilst sharing a logical vkDevice between windows. So for proper multi-window support I had to resort to using the VSG's inbuilt windowing to provide the vkSurface/Vulkan integration. This is really down to Vulkan being an afterthought for Qt, but of course Vulkan is central to the VSG, so properly supporting all it's capabilities is the projects focus.
The downside of this is that we lost the ability to support Wayland till we implemented it the core VSG.
Hi Robert,
I was able to rig a basic Wayland window, there is still lot of work to do before I raise pull request
Regards, Vasanth
If you have something that others can start testing, even if in incomplete form, let me know, or even post to the main VulkanScenenGraph forum. FYI, I have Ubuntu 22.04 on my laptop and Kubuntu 22.04 on my main desktop system.
Hi Robert,
I still need to complete IO and verify on vsgQt, I will merge in my fork and share it on discussions once done.
Regards, Vasanth
On Fri, 16 Feb, 2024, 2:24 pm Robert Osfield, @.***> wrote:
If you have something that others can start testing, even if in incomplete form, let me know, or even post to the main VulkanScenenGraph forum https://github.com/vsg-dev/VulkanSceneGraph/discussions. FYI, I have Ubuntu 22.04 on my laptop and Kubuntu 22.04 on my main desktop system.
— Reply to this email directly, view it on GitHub https://github.com/vsg-dev/vsgQt/issues/33#issuecomment-1947986246, or unsubscribe https://github.com/notifications/unsubscribe-auth/AE6DBOKRQ6B73NLIV6TZEBDYT4NFBAVCNFSM6AAAAABCDBO5XGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNBXHE4DMMRUGY . You are receiving this because you authored the thread.Message ID: @.***>
Steps to reproduce:
To be precise it fails at following line
with exception message
This might be issue related to vulkan on wayland that I am not sure, strangely it works on X11.
I will dig into this further, but for now creating a issue for reference. Please let me know if it works fine for others on wayland.