Introducción técnica al error DXGI_ERROR_DEVICE_HUNG y LowLevelFatalError
El fallo identificado como DXGI_ERROR_DEVICE_HUNG (frecuentemente acompañado de una ventana emergente que cita LowLevelFatalError o D3D12 Device Lost) es una de las interrupciones más complejas e invalidantes en el entorno de juegos en PC. Este problema se manifiesta principalmente en títulos desarrollados con los motores gráficos Unreal Engine 4 y Unreal Engine 5, ejecutados bajo las API de renderizado DirectX 12 o Vulkan.
A nivel técnico, el error indica que la interfaz gráfica de DirectX (DXGI) ha enviado una instrucción a la tarjeta de video (GPU) y esta no ha devuelto una respuesta dentro del tiempo límite asignado por el sistema operativo. Como consecuencia directa, el controlador gráfico colapsa, la API declara el dispositivo de renderizado como colgado o perdido, y la aplicación finaliza abruptamente para evitar daños físicos o corrupción de memoria en el sistema operativo.
Análisis profundo de las causas fundamentales del colapso gráfico
Para abordar la resolución de este fallo de manera efectiva, es indispensable desglosar los factores térmicos, lógicos y de hardware que desencadenan la desincronización entre la GPU y el motor de renderizado:
- Límite TDR (Timeout Detection and Recovery) agresivo: Windows implementa una característica de seguridad llamada TDR que reinicia el controlador si la GPU tarda más de 2 segundos en procesar un fotograma. Títulos modernos con carga pesada de ray tracing o compilación de shaders en tiempo real sobrepasan habitualmente este margen.
- Corrupción de la memoria caché de Shaders: Cuando los archivos guardados en la caché de sombreadores de DirectX o NVIDIA/AMD se corrompen tras un parche o actualización de controladores, la GPU entra en un bucle infinito de procesamiento.
- Inestabilidad por overclock de fábrica (Factory OC): Muchas tarjetas gráficas ensambladas vienen con frecuencias de reloj elevadas que, aunque estables en benchmarks sintéticos, generan picos de voltaje inestables ante las fluctuaciones de carga dinámica de Unreal Engine.
- Incompatibilidades de Hardware-Accelerated GPU Scheduling (HAGS): La función de programación de GPU acelerada por hardware en Windows 10 y 11 puede crear colisiones de memoria en el espacio de direcciones de VRAM.
- Conflictos con software de superposición (Overlays): Aplicaciones como Discord, RivaTuner Statistics Server (RTSS), GeForce Experience o MSI Afterburner interfieren directamente con la capa de presentación de DXGI.
Método 1: Modificación avanzada de la tolerancia TDR mediante el Registro de Windows
Ampliar el tiempo que el kernel de Windows concede a la tarjeta gráfica para responder es el método definitivo para neutralizar el desbordamiento por latencia en el renderizado. Esto no reduce la velocidad de la GPU, simplemente evita que el sistema operativo 'asuma' erróneamente que la tarjeta ha quedado inservible.
Paso a paso para ajustar TdrDelay y TdrDdiDelay:
- Presiona las teclas
Windows + R, escriberegedity presionaEnterpara abrir el Editor del Registro. - Navega hasta la siguiente ruta exacta del registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers
- Haz clic derecho en un área vacía del panel derecho, selecciona Nuevo > Valor de DWORD (32 bits) (incluso si tu sistema es de 64 bits).
- Nombra al nuevo valor como
TdrDelay. Haz doble clic sobre él, selecciona la base Decimal y establece su valor en10(representa 10 segundos de tolerancia). - Crea un segundo valor DWORD (32 bits) llamado
TdrDdiDelay, establece la base en Decimal y dale un valor de10.
Si prefieres ejecutar este cambio mediante script mediante la consola de comandos con privilegios de administrador, puedes utilizar el siguiente código:
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers" /v TdrDelay /t REG_DWORD /d 10 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers" /v TdrDdiDelay /t REG_DWORD /d 10 /fReinicia el equipo para que el Kernel de Windows cargue las nuevas directivas de tolerancia gráfica.
Método 2: Purgado integral de DirectX Shader Cache y reinstalación profunda de drivers mediante DDU
Si la caché de sombreadores integrada en el sistema contiene instrucciones mal compiladas, el motor enviará solicitudes defectuosas a la VRAM, provocando el error DXGI_ERROR_DEVICE_HUNG de forma recurrente.
Eliminación de datos almacenados e instalación en modo seguro:
- Abre la herramienta Limpieza de disco de Windows, selecciona la unidad principal (C:) y marca exclusivamente la casilla Caché de sombreadores de DirectX. Haz clic en Aceptar.
- Elimina manualmente la caché de sombreadores de NVIDIA o AMD navegando a la siguiente ruta en el Explorador de archivos:
%LOCALAPPDATA%\NVIDIA\DXCache (o la carpeta equivalente para la arquitectura de AMD).
- Borra todos los archivos contenidos dentro del directorio. Si algún archivo está bloqueado, cierra los servicios del juego desde el Administrador de tareas.
- Descarga la herramienta Display Driver Uninstaller (DDU) y la última versión del controlador gráfico desde la web oficial del fabricante.
- Inicia Windows en Modo Seguro, ejecuta DDU, selecciona el tipo de dispositivo GPU y haz clic en Limpiar y reiniciar.
- Una vez reiniciado el sistema en modo normal, instala el controlador oficial seleccionando la opción Instalación limpia.
Método 3: Ajuste de parámetros del motor gráfico y forzado del modo de compatibilidad API
Cuando el pipeline de DirectX 12 falla en la gestión de llamadas paralelas (Multi-engine async compute), es posible modificar los parámetros globales de renderizado forzando el juego a ejecutarse mediante instrucciones estables o desactivando funciones problemáticas como el Ray Tracing antes del arranque.
Configuración de comandos de inicio:
En plataformas como Steam o Epic Games Launcher, accede a las propiedades del juego e introduce en el campo de parámetros de lanzamiento cualquiera de las siguientes opciones:
-dx11 -d3d11 -force-d3d11Si el juego requiere estrictamente DirectX 12, puedes desactivar el trazado de rayos directamente en el archivo de configuración Engine.ini del motor. Accede a:
%LOCALAPPDATA%\NombreDelJuego\Saved\Config\WindowsNoEditor\Engine.ini
Añade al final del archivo las siguientes líneas de código técnico para forzar el comportamiento del adaptador:
[SystemSettings]
r.RayTracing=0
r.D3D12.UseAllowTiling=0
r.GraphicsAdapter=-1
r.DX11.NVAftermath=0Método 4: Desactivación de HAGS y estabilización de frecuencias GPU (Downclock de seguridad)
Si las soluciones de software no corrigen el problema por completo, la inestabilidad se origina en la entrega de energía de la tarjeta gráfica o en picos momentáneos de frecuencia (Voltage Spikes).
Procedimiento de ajuste físico y de sistema:
- Desactivar HAGS en Windows: Ve a Configuración > Sistema > Pantalla > Configuración de gráficos. Desactiva la casilla Programación de GPU acelerada por hardware y reinicia el equipo.
- Underclock preventivo con MSI Afterburner: Instala la utilidad MSI Afterburner. Reduce el Core Clock (MHz) en
-50 MHza-100 MHzy el Memory Clock (MHz) en-100 MHz. Aplica los cambios.
Esta ligera reducción de frecuencia elimina los micro-colapsos por falta de voltaje en componentes con overclocking de fábrica, neutralizando de raíz el aviso DXGI_ERROR_DEVICE_HUNG y devolviendo el control absoluto al jugador sin pérdida perceptible de rendimiento.