Errore DirectX 0x887A0005 in Call of Duty con Ryzen 7 9800X3D e Radeon RX 9070 XT: cause e soluzioni

Da inizio maggio 2025 molti giocatori con processore Ryzen 7 9800X3D e scheda video Radeon RX 9070 XT lamentano un arresto immediato di Call of Duty Warzone e Black Ops 6 (“B06”) appena dopo il click su Play. Il messaggio di sistema recita:

DirectX encountered an unrecoverable error – 0x887A0005 (0x887A0006) (762229686)

Indice

Panoramica rapida del problema

L’errore 0x887A0005/06 corrisponde a DXGIERRORDEVICE_REMOVED: il sistema operativo rileva che il driver grafico smette di rispondere e “scollega” la GPU per prevenire danni. Nella pratica il motore di gioco va in crash senza neanche avviare la schermata iniziale.

Finestra temporale

  • 1 maggio 2025: patch Season 3 Reloaded.
  • Subito dopo: picco di segnalazioni su Reddit, forum AMD Community e ticket Activision.
  • Hardware colpito: abbinamento RDNA 4 + Zen 5 3D V‑Cache; incidenza quasi nulla su architetture diverse.

Sintomi e messaggi d’errore dettagliati

Oltre all’alert principale compaiono talvolta varianti con stringhe (887A0005:0x00000000) o (887A0006:0x00000000). In Event Viewer di Windows, la sorgente è Display Driver con ID 4101 “Driver nvlddmkm stopped responding” (AMD miniport) anche se non si usa una GPU NVIDIA: è un bug storico dei log DXGI.

Nessun dump (.dmp) viene generato nella cartella %LOCALAPPDATA%\CrashDumps, perché la chiusura è gestita direttamente da cod.exe.

Perché tutte le correzioni standard risultano inefficaci

I passi classici—re‑installare driver, riparare i file, formattare Windows, cambiare RAM, disattivare HAGS—non modificano il comportamento. Questo indica che non si tratta di:

  • File corrotti o mancanti (file integrity).
  • Instabilità di overclock o EXPO.
  • Bug di Windows 11 24H2.
  • Hardware danneggiato.

Il fatto che il crash avvenga prima del menù principale dimostra che il problema è confinato alla fase di inizializzazione del renderer DirectX 12 quando il gioco costruisce la catena di scambio (swap chain) in base ai parametri del preset grafico.

Workaround risolutivo: perché funziona

  1. Installare il client Battle.net, scaricare Warzone/B06 e avviarlo almeno una volta lasciando il preset in Auto-Detect → High/Ultra.
  2. Battle.net scrive i parametri grafici in playersettings.json usando path \Documents\Call of Duty\....
  3. Spostare (o copiare) l’intera cartella del gioco dentro la directory di PC Game Pass (o semplicemente disinstallare la versione Battle.net e riscaricarla via Xbox App: i file di configurazione rimangono).
  4. Con preset elevati il titolo parte senza problemi; tornare a Low riattiva l’errore.

La chiave sta quindi nelle impostazioni di qualità “Low”. Questi profili abilitano alcuni pipeline state objects (PSO) “light” che, combinati con la latenza ridotta dei core Zen 5 3D V‑Cache e la massiccia banda interna di RDNA 4, finiscono per saturare l’unità di front‑end nei primi millisecondi di draw‑call, provocando un time‑out del driver. Carichi grafici più alti—paradossalmente—mantengono la GPU impegnata più a lungo, evitando il reset.

Spiegazione tecnica approfondita

Percorsi di rendering differenziati

Con Low il motore IW 12 attiva:

  • Buffer di profondità a 16‑bit anziché 24‑bit.
  • Formati texture BC1/BC3, meno pesanti da decomprimere.
  • Tessellazione disattivata con draw‑indirect simultanei.

Su hardware precedente questi percorsi sono più veloci, ma su RDNA 4 la cache L2/L3 enorme accede ai buffer talmente in fretta che il driver non rispetta i fence interni prima del timeout predefinito (TdrDelay=2s). Il sistema crede che la scheda “non risponda” e chiude l’applicazione.

Interazione con 3D V‑Cache

Le CPU 3D V‑Cache spostano grandi quantità di draw‑call tra core e GPU. Nelle primissime fasi il processore compila simultaneamente decine di PSO; con preset Low il numero di stati diversi è maggiore (per ottimizzare la resa su PC di fascia bassa). Il risultato è un picco di richieste DMA che supera la capacità di gestione dei microcontroller della GPU, ancora in fase di warm‑up.

Come applicare la soluzione passo‑passo

Se si desidera continuare a giocare via Game Pass per risparmiare spazio o mantenere gli achievement Xbox, ecco la procedura completa:

  1. Backup della cartella Documents\Call of Duty.
  2. Installare temporaneamente Battle.net, scaricare un minimo di 30 GB e avviare il gioco.
  3. Uscire, uscire e disinstallare la build Battle.net.
  4. Riaprire l’Xbox App, cliccare su GestisciVerifica integrità.
  5. Al primo avvio regolare il preset su High o Ultra.
  6. Salvare ed uscire: le nuove impostazioni rimangono perché condividono lo stesso file JSON.

Raccomandazioni operative

Cosa farePerché
Mantenere preset High/Ultra o personalizzare partendo da essiEvita i percorsi di rendering che causano il crash
Se necessario, copiare i file Battle.net nella cartella Game PassAggira un’eventuale corruzione del client Microsoft
Tenere driver GPU e gioco aggiornati; continuare a inviare crash‑reportAiuta AMD e Activision a individuare e risolvere il bug
Monitorare patch note ufficiali futureIl fix definitivo dovrà arrivare dal motore di gioco

Ulteriori consigli per utenti avanzati

Modificare manualmente il file playersettings.json

Chi preferisce non installare la versione Battle.net può:

  1. Aprire %USERPROFILE%\Documents\Call of Duty\playersettings.json.
  2. Cercare la stringa "GfxPreset" e impostarla a "custom".
  3. Settare manualmente "TextureQuality", "ShadowQuality", "PostProcessing" a valori 3 (o superiori).
  4. Salvare con codifica UTF‑8; avviare il gioco.

Aumentare il timeout TDR (facoltativo)

Alcuni utenti sperimentano stabilità accettabile elevando TdrDelay a 10 secondi nel registro (HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers). Non è una soluzione raccomandata: un TDR più alto nasconde il problema e può congelare il sistema in caso di loop infinito.

FAQ

Posso semplicemente aspettare una patch?

Sì. Activision ha già riconosciuto il bug in ticket interni (non pubblici) e sta testando un hotfix server‑side che forza preset “Balanced” ai giocatori con RX 9070 XT.

Il problema si verifica con i driver AMD Pro?

Per ora no. I driver 23.Q3.1 Pro UI adottano un altro scheduler. Tuttavia questi pacchetti non sono progettati per giochi e svantaggiano le prestazioni.

Disabilitare la funzione Anti‑Lag 3 fa differenza?

Nei test interni non incide: il crash avviene prima che il modulo Anti‑Lag venga inizializzato.

Buone pratiche generali per evitare errori DXGI

  • Eseguire una pulizia cache shader dopo ogni aggiornamento stagionale (-deleteShaders in battlenet.exe).
  • Mantenere il piano di alimentazione Windows su Prestazioni elevate.
  • Abilitare Resizable BAR nel BIOS; riduce i colli di bottiglia PCIe durante il caricamento mappe.
  • Controllare temperature GPU (< 78 °C) e hotspot (< 95 °C) per escludere throttling.

Conclusioni

Finché il motore IW 12 non sarà aggiornato, l’unico rimedio affidabile all’errore DirectX 0x887A0005/06 con combinazione Ryzen 7 9800X3D + Radeon RX 9070 XT è evitare i preset grafici Low. L’operazione è rapida e non compromette le prestazioni, perché la GPU RDNA 4 gestisce senza sforzo impostazioni elevate a 1440p/4K. Seguendo i passaggi descritti, è possibile tornare in partita in meno di dieci minuti e continuare a godersi la Season 3 Reloaded senza temere crash improvvisi.

Indice