BBugs

Four different GameLoop faults are all called a DirectX error

Failed to initialize DirectX, DXGI_ERROR_DEVICE_HUNG and DXGI_ERROR_DEVICE_REMOVED describe three unrelated failures. Reading the message decides the fix; guessing wastes an evening.

DirectX is the layer GameLoop draws through, so almost anything that goes wrong between the emulator and the GPU surfaces with DirectX in the message. That does not make the failures related. Four distinct faults share the label, and the message text is the only thing that separates them.

MessageWhat it actually means
Failed to initialize DirectX 11/12The render device was never created — driver, or a GPU that cannot do what was asked
GetDeviceRemovedReason failed, DXGI_ERROR_DEVICE_HUNGThe GPU stopped responding mid-frame and Windows reset the driver
Your PC does not support DirectX 11A capability report, true or false, coming from the driver
DXGI_ERROR_DEVICE_REMOVEDThe GPU disappeared entirely — driver crash, unstable clocks, or power

Initialisation failures

This one appears before the game does, and the graphics driver is the usual answer. Take the driver from the GPU vendor's own site rather than Windows Update, install, reboot.

If that changes nothing, drop GameLoop's render mode from DirectX 12 to DirectX 11 in its engine settings. DX12 support on pre-2018 hardware is frequently present on paper and unstable in practice, and integrated graphics are the most common casualty. OpenGL is the next fallback below that.

Run dxdiag before assuming hardware failure. The System tab reports the DirectX version in use. If it says 12 while GameLoop insists your PC cannot do 11, the hardware is fine and the driver is not exposing the feature level properly — remove it in Device Manager and install the vendor's current build clean.

Device hung and device removed

These two are worth separating from initialisation because they happen during play, and neither is really a GameLoop bug.

DEVICE_HUNG is Windows' Timeout Detection and Recovery doing its job: the GPU failed to return a frame in time, so the driver was reset out from under the application. Overheating, an unstable overclock, and a half-applied driver update are the three things that reliably cause it. Reset any core and memory clock offsets to stock, watch temperatures under load, and if the driver was updated on top of an old one, remove it cleanly with Display Driver Uninstaller — obtained from its own developer's site — in Safe Mode before reinstalling.

DEVICE_REMOVED is the more severe cousin: the GPU became unavailable altogether. Same first two checks, plus power delivery. Windows Event Viewer, under Windows Logs and System, records driver-level detail against sources named nvlddmkm on NVIDIA and amdkmdap on AMD. Filtering on those around the crash time tells you more than any generic fix list can.

When there is no message at all

GameLoop exiting silently after the loading screen is often the same DirectX failure with the dialog suppressed. Event Viewer's Application log, read at the timestamp of the crash, usually contains the real error code. Before that, two cheap checks: disable fullscreen optimisations in the shortcut's Compatibility tab, and repair the Visual C++ Redistributables from Windows Settings, Apps, Installed apps — shader compilation is one of the first things to fail when a runtime is damaged.

What does not fix it

Reinstalling DirectX 12. There is nothing to reinstall. It is a Windows component, not a redistributable package.

The TdrDelay registry edit. Extending the GPU timeout stops Windows from reporting the hang. The GPU still hung. This hides a thermal or driver problem rather than solving it, and on a genuinely unstable card it converts a recoverable reset into a frozen desktop.

Reinstalling GameLoop for a device-removed error. The emulator is the process that happened to be running when the GPU dropped off the bus. Reinstalling it addresses nothing.

Rolling back a Windows update on reflex. It is a legitimate move when the error started within a day or two of a specific KB and the driver is already current. As a first response to any DirectX message it is a large, disruptive action with a low hit rate.