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

fix OpenGL version detection #11673

Merged
merged 1 commit into from Jun 24, 2023
Merged

Conversation

Be-ing
Copy link
Contributor

@Be-ing Be-ing commented Jun 22, 2023

This allows OpenGL waveforms to be used with the Wayland Qt Platform Abstraction on KDE and Weston. Though GL_MAJOR_VERSION and GL_MINOR_VERSION reported much higher versions (4.6 when tested on Intel UHD Graphics 770 (ADL-S GT1)), QSurfaceFormat reports 2.0 on KDE Wayland and Weston (somehow it reports 2.1 on GNOME Wayland though) and 2.1 with the Xcb QPA. QSurfaceFormat does not report higher versions if they are requested in the OpenGLWindow constructor.

This has only been tested on Linux. @m0dB can you test on macOS? @JoergAtGithub could you test on Windows?

@Be-ing
Copy link
Contributor Author

Be-ing commented Jun 22, 2023

Finally with Wayland high DPI scaling Just Works automatically without needing to set the environment variable QT_AUTO_SCREEN_SCALE_FACTOR=1. Without needing to specify -platform xcb, no command line arguments are required to run Mixxx either.

@JoergAtGithub
Copy link
Member

On my Windows11 laptop I get:

debug [Main] OpenGL driver version string "4.6.0 Compatibility Profile Context 22.20.28.15.230324", vendor "ATI Technologies Inc.", renderer "AMD Radeon(TM) Graphics"
debug [Main] Supported OpenGL version: 4.6

This allows OpenGL waveforms to be used with the Wayland Qt
Platform Abstraction on KDE and Weston. Though GL_MAJOR_VERSION and
GL_MINOR_VERSION reported much higher versions (4.6 when tested on
Intel UHD Graphics 770 (ADL-S GT1)), QSurfaceFormat reports 2.0 on
KDE Wayland and Weston (somehow it reports 2.1 on GNOME Wayland
though) and 2.1 with the Xcb QPA. QSurfaceFormat does not report
higher versions if they are requested in the OpenGLWindow
constructor.
Copy link
Member

@Swiftb0y Swiftb0y left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. can confirm this to also fix the issue on Fedora 38 (Gnome running XWayland). There are other issues on Wayland though I'll file in separate gh issues.

This probably doesn't make any difference on MacOS, but lets wait with merging until someone confirms it.

@m0dB
Copy link
Contributor

m0dB commented Jun 23, 2023

I'll test on macOS this weekend.

@m0dB
Copy link
Contributor

m0dB commented Jun 23, 2023

It works fine on macOS, so I think this can be merged without issue.

@JoergAtGithub
Copy link
Member

LGTM! Thank you!

@JoergAtGithub JoergAtGithub merged commit 4b77981 into mixxxdj:2.4 Jun 24, 2023
13 checks passed
@Be-ing Be-ing deleted the opengl_version branch June 24, 2023 14:54
@m0dB m0dB mentioned this pull request Jun 24, 2023
@daschuer daschuer added this to the 2.4.0 milestone Dec 28, 2023
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.

None yet

5 participants