Why no maidens?!
Elden Ring doesn't handle errors very well, so unfortunately it can be difficult to determine why it's crashing at the intro white screen. However, if you know that your computer is old or you know your exact GPU model and that it falls below ER's requirements, this is worth a shot.
NOTE: Following this guide requires disabling Easy Anti-Cheat, which in turn disables all multiplayer functionality.
How get maidens?!
TLDR - Download the release from this Git repo[github.com] and slap d3d12.dll in the same folder as eldenring.exe and start_protected_game.exe. If for whatever reason there's already a d3d12.dll in that folder, then rename that to d3d12_original.dll first. Then, rename start_protected_game.exe to something else (like start_protected_game_original.exe), and eldenring.exe to start_protected_game.exe.
More detailed explanation is below.
If your GPU doesn't support DirectX 12, you'll get the white screen of death. This is because Elden Ring relies on d3d12.dll, which is a library file that throws an error if the GPU doesn't respond correctly. Elden Ring will look for d3d12.dll first in the same folder as eldenring.exe, then in C:\Windows\System32. Funnily though, ER doesn't seem to really need DirectX 12 to work. So instead, we can make it load a "fake" d3d12.dll which will actually just forward all of the things it asks for to the system's version of DirectX 12, but will act as though Elden Ring is a DirectX 11 game asking for DirectX 11 functions.
This doesn't work perfectly and results in pretty high resource usage plus some graphical issues, but if you're running hardware this old you probably don't care about performance anyway. :P I've found it very much playable on a GTX 770 and 6th gen Intel Core i5.
Tuffee88's Git recommends placing a copy of the system's d3d12.dll in the Elden Ring game folder as d3d12_original.dll, but this isn't really necessary because the proxy DLL file we're using will default to using the system's d3d12.dll without us touching it. Other guides may recommend placing custom DLL files in System32. I strongly advise against this though, since this can make it much harder to resolve DLL conflicts in the future, and there's no reason to modify system files if programs will default to the libraries you give them anyway.
This guide relies on using code pre-built from source. You can compile it yourself if you'd like and all the source code is available, but do note that using custom .exe and .dll files is by far the most common source of viruses.
The majority of this fix really is just as easy as extracting d3d12.dll from 0x_release_binaries_release.zip to (Library)\steamapps\common\ELDEN RING\ Game, then renaming the executables as highlighted in the TLDR above.
As a neat little bonus, if this doesn't work you can supply an additional library called vkd3d from this repository[github.com] . This is used by Proton, Steam's compatibility layer on Linux and Steam Deck, and it translates DirectX 12 calls to Vulkan, which can have a chance of helping with compatibility on Windows.
This repo provides pre-compiled binaries as well but they're in a tar archive. Personally, I've extracted it using MSYS2 for Windows and the tar -xf command. Then, get the d3d12.dll file from the x64 directory for x86-64 bit systems. When adding this file to Elden Ring's directory, it needs to be renamed to d3d12_original.dll EXACTLY, as the "fake" d3d12.dll file we've supplied looks for another library with that name before defaulting to the system's version.
I hope this guide was helpful, but even if it was you should probably get a new computer if you can lol
Reddit post comment
Tuffee88's Git Repo[github.com]
HansKristian's Git Repo[github.com]
More ELDEN RING guilds
- All Guilds
- Conseguir la Mscara Albinurica
- how to enjoy Elden Ring.
- Guide : Tous les PNJ et qutes Elden Ring
- How to git gud
- COUNTERS for BLOODHOUND STEP and RoB
- Elden Ring Calculators
- Quick Level Up guide (attributes and weapon)
- En verimli Run farm
- The Definitive Guts (Berserker Armor) Mod Pack