tuffee88 / d3d12ProxyEdrDx11_0

Totally naive app using proxy/dll forwarding to try and get Elden Ring running on DX12 hardware with Feature level 11_0 (f.e. Nvidia Kepler GPUs)
293 stars 43 forks source link

Deathloop Error #41

Open mojmass opened 2 years ago

mojmass commented 2 years ago

Tried running "Deathloop" with your fix and got the following error message "Can't run the game on your graphics card with only D3D12_TILED_RESOURCES_TIER_1, we are currently supporting only D3D12_TILED_RESOURCES_TIER_2 and above"

Is there anything that can be done for this?

tuffee88 commented 2 years ago

Well as the game checks for which tier of tiled ressources is supported it's unlikely that it'll work without proper support (without emulating that feature). You can try to patch the CheckFeatureSupport response to claim tier 2 support but chances are this won't work.

Did you try running the game with vkd3d-proton ?

hentianyuan commented 2 years ago

@tuffee88 I have the same problem. Using vkd3d proton to replace running the game still prompts an error. Is there a solution? screenshot

tuffee88 commented 2 years ago

Due to popular request I'll have a look at this -> Chances are that DeathLoop relies on ID3D12Device::CheckFeatureSupport to verify what level of D3D12_TILED_RESSOURCES is supported. ->Kepler supports tier 1 but depending on driver and game behaviour might have a chance to get by when we just bypass this check (by returning D3D12_TILED_RESOURCES_TIER_2 instead)

Fyi: This issue seems to have been tackled by (at least) one cracked release of DeathLoop (can't link to this, but if you have a legitimate copy I don't think it hurts if you have a look at the DeathLoop release by EMPRESS)

tuffee88 commented 2 years ago

Hi mojmass and hentianyuan,

I didn't have any luck getting this to run on my card (neither the supposed fiy in the EMPRESS release nor bypassing D3D12_TILED_RESOURCES_TIER_2 via ID3D12Device::CheckFeatureSupport worked for me) - I usually get into the menu and after some time the game freezes while loading or does a classic CDT.

Please try the attached d3d12.dll (extract from .zip) and let me know if if works for you, there's a chance that this might be releated to my setup as well....(esp. since EMPRESS talks about GTX 770 support).

Debug.zip

ctrynxel commented 2 years ago

Hi, I got a GTX 960M. I tried the attached d3d12.dll. I got past the initial loading and my PC crashed right as the main menu was starting. Might or might not be related to your fix but I'm hesitant to try again. My Laptop is barely holding on to it's life.

hentianyuan commented 2 years ago

@tuffee88 I use the debug file you provided to extract and replace it.

You can open the main program of the game without error prompt.

The interface of loading the main menu freezes. I try to open it again, but the problem still exists.

The mouse and keyboard didn't respond.

The screenshot is sent to you. Please check it. How to solve this problem?

1650102335203

tuffee88 commented 2 years ago

Thanks for checking guys ! In that case this seems to be a real hardware support issue (at least on Nvidia Kepler GPUs) - so some sort of emulation or game hacking will be needed to solve this. I'm sorry but this our of the scope of this project, so don't expect a fix by me.

I might give this a swing if I find some time but please don't get your hopes up

Konradjustimagine commented 2 years ago

Hey, couldn't figure out where to message so I'm doing it here.

directx11 fix is confirmed working on GTX670 GPU with anti-cheat disabled. Good performance overall, occasional lag and crashing.

tuffee88 commented 2 years ago

Hey, couldn't figure out where to message so I'm doing it here.

directx11 fix is confirmed working on GTX670 GPU with anti-cheat disabled. Good performance overall, occasional lag and crashing.

Thanks for letting us know ! Just to be clear: Are you referring to EldenRing or Deathloop ? In case Deathloop works for you I'd be very interested in the NVIDIA driver version you use :-)

MahmoudM512 commented 2 years ago

hey, no need for any of all that, EMPRESS already made a fix, open EMP.ini and set Old GPU Support to 1

tuffee88 commented 2 years ago

hey, no need for any of all that, EMPRESS already made a fix, open EMP.ini and set Old GPU Support to 1

Hi, I'm aware of the setting in the release by EMPRESS, but it just didn't work for me - and I suspect it won't work on NVIDIA Kepler GPUs at all - does it work for you ? Which GPU are you using ?

Konradjustimagine commented 2 years ago

Yes Elden Ring.

tuffee88 commented 2 years ago

Yes Elden Ring.

Thanks, I'll add this to the readme.