-
Notifications
You must be signed in to change notification settings - Fork 2
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
Shader Patch fails to launch under Linux w/ Steam Proton #132
Comments
hmm, interesting that it did used to work. It certainly sounds like it was the change to supporting compiling shaders on demand that broke it. Maybe including the d3dcompiler_47.dll redistributable with it can solve it? I've included it in the below version. When you get the chance if you could test it and let me know the results that'd be great. |
Oh wow, it's been a month since I've posted. Sorry about that! I've only just gotten around to testing this; since then, Proton Experimental has updated and the reproduceable error is slightly different - the list is subtantially reduced, but obviously still there. This is observed with releases 1.4.1 and 1.4.2, but without the packaged d3dcompiler_47. With it, the shaderpatch log gets slightly further, but indicates something to do with FreeType font atlas? |
Well it looks like it might now be making it past the shader loading. So that is good. Though whoever wrote that error message about the font atlas (me) really should've included more detail about the error. What I suspect is it's falling over on trying to load the font. For some background (you can skip ahead if you like) v1.4 renders the game's fonts using FreeType in order to support display scaling without making the game look too terrible. The font it uses for this is Arial Black as this font matches the game's original font. I have no idea if Wine has a mapping for that font or not. If it doesn't that would be the problem right there. The user config does control which font it'll use. If you look for this near the bottom of Scalable Font Name: ariblk.ttf You could try changing it to something more common like Amusingly enough today I was actually thinking about if Shader Patch should use and bundle a free font with it rather than depending on a (slightly) obscure one in Windows. This is another thing that makes me think it may be worth going down that route. |
Yeah I'm seriously considering adding a bundled font either as the default or a fallback, turns out the code I have for passing the game font layout information breaks in a subtle way for other fonts though. Very annoying since it means making this change isn't as simple as I was hoping for.
Aha, oops that bit in the readme is outdated. That's my bad sorry! The old installer/uninstaller did use .NET, the new rewritten one uses something that is probably even harder to use under Wine. Specifically the Windows Runtime (for it's UI). When I made that choice in my mind it was great because it didn't need people to install anything separate, it kept the binary size low and it scales with DPI without any hassle. As mentioned in #133 I am starting to think that maybe the configurator should have it's WinRT UI code replaced with something else. Likely it would end up using ImGui instead.
Yeah I did a little testing and was able to replicate something like that in first person. (I don't often use FP so that'll be how it slipped past, annoying for sure.)
Strange, I think the 1060 supports the equivalent Vulkan extension. Maybe ROVs aren't implemented in Proton yet though? Sorry about the slow reply by the way! |
Couldn't really blame you for any of that! I don't imagine it's often you see bug reports from Linux users for mods of Windows games running through Proton/Wine; it's just that it would be nice if more things like this were slightly more platform-agnostic. Anyways, I was just wondering if the sorting in FPM was because of the unimplemented function, but I guess that's something else entirely then. I'll have to check with Proton &/or DXVK one of these days for this to be fixed/implemented upstream. EDIT: |
When launching the latest shaderpatch through proton it seems the problem is d3d9.dll. As soon as i rename it the game launches but otherwise it just crashes on launch. |
@BENDER-V2 providing log files would be useful.
|
That said, I have noticed weird artifacts popping up in 1.7.0 that weren't in 1.6.1--some of the effects like blaster fire and thermal detonators' glow and explosions are either corrupted or don't appear at all, regardless of OIT setting or effects being enabled. These effects are correct in 1.6.1 (with OIT off/ OIT on still causes these effects to not display as before, even with an up-to-date NVIDIA driver and current Proton-GE/Exp). |
I meant |
nvm. i was using a bad shader patch.yml after replacing it and changing the font now it works. |
The font crash should be fixed in v1.7.1 but scalable fonts will still not work out of the box. It'll just fallback to the game's regular ones. |
That is annoying. I'm not sure what to switch to though. Can anyone tell me if a regular .zip made by 7-zip instead of PowerShell works? |
Good to know, thank you! I'll package it using 7-zip from now and I've updated the last release's .zip to be packaged with 7-zip as well. |
Hi! I know this might not be relevant to your interests as this specifically affects only Linux users, but would still like to bring to attention--maybe if this is to run on the Steam Deck, for example.
Anyways, launching SWBF2 with Shader Patch 1.4.1 &/or 1.5.0 preview-2 causes it to crash on bootup.
Log attached. Graphical representation of the error below:
Seems as if it's having trouble parsing the shader files in
./data/shaderpatch/shaders/src
.The game runs fine normally with just the 1.3 patch, or when
Shader Patch Enabled
is set tono
It's entirely fair if this isn't necessarily fixable on your end, but it would be nice to have a confirmation if this can be, or if it should be reported to Wine devs.
Running on EndeavorOS (Arch-based), Wine-6.19-GE-1.
The text was updated successfully, but these errors were encountered: