Durante lo sviluppo di progetti in Unity può capitare di incorrere nell’errore “Failed to present D3D11 swapchain due to device reset/removed” che di punto in bianco blocca l’editor e lo chiude dopo pochi secondi (spesso è anche difficile leggere l’errore). Questo tipo di inconveniente sembra legato al sovraccarico del lavoro della GPU che chiede quindi un reset.
Di seguito delle possibili soluzioni al problema, dalla più funzionale (in base a ricerche in rete) fino alla più banale:
- Installare driver aggiornati della scheda video (il problema sembra accadere soprattutto per gpu NVIDIA)
- Eliminare la cartella \Library del progetto (il riavvio del progetto sarà più laborioso in quanto Unity dovrà riscrivere la cache del componenti)
- Impostare la scheda grafica di default di Unity in Windows (attraverso il menu Settings > System > Display > Graphic Settings > Unity > Opzioni) impostando quella definita in “High Performance”
- Escludere il processo Unity.exe dal proprio antivirus
- Verficare che il file D3Dcompiler_47.dll file sia presente nella cartella “C:\Program Files\Unity\Hub\Editor\[Unity version]\Editor\Data\Tools” oppure “C:\Program Files\Unity\Hub\Editor\[Unity version]\Editor”
- Impostare i parametri TDRDelay e TDRdiDelay nel registro (qui una guida utile)
- Impostare nel QUality Setting dell’editor l’opzione LOW e riavviare il progetto
- Disabilitare la scheda grafica integrata