Avvii un gioco a cui non giocavi da un po' e i primi dieci minuti sono terribili. Ogni arma nuova, ogni effetto nuovo, la prima volta che compare un certo nemico — un intoppo. Poi si assesta, e alla seconda serata il gioco è fluido. Non è stato niente di quello che hai cambiato. È stato il tempo.
Oppure l'altra versione: il gioco andava bene, hai aggiornato il driver video, e tutta la prima ora è di nuovo faticosa.
Sono lo stesso meccanismo, ed è una delle poche cause di scatti che è davvero normale, nel senso che la produce una macchina sana che fa girare software corretto.
Perché quel lavoro deve avvenire sulla tua macchina
Uno shader è un piccolo programma che gira sulla GPU. Chi sviluppa il gioco lo scrive in un linguaggio ad alto livello e lo compila, ma solo in parte — fino a una forma intermedia che descrive che cosa fa il programma, non come dovrebbe farlo un certo chip grafico.
Il codice macchina che la tua GPU esegue davvero non si può produrre in anticipo, perché dipende da due cose che chi sviluppa non ha: l'architettura esatta della tua GPU e la versione esatta del tuo driver. È il compilatore del driver stesso a trasformare la forma intermedia in istruzioni per il silicio della tua macchina, e quella compilazione avviene sulla tua CPU, nel momento in cui il gioco ha bisogno dello shader.
Così la prima volta che una scena ha bisogno di una certa combinazione di shader, stato di rendering e disposizione dei vertici, qualcosa va compilato. Se il gioco lo chiede in mezzo a un frame e aspetta, quel frame è in ritardo. Quel frame in ritardo è l'intoppo che hai sentito.
Il risultato viene scritto in una cache degli shader sul disco. La seconda volta che compare la stessa cosa, il codice compilato viene letto dalla cache invece di essere ricostruito, ed è esattamente per questo che il gioco migliora mentre giochi e che la seconda sessione va bene.
Che cosa ti rimanda al punto di partenza
La cache vale solo per il driver e per l'hardware che l'hanno costruita. Tutto quello che c'è in questo elenco la invalida, del tutto o in parte, e la prima ora di gioco torna faticosa:
- Un aggiornamento del driver video. Compilatore nuovo, risultato nuovo; delle vecchie voci non ci si può fidare, quindi se ne vanno.
- Un aggiornamento del gioco. Shader cambiati sono shader nuovi.
- Una scheda video diversa, compreso il cambiare su quale scheda gira un gioco.
- Uno strumento di pulizia che la cancella. La pulizia disco di Windows elenca la cache degli shader DirectX fra le categorie di file temporanei che può rimuovere, e i programmi di pulizia di terze parti la prendono abitualmente anche loro. Sensore memoria è l'impostazione di Windows che esegue quella pulizia a intervalli programmati, quindi vale la pena controllare quali categorie le hai permesso di eliminare.
- La cache che riempie il suo limite di dimensione e butta fuori le voci più vecchie per fare spazio.
Nessuna di queste cose è un guasto. Sono il prezzo di una cache che è corretta invece che vecchia.
Come capire che è questo quello che hai
La compilazione degli shader ha un'impronta inconfondibile, e non assomiglia a niente altro nell'elenco degli scatti:
- Sfuma. È il segno distintivo. Se i tuoi scatti alla terza ora sono uguali a quelli del terzo minuto, non è questo.
- È legata alla novità. La prima volta che vedi un'arma, un'area, un effetto atmosferico, un certo nemico. Percorrere lo stesso corridoio una seconda volta è pulito.
- Ignora la temperatura e la durata della sessione. I problemi termici peggiorano più giochi a lungo; questo migliora.
- Torna secondo un calendario che sai nominare — dopo un aggiornamento del driver, dopo una patch, dopo una pulizia — invece che a caso.
- La GPU non è la parte occupata. La compilazione è lavoro della CPU. Una GPU che se ne sta ben sotto la piena occupazione durante questi intoppi qui è quello che ci si aspetta, e non è la prova del problema a sé descritto in cali di FPS improvvisi nei giochi.
Se questi cinque punti non descrivono il tuo sintomo, torna all'elenco generale in perché i giochi scattano su Windows 11 — quelle cause da sole non sfumano.
Che cosa farci
Per lo più: lascia che succeda. Ma ai margini ci sono scelte vere.
Non cancellare la cache degli shader come soluzione. È l'unico consiglio di questa pagina che vale la pena leggere due volte. Svuotare la cache viene prescritto di continuo come cura per gli scatti, e quello che fa davvero è garantirti di pagare da zero tutto il costo della compilazione un'altra volta. È un passo di diagnosi legittimo per la corruzione dell'immagine dopo un cambio di driver. È l'opposto di una soluzione per le prestazioni.
Usa il passo di precompilazione del gioco stesso, se ce l'ha, e non saltarlo. Un gioco che passa due minuti su una schermata «compilazione degli shader» prima del menu sta facendo esattamente questo lavoro in anticipo, dove non ti costa altro che attesa.
Lascia la macchina accesa per un po' dopo un aggiornamento del driver. Alcuni driver ricostruiscono gli shader DirectX 12 mentre il sistema è a riposo, proprio perché il runtime ne debba fare di meno dopo. Ma serve solo se la macchina quel tempo a riposo ce l'ha.
Tieni il gioco e la sua cache su un SSD, e fuori da una cartella sincronizzata. Un client cloud sorveglia ogni scrittura, e un gioco scrive la sua cache degli shader di continuo — ogni voce diventa lavoro per un driver di filtro più un caricamento sulla stessa connessione che sta usando la tua partita.
Non misurare dentro quella finestra. Una cattura presa nei primi minuti dopo un aggiornamento del driver misura il compilatore, non il driver. Leggere il benchmark spiega le regole del confronto; è un modo facile di rompere la prima senza accorgersene.
Che cosa ne dice la scansione
La scansione degli scatti controlla se una cache degli shader è stata svuotata di recente, e quando ne trova una dice quello che dice questa pagina: il gioco ricompila la cache cancellata mentre giochi, gli scatti all'inizio della sessione sono normali e sfumano da soli, e non dovresti fare benchmark finché quella finestra non è passata.
Non viene presentata come un guasto da riparare, ed è una scelta. Non c'è niente da riparare — c'è un costo da pagare una volta, e la cosa onesta che uno strumento può fare è dirti che ci sei dentro, così non passi la serata a dare la colpa a un'impostazione.
Dove smette di essere normale
Degli scatti da compilazione che non sfumano mai sono un problema diverso: la cache non viene conservata. Controlla che il disco non sia pieno, che la cache non venga spazzata via da una pulizia pianificata fra una sessione e l'altra, e che la cartella del gioco non stia in un posto che un client cloud o un limite di dimensione continuano a svuotare.
E se l'esecuzione è irregolare dall'inizio alla fine invece che concentrata all'inizio, quello che stai guardando è invece FPS medi alti ma 1% low scarsi, che è un problema di eventi e non di riscaldamento.
Correlati
- Perché i giochi scattano su Windows 11
- Cali di FPS improvvisi nei giochi
- FPS medi alti ma 1% low scarsi
- Leggere il benchmark
Giochi a CS2? Quali opzioni di avvio fanno ancora qualcosa e dove stanno davvero i frame nel menu video: CS2, pochi FPS e scatti: una lista di controllo misurata
Questa pagina ti è stata utile?
Cosa mancava, o cosa non ha funzionato? Le leggiamo tutte, una per una.
Se questa pagina non ha risolto il problema, scrivici — dicci quale articolo hai letto, e sistemiamo l'articolo.