Skip Navigation

HL2: Differences between native Linux and Windows on Proton

I've never really thought about whether the game looks the same using its Windows vs Linux renderer. I installed HL2 to check out the anniversary update and decided to try the Windows renderer on Proton. Would you look at this difference... Linux is the top one, Windows is the bottom:

Is this is a thing? Have you tried other games and seen the Windows version looking better?

31 comments
  • I've noticed that wine (and proton?) use a vulkan-based system to emulate DX/D3D, did you tweak any graphic settings or is this default settings "out of the box?"

    It's possible the Linux version is defaulting to OGL and the Windows version is using d3d-as-implemented-in-vulkan, (or a similar situation) which could cause some differences in rendering or capabilities.

    • Thevideo settings are the same on all configurable options. They're set to max.

      It's possible the Linux version is defaulting to OGL and the Windows version is using d3d-as-implemented-in-vulkan, (or a similar situation) which could cause some differences in rendering or capabilities.

      I think this is likely the reason. Which makes me think this sort of difference might exist across other games that use D3D on Windows and GL on Linux. Difference in Capabilities along with time spent making something look the way the developers want it to look on those capabilities. So if they spend a lot more time on the Windows version, they might fix things to look alright on D3D and leave them be however they turn out on GL.

  • Sadly for many games the Windows version runs and looks better than the Linux version. That's often because the Linux version is done by outside contractors whose contract expired. So while the Windows version will receive updates the Linux version lies stagnant.

    See Tomb Raider 2013 for instance. The Windows version via Proton looks and runs much better than the native one.

    • Once you get a devops pipeline set up, you do all versions at the same time and have the compiler farm handle it. No reason the native versions shouldn't be receiving updates at the same time when its become rather easy to integrate multiple targets at the same time.

31 comments