Just after dealing with DirectX updates a while back on my Windows 10, everything worked the way it should be, but upon launching games ran by Unity, none of the games worked…
I tried compatibility mode, DDU in safe mode (Display Driver Uninstaller), deleting all Nvidia related folder and registry files, installing the DirectX 9 from Microsoft, and I failed every one of them.
I started wondering if this has to do with the engine and the GPU itself, so I removed all Nvidia related things and the game was able to launch, of course, without the GPU, it was unplayable…
Researching deeper into this, I checked Event Viewer and the game folder analysis, a file named “output_log.txt” contains some critical information about this error, here’s the code:
Initialize engine version: 2017.1.2p4 (d597d0924185)
GfxDevice: creating device client; threaded=1
d3d11: failed to create device and context (887a0004).
GfxDevice: creating device client; threaded=1
d3d: no support for this device type (accelerated/ref)
GfxDevice: creating device client; threaded=1
d3d11: failed to create device and context (887a0004).
GfxDevice: creating device client; threaded=1
d3d: no support for this device type (accelerated/ref)
Failed to initialize Direct3D.
Make sure you have at least DirectX 9.0c installed, have drivers for your
graphics card and have not disabled 3D acceleration
in display settings.
InitializeEngineGraphics failed
PlayerInitEngineGraphics: InitializeEngineGraphics failed
Since I’m an outsider, I don’t really know what to expect, I tried replacing d3d11.dll in system32 downloaded off the internet (checked the DLL version, the original file was few megabytes off from the one I downloaded from the web) and still didn’t work…
Here’s some background information about my computer (Don’t think it has anything to do with my hardware tho):
CPU: AMD - Ryzen 5 2600 3.4GHz 6-Core Processor
Motherboard: ASRock - X470 Master SLI/AC ATX AM4 Motherboard
Memory: G.Skill - Sniper X 16GB (2 x 8GB) DDR4-3600 Memory
Storage: Samsung - 860 Evo 500GB 2.5" Solid State Drive
Video Card: EVGA - GeForce GTX 1060 6GB 6GB SC GAMING Video Card
Case: Phanteks - Eclipse P350X (Black) ATX Mid Tower Case
Power Supply: Corsair - RMx (2018) 550W 80+ Gold Certified Fully-Modular ATX Power Supply
And the game I tested on (where the log files come from) is called “Getting Over It with Bennett Foddy”
Downloading dll’s from the internet is rarely a good idea. Same for deleting driver files manually. Did you try (re)installing the nvidia graphics drivers from their website? You say you uninstalled it all / deleted the files, not whether you have reinstalled it afterwards.
Yes, DLL method was the last thing I tried.
I’ve tried uninstalling the Nvidia drives and reinstalling with the official installer hosted on their site, still up to no good.
887a0004 means DXGI_ERROR_UNSUPPORTED. It’s very likely the driver isn’t functioning properly. If you changed system DLLs off the internet and didn’t make a backup, I highly recommend reinstalling windows from scratch, as your system might be compromised. And don’t enter any passwords anywhere before you do that.
Scanning files with anti virus isn’t a foolproof way of making sure that files are legitimate. I can easily write a program that will not get detected by anything but will steal your data.
Anyway, that particular DLL is tied to a particular OS version you are on. If you change it, all sorts of hell will unleash. Windows is not designed in a way that lets you piece together incompatible system components. I stand by my recommendation to reinstall windows at this point.
Just a new update, I did the same thing, I disabled the “NVIDIA GeForce GTX 1060 6GB” driver and the game’s graphics ran as 32 bit and used the CPU for graphics calculation, here’s the logs (Although I think it’s unnecessary)
And I added some information from the DirectX Diagnostic Tool incase you need it
Virus scanners can’t understand the intent behind code. For instance, software that listens for keypresses could be doing it for many, many legitimate and beneficial reasons. Or it could be trying to steal your passwords. A piece of software can’t reliably tell the difference.
So, in simplified terms, virus scanners specifically look at whether or not a piece of code attempts to spread itself. So if you manually install a piece of malicious code that doesn’t try to infect things itself then your virus scanner can’t do anything about it.
Well, I have kept a back up of the original DLL file, ran the game and didn’t work, then replaced the original file back…
However, if “it” isn’t in system32 anymore to be ran by the game engine or the system, most malicious programs will try to “spread” itself to startup, which is registry/user startup/system startup for long term uses, and that’ll surely trigger some kind of mechanism within the antivirus itself.
I’m just looking for a way to solve this problem, I appreciate your concern about this, but I can’t give less of my time and effort to defend my self from a potential malicious program, sorry if I sound rude.
At this point you should seek advice ina more specialized area of the internet. Theses forums are game development and use of unity. I would suggest a local computer company or service to assist you with your computer problems. Good luck.
Closing.