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

[macOS] Switch ANGLE backend to ANGLE over OpenGL, switch default compatibility renderer back to native. #85785

Merged
merged 1 commit into from
Dec 5, 2023

Conversation

bruvzg
Copy link
Member

@bruvzg bruvzg commented Dec 5, 2023

I think it's pretty clear that using ANGLE over Metal on macOS was a total failure. Unlike ANGLE over DX11 on Windows which seems to be doing a good job for supporting older hardware, it's causing a lot more issues than fixing.

Superseded #84563
Fixes #85619
Fixes #84591

@bruvzg bruvzg added this to the 4.3 milestone Dec 5, 2023
@bruvzg bruvzg requested review from a team as code owners December 5, 2023 13:52
@akien-mga akien-mga added the cherrypick:4.2 Considered for cherry-picking into a future 4.2.x release label Dec 5, 2023
@akien-mga
Copy link
Member

akien-mga commented Dec 5, 2023

Is there much value left in using ANGLE over OpenGL as opposed to just native OpenGL? The main rationale for using ANGLE on macOS was the fear that bitrotting OpenGL drivers would have too many issues, but if we're still using them via ANGLE there might not be much benefit in having ANGLE at all?

On the other hand if there we still want to have ANGLE over Metal as an opt-in for devices with proper Metal support, we could still considering #84563. But it sounds like ANGLE over Metal has core issues even on latest macOS?

@bruvzg
Copy link
Member Author

bruvzg commented Dec 5, 2023

Is there much value left in using ANGLE over OpenGL as opposed to just native OpenGL?

The only issues with ANGLE over OpenGL is slow shader compilation (first start will take minute or two, some WebGL issue we have on macOS), and it's not fixing GPU particles issues. It might be fixing some issues, but I'm not sure. So we probably should not have it built-in, but keeping support for dynamically linked versions cost noting (most of the code is shared with Windows, and EGL on Linux), so I do not see many reasons to completely remove macOS specific part of it.

The main rationale for using ANGLE on macOS was the fear that bitrotting OpenGL drivers would have too many issues, but if we're still using them via ANGLE there might not be much benefit in having ANGLE at all?

Unlikely it will get less functional, and when OpenGL is removed from macOS, I would expect Google to fix all issues in the ANGLE over Metal (unless WebGPU will supersede it by the time) for the use in Chromium.

On the other hand if there we still want to have ANGLE over Metal as an opt-in for devices with proper Metal support

With this amount of issues I would not consider it even as an optional feature.

@akien-mga akien-mga merged commit 7233bc6 into godotengine:master Dec 5, 2023
15 checks passed
@akien-mga
Copy link
Member

Thanks!

@akien-mga
Copy link
Member

Cherry-picked for 4.2.1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants