Open Mrblubb opened 2 years ago
Can you take a screenshot? And what CPU do you have? If it's ryzen, try the second solution here.
Can you take a screenshot? And what CPU do you have? If it's ryzen, try the second solution here.
Here are some screenshots with the bug in action :
With DXVK 1.10 (dx9) :
Tested on 2 systems FX8350 | NVIDIA GTX1060 6gb |511.79 | 16gb ram | Win 10 21H1 RYZEN 3900X | NVIDIA RTX 2060 8gb |511.79 | 64gbram | Win 10 21H1
Both having exact same issue.
Also setting the PSGP flag in registry doesn't seem to fix it. Edit : With Dx10 ingame there is a heavy dark blob just like Mass effect, doesn't happen with dxvk but model isn't lit just like dx9.
Also setting the PSGP flag in registry doesn't seem to fix it.
In which case, even though it looks identical to the naked eye, it's not the same issue.
In the case of mass effect and bulldozer cpus, disabling PSGP also somehow still didn't fix the problem (see #3, which we never got around to understand) On the other hand, dxvk making a difference sounds different indeed.
Thanks a lot for your attention on this! Can anything be done at this point? Any workarounds, I'm very ready to help out with any info needed.
No ideas from me.
3dnow! was very ahead of its time eh! No one imagined it'll be remembered in 2022 lol! Why o why amd doesn't include a similar into their chips. Well then, guess it'll be fixed when "it'll be fixed". Should it be logical to report this issue to DXVK repo as well ?
The problem with ME is different rounding of SSE operations, not lack of 3dnow per se. You could try to capture the game with PIX maybe (take note DX10 requires to use Vista or 7 without KB2670838)
Dxvk then doesn't like much "clueless bug reports that have only been validated in windows".
I was having a look at this issue today, and I found that Gears of War imports D3DXMatrixInverse from the d3dx10 DLL rather than the d3dx9 one. So I cloned this repo and rewrote the inits/exports for the d3dx10 functions that Gears uses, copied the compiled DLL to the game folder, and what do you know? It works great!
Here's the DLL if anyone wants to try:
drive.google.com/file/d/1a7jYhc-lpk1feJXXQ-c7B5MHBKpg5kH3
Huge props to CookiePLMonster and team for root causing this issue.
Oh my GOD!!! I thought it would never be possible. Going to install the game immediately to try this. THANK YOU SO MUCH!!! 🤩 🙏
I'm going to change the issue's title and pin it for visibility 🙂
Wonderful! I've been blessed by Lords themselves. Thanks a lot
Sorry for bothering but I'm still facing the issue. I tried running on dx9 and dx10 with the d3dx10_35.dll placed in the game folder yet the turrets still appear like black blobs 😥 Should I need to rename it ?
@adjonesey
Hmm, not sure tbh. It works for me in DX9 and DX10 as soon as that DLL is in place. Are you sure you are putting the DLL in the "Binaries" folder (same place as WarGame-G4WLive.exe), @Mrblubb ? Also right-click the file, go to Properties, and make sure you "Unblock" it if necessary.
Bit of a long shot, but I compiled the DLL with VS2022, so make sure you have the latest C++ redistributables installed as well.
Just tried it on a 2nd Ryzen system with no Dev tools or SDKs installed, and it works fine there too.
@adjonesey Just tried the patch on my Ryzen machine and it does work beautifully (sharing the screens here). But on the FX 8350 system it doesn't. Can it be made compatible with it somehow ?
I'm suspecting it's the same issue as the one we still have in Mass Effect:
Fixed an issue causing black blobs to appear with contemporary AMD CPUs. Warning: AMD FX and Bulldozer chips are still affected. We are investigating the issue.
Oh I see. So no support for FX yet. Hopefully in near future. Still I'm very happy that I can finally play the game 4k without issues on my modern PC. Thanks a million for fixing this 😊❤🙏✨
Sounds the same of #3, yes. How wack could 15h accuracy even be? Can the fact that we have the full source code of the game and the uncompiled maps help here?
@adjonesey Just tried the patch on my Ryzen machine and it does work beautifully (sharing the screens here). But on the FX 8350 system it doesn't. Can it be made compatible with it somehow ?
Nice, glad it's at least half working for you!
As I don't have an FX CPU to test with it's unfortunately a bit difficult to comment on that. I don't have any theories why the fix isn't working on those CPUs, possibly something to do with 3Dnow!?
One thing you could possibly try (although I'm not very optimistic) - the d3dx10 DLL seems to depend on the DisableD3DX10PSGP setting rather than DisableD3DXPSGP, so you could try adding that DisableD3DX10PSGP to your registry and see if it makes any difference.
@adjonesey Sure! will try. Its just that its been more than a year so I forgot where to add that flag in registry (pardon my volatile memory). If you could guide me where it should be added in the registry it would be lifesaver. Thanks again:)
Sure no probs, you should be able to drop the setting in here (DWORD, value = 1)
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Direct3D
Also I think there's some good info on how to configure these properly in Silent's original blog on Mass Effect
Wonderful! Thanks a lot. I'm trying it now.
@adjonesey so I tried registry flags but it doesn't seem to work. Also this is how I added the flags in the registry according to Rafael's guide provided in Silent's blog. Below it is how the game looks on fx 8350 cpu
Edit: Sorry posted image twice
It probably won't help, but I think Rafael's example shows application-specific settings inside a subkey of Direct3D (he called it SolitaireOverrides so I don't think it matters what name you give it)
IIRC his fancy overrides don't work at all for these values, and the only proper place is HKLM\SOFTWARE\Wow6432Node\Microsoft\Direct3D
@adjonesey @mirh thanks I tried the new location but I think game doesn't accept the flags from registry at all with any location whatsoever. The only proper way seems to be via the dll injection that worked on the ryzen cpu. If somehow that could be translated for fx lineup as well, glory will be made and this long 3dnow! black blobs will be history forever.
You mean that's not even working on the ryzen? This is strange. Could you check with procmon if the game is even trying to read any such value anywhere?
@mirh yeah the game doesn't read these registry values at all even on ryzen. Also I never used procmon so I don't know how should I approach it to look for a particular value for an exe
Hello, Hope you're well! Just wanted to request the very same fix for "Gears of War" on PC since it is also affected by the same bug and the turrets and birds and some terrain objects produces same artifacts on modern FX & Ryzen CPUs and utilising this "dll" doesn't seem to fix in this game.
Thanks!!