libretro / RetroArch

Cross-platform, sophisticated frontend for the libretro API. Licensed GPLv3.
http://www.libretro.com
GNU General Public License v3.0
10.34k stars 1.84k forks source link

We should switch the default renderer to gdi/rgui for windows #5871

Open meepingsnesroms opened 6 years ago

meepingsnesroms commented 6 years ago

Today after not using windows for over 5 years I have installed it as my main OS on a laptop that got screwed up when I tried installing dnscrypt on linux and it had to be formatted(I am terrible at networking, the dns was completely gone and I could only reach the internet through tor).

When I finished installing windows I installed RetroArch, it crashed on launch. It took me over 6 hours with help to resolve it.

There are so many cases of the video driver crashing RetroArch or not working as intended I think we should set the graphics driver to gdi/rgui by default.

Its better that it loads not supporting 3d cores and the users turn on 3d support than to have it crash on load or randomly while running.

5722

5462

5620

5558

5607

inactive123 commented 6 years ago

That would be awful performance and an awful GUI for most people though. From what I read, most of these issues stem from dated and bad GL drivers to nvidias drivers containing Vulkan regressions. By default we boot with GL driver, I think on most hardware this is sufficient. A failsafe mode could perhaps be implemented and it could be used as a fallback but I would not want it to be the default.

ghost commented 6 years ago

Personally I think #4804 is most relevant here. This should be extended to fallback to a different video driver when e.g. GL is not fully supported.

meepingsnesroms commented 6 years ago

Thats a good idea. On start write "gl_not_safe = true" and "first_run = true" if first_run is not set to the config file. After the gl driver has loaded, write "gl_not_safe = false". When loading if first_run is true set it to false and if gl_not_safe is true due to crashing on load set the driver to gdi/rgui.