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

Wayland Support #2432

Open
ciandonovan opened this issue Apr 12, 2022 · 3 comments
Open

Wayland Support #2432

ciandonovan opened this issue Apr 12, 2022 · 3 comments
Milestone

Comments

@ciandonovan
Copy link

When building OGRE with the flag -DOGRE_GLSUPPORT_USE_EGL=1 to attempt to get it to run natively on Wayland, the sample applications still call on functions that require GLX or expect an X11 display socket and attempt to connect to that instead.

There was some discussion on your forums here (https://forums.ogre3d.org/viewtopic.php?t=96208) where others also attempted this, but from what I could see it never got resolved.

The application I'm trying to build is RViz, which uses the OGRE engine, and my aim is to have it work natively with the Weston Wayland compositor. Windows' WSL uses Weston internally for graphical Linux applications, and there's footage here (https://devblogs.microsoft.com/commandline/the-initial-preview-of-gui-app-support-is-now-available-for-the-windows-subsystem-for-linux-2/) of RViz running on Weston in WSL. However, I'm not familiar with how WSL works internally and whether they in fact use XWayland for compatibility.

Does there exist an option in OGRE to disable the X11/GLX components and have it use EGL/Wayland exclusively, or would that require significant refactoring to achieve?

@paroj
Copy link
Member

paroj commented Apr 13, 2022

to run Ogre on Wayland, we also need a WaylandWindow and WaylandEGLSupport implementation for EGL - similarly to what we have for X11 or Android right now:
https://github.com/OGRECave/ogre/tree/master/RenderSystems/GLSupport/src/EGL

as you can see there is currently none, so feel free to write one and contribute 😄

@ciandonovan
Copy link
Author

Thanks for pointing me in the right direction!

So writing a OgreWaylandEGLSupport.cpp/OgreWaylandEGLWindow.cpp and replicating the functionality from the other EGL render systems with Wayland-equivalent functions should be sufficient for Wayland-native windowing? Or are there other areas of ORGE that would also need refactoring?

@paroj
Copy link
Member

paroj commented Apr 13, 2022

yes, that would be sufficient

@paroj paroj added this to the 14.x milestone Feb 2, 2024
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

No branches or pull requests

2 participants