Would like to get SMAA working in more games running in Proton (Linux)

  • Nazo
  • Topic Author
More
11 months 3 weeks ago #1 by Nazo Would like to get SMAA working in more games running in Proton (Linux) was created by Nazo
Alright, I'll prefix this by saying I know that Linux is not really truly supported.  And running ReShade is particularly tricky since it's running within various WINE implementations (eg Proton in these two cases.)  I know we're supposed to be satisfied with vkBasalt, but it offers only the smallest subset of shaders and they seem to lack the controls.  (Also, for some reason it's not working for me right now.  Can't quite figure out why since I can verify it is triggering by MangoHud.  It just doesn't do any of the enabled effects.  That's a different issue for elsewhere though.)  I can't even open the vkBasalt menu.  (Putting aside that I'm on Wayland right now, it didn't even work when I tried without Wayland.)  ReShade just does the things I want better even when vkBasalt works.

For most of my games it still works fine with my usual set of shaders.  Typically a relatively simple collection of Vibrance, LiftGammaGain (wow I love this one -- better even than HDR when used right,) LumaSharpen (this thing is a godsend,) and, of course, SMAA.

There are two games that I know of where SMAA has failed to compile.  First and most important for me right now would be Empyrion.  SMAA.fx produces this error in it:

ERROR | Failed to compile 'S:\common\Empyrion - Galactic Survival\Client\reshade\Shaders\SMAA.fx':
error: F__SMAABlendingWeightCalculationWrapPS: <anonymous>:69:1: W5305: Unhandled attribute 'flatten'.
<anonymous>:75:1: W5305: Unhandled attribute 'flatten'.
<anonymous>:389:15: E5017: Aborting due to not yet implemented feature: Prioritize between multiple compatible function overloads.
<anonymous>:389:8: E5002: Can't implicitly convert from float2 to float4.
<anonymous>:354:1: W5305: Unhandled attribute 'branch'.
<anonymous>:491:1: W5305: Unhandled attribute 'branch'.
<anonymous>:1121:1: W5305: Unhandled attribute 'branch'.
<anonymous>:1098:1: W5305: Unhandled attribute 'branch'.
<anonymous>:1231:1: W5305: Unhandled attribute 'branch'.

The other is Nightingale.  Since it seems to be impossible to actually turn off TAA or other AA methods within than game I'm less concerned about fixing it right now (though the internal AA options are all horrible.)  Curiously that game now has the same error, but with a previous version of ReShade it was saying something like that it couldn't convert a colorspace or something of the sort.  Not sure if that's meaningful or not.

I'm not concerned about Nightingale, but I do kind of want to fix SMAA in Empyrion.  SMAA for me has been the best balance anti-aliasing method as long as I have to use post-processing shaders to do it.  Everything else either wants too many resources, relies too heavily on really ugly sharpening filters (FSR/DLSS, geez), or makes everything super blurry.  SMAA misses a lot of edges, but overall it's a good balance.  So if I could get this working I'd be a much happier person.  Also, as another issue, ReShade crashes Empyrion if I try to load all effects (I normally set it to load only enabled effects so it takes 1/100th the time to load.)  That prevented me from loading anything else, so I had to manually set it in the ReshadePreset.ini file.

Of note, both games work 100% fine with ReShade in Windows.  It's not truly ReShade's fault and I'm not blaming ReShade.  I just want to find out if it's at all fixable at my end of things as the gamer (rather than a programmer.)

Please Log in or Create an account to join the conversation.

  • Nazo
  • Topic Author
More
10 months 3 weeks ago #2 by Nazo Replied by Nazo on topic Would like to get SMAA working in more games running in Proton (Linux)
Hope you guys don't mind if I try a little bump here.  I'm really missing ReShade's SMAA compraed to what's in games like these.

Please Log in or Create an account to join the conversation.

  • crosire
More
9 months 3 weeks ago #3 by crosire Replied by crosire on topic Would like to get SMAA working in more games running in Proton (Linux)
Looks like those games are falling back to the d3dcompiler implementation provided by WINE, which is not sufficiently feature complete to handle the HLSL ReShade generates. You'll simply need to take the d3dcompiler_47.dll from Windows (or one of the working games) and place it in the game directory of the non-working games to fix this.

Please Log in or Create an account to join the conversation.