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
Use On Screen Display Notification for Unsupported Metal Warning #8181
Conversation
Err, doesn't the video backend needs to be successfully initialized in order to display OSD messages? On that scenario, if I understood correctly, the backend fail to initialize, so no OSD messages and hence the Panic Alert instead... |
I disagree with this. There are features missing from High Sierra which we make use of (e.g. MSAA texture arrays). We also used to crash the shader compiler for Intel GPUs (fixed in 10.14). The warning is there so that we don't get bug reports from people who are intentionally using an unsupported configuration. |
Sorry, I should have read the linked report. If it is freezing up Dolphin, that's something I can investigate when I have time. We might have to find a different way of displaying the message if the PanicAlert is breaking, perhaps in the Qt frontend instead. |
Not exactly: in post 5.0-10451, when Vulkan is selected as a backend for MacOS (pre-Mojave), as soon as the game is launched, the warning should appear in a Panic alert (which it did). However, clicking ignore or OK would only cause the game to not boot (black screen, 0 FPS). In this PR, instead of using Panic alerts, OSDs are used to show the warning. For some reason, the backend does fine here, and it boots the game without problem. EDIT: Screencap - https://youtu.be/uEBOvEWji-k |
FWIW, on my machine (10.13 High Sierra, Nvidia graphic card with the web drivers), the Vulkan backend seems to work correctly with no crashes after clicking either button on the panic alert. If anti-aliasing is enabled, it fails to start and eventually errors out with “Unable to initialize video backend”, though. In my case, I’d prefer having a less obtrusive warning message, since I have to validate it at least every time I start Dolphin (and I think it also prevents the game window from getting to the foreground) |
I'm also against this change, for the same reasons as Stenzek, and the fact that the OSD relies on the video backend, so if it fails to initialize for some reason the user won't ever see the message. This defeats the purpose of the message, because we don't care if Vulkan fails on anything older than 10.14. |
Understood. I began to see what type of alerts would work. Once again, all types of panic alerts would not boot the game, however it did have different effects. For some alerts (like yes/no), disabling panic handlers would boot the game. When using PanicAlert with panic handlers off, the game would not boot. 🤔Maybe a one time Qt Yes/No confirmation dialog, right before game launch would be best to display the warning. |
Closed PR, because of mistake in repo. |
I was trying to play a game on MacOS High Sierra using Metal backend, when there was a warning that Metal was unsupported (5.0-10451). I click OK to continue, but the game wouldn't launch. "Ignore for this session" would not launch the game either. Instead of using Panic Alerts, an OSD alert should display on screen for 60 seconds (just like OpenGL notifications). The game will launch like expected, and the message will still be read.
I sent a bug/suggestion report for more information:
http://dolp.in/i11764