"Sorry the game doesn't work, we don't support your distro" is a really crummy thing to have to say to your customers. Fact is Linux doesn't have a stable ABI that you can build your game against (no, the Steam Runtime doesn't solve this problem). The only stable ABI that is supported on Linux is... win32 via Wine.
Better than "Sorry the game is not available for your platform."
Linux does have a stable ABI. The kernel ABI is stable. The glibc ABI is stable. The OpenGL ABI is stable. The Xlib ABI is stable.
What you can't do is link with a random libpng or whatever that you found on your system and then expect that to work for others. But that's the same on Windows.
No, Windows provides a stable ABI for decoding PNG images, it's called the Windows Imaging Components library[1]. I don't think it's sustainable to expect every application to ship effectively an entire distro to provide stability. Consider if my app shipped an old version of gnutls, would you be happy to use that? Should it be my responsibility to update it for eternity? With win32, on both Windows and Linux via Wine, you can just use the win32 bcrypt library and assume the underlying implementation is secure and up to date.
Win32 is the only solution for a usable, stable, application-level ABI on Linux. I don't like that fact either.