PDA

View Full Version : Impostazioni Video nei giochi: Sincronia Verticale


thenormal
01-12-2009, 14:48
Qualcuno potrebbe spiegarmi che cosa è questa sincronia verticale e a cosa serve?

Oggi giocando a call of duty warfare 2, ho notato un errore video, che praticamente mi faceva sfarfallio sul monitor. Ho attivato la sincronia verticale ed il problema si è risolto.....

FunnyDwarf
01-12-2009, 15:53
il fenomeno da te sperimentato si chiama tearing (lacerazione) e puo' verificarsi appunto quando il vsync è disabilitato.

Il vsync, altrimenti detto sicronia verticale, quando è abilitato sicronizza i frames con il refresh* dello schermo. esempio più comune: 60Hz =60fps.
Il tearing di cui sopra si presenta di solito con un'immagine leggermente disgiunta a metà o a un terzo dello schermo: si verifica perché il monitor aggiorna 60 volte al secondo la scena 3d, mentre la scheda video produce diciamo 100 frames al secondo, ok? Bene questo significa che mentre il monitor aggiorna, la scheda video produce il 40% di fotogrammi al secondo: in alcune occasioni (videogiochi con azione frenetica e quindi numerosi input in pochissimo tempo) la percentuale in più (parte di frame successivo) finisce sullo schermo e causa una disuguaglianza con il frame precedente.

Per evitare tutto questo si abilità il vsync. Da solo però non basta per avere in tutti i casi una scena fluida, bisogna abilitare anche il triple buffering. Quest'ultimo è in pratica un posto dove vengono conservati i frame in più prodotti dalla S.V. in attesa di essere visualizzati dal monitor.
Spiegare il triple buffer è un po' più complicato, basti sapere che senza di esso e con il vsync attivo avremo sì 60fps sullo schermo ma se a causa delle richieste del gioco la scheda video li facesse scendere a 59, ci troveremmo con i frame dimezzati e quindi la scena a 30fps. Viceversa con il triple buffer attivo verranno visualizzati correttamente 59fps.

*che è appunto verticale, dall'alto verso il basso


Le cose stanno più o meno così, in qualche punto posso aver omesso qualche cosa di importante e commesso qualche inesattezza ma sto andando a memoria :fagiano:

thenormal
01-12-2009, 16:01
il fenomeno da te sperimentato si chiama tearing (lacerazione) e puo' verificarsi appunto quando il vsync è disabilitato.

Il vsync, altrimenti detto sicronia verticale, quando è abilitato sicronizza i frames con il refresh* dello schermo. esempio più comune: 60Hz =60fps.
Il tearing di cui sopra si presenta di solito con un'immagine leggermente disgiunta a metà o a un terzo dello schermo: si verifica perché il monitor aggiorna 60 volte al secondo la scena 3d, mentre la scheda video produce diciamo 100 frames al secondo, ok? Bene questo significa che mentre il monitor aggiorna, la scheda video produce il 40% di fotogrammi al secondo: in alcune occasioni (videogiochi con azione frenetica e quindi numerosi input in pochissimo tempo) la percentuale in più (parte di frame successivo) finisce sullo schermo e causa una disuguaglianza con il frame precedente.

Per evitare tutto questo si abilità il vsync. Da solo però non basta per avere in tutti i casi una scena fluida, bisogna abilitare anche il triple buffering. Quest'ultimo è in pratica un posto dove vengono conservati i frame in più prodotti dalla S.V. in attesa di essere visualizzati dal monitor.
Spiegare il triple buffer è un po' più complicato, basti sapere che senza di esso e con il vsync attivo avremo sì 60fps sullo schermo ma se a causa delle richieste del gioco la scheda video li facesse scendere a 59, ci troveremmo con i frame dimezzati e quindi la scena a 30fps. Viceversa con il triple buffer attivo verranno visualizzati correttamente 59fps.

*che è appunto verticale, dall'alto verso il basso


Le cose stanno più o meno così, in qualche punto posso aver omesso qualche cosa di importante e commesso qualche inesattezza ma sto andando a memoria :fagiano:


Quindi in poche parolo abilitare il v-synch è sempre meglio? perchè io sapevo il contrario....

FunnyDwarf
01-12-2009, 16:10
Sì è meglio ma dipende spesso da gioco e configurazione. Poi dipende anche dai gusti personali, personalmente se il tearing non è evidente lo lascio spesso disattivato.

thenormal
01-12-2009, 16:13
Sì è meglio ma dipende spesso da gioco e configurazione. Poi dipende anche dai gusti personali, personalmente se il tearing non è evidente lo lascio spesso disattivato.

ma se dici che se viene attivato forza il gioco ad andare agli stessi fotogrammi a cui và lo schermo.... allora dovrebbe sempre essere meglio no?

Grey 7
01-12-2009, 16:15
si, è sempre meglio attivarlo. Poi dipende, in certi giochi il tearing non lo noto (anzi, sembra proprio non esserci) e quindi me ne dimentico pure, ma il 90% dei giochi mi fa questo effetto e quindi lo abilito subito.

Grey 7
01-12-2009, 16:18
Spiegare il triple buffer è un po' più complicato, basti sapere che senza di esso e con il vsync attivo avremo sì 60fps sullo schermo ma se a causa delle richieste del gioco la scheda video li facesse scendere a 59, ci troveremmo con i frame dimezzati e quindi la scena a 30fps. Viceversa con il triple buffer attivo verranno visualizzati correttamente 59fps.


occhio che se non sbaglio il triple buffer che troviamo nelle opzioni della scheda video riguarda quei giochi che utilizzano le open-gl. Se vogliamo avere la stessa funzione ma su giochi basati su librerie directx bisogna utilizzare software di terze parti, tipo d3d ovverrider di rivatuner.

FunnyDwarf
01-12-2009, 16:41
occhio che se non sbaglio il triple buffer che troviamo nelle opzioni della scheda video riguarda quei giochi che utilizzano le open-gl. Se vogliamo avere la stessa funzione ma su giochi basati su librerie directx bisogna utilizzare software di terze parti, tipo d3d ovverrider di rivatuner.

Sì me n'ero dimenticato, grazie :D
ero ormai così abituato a settarlo in ati tray tools da tralasciare completamente la questione (le ultime tre s.video possedute son state ati).

II ARROWS
01-12-2009, 18:18
Questo era, forse, vero una volta, ora non più...

A quanto sembra, puoi avere tutte le combinazioni possibili da 0 alla velocità di refresh.

La cosa è anche logica, se un singolo fotogramma su 59 ad aver bisogno di più di un ciclo di refresh per essere generato, non ha senso rallentare anche tutti gli altri e quindi solo quello occuperà 2/60 di secondo. Gli altri continueranno ad essere generati in meno di 1/60 di secondo e quindi inviati ad ogni momento di refresh.

FunnyDwarf
01-12-2009, 18:23
Questo era, forse, vero una volta, ora non più...


mi puo' stare bene l'ora non più (mi piacerebbe approfondire se possibile) ma il quel forse rapportato al passato come lo motivi?

La cosa è anche logica, se un singolo fotogramma su 59 ad aver bisogno di più di un ciclo di refresh per essere generato, non ha senso rallentare anche tutti gli altri e quindi solo quello occuperà 2/60 di secondo. Gli altri continueranno ad essere generati in meno di 1/60 di secondo e quindi inviati ad ogni momento di refresh.
un buffer è ciò che permette tutto questo.

II ARROWS
01-12-2009, 22:03
Che non ho mai notato questi gradoni che venivano spiegati...
Cioè che se non riuscivi a fare 60 fotogrammi diventavano 30... Ho sempre visto i passaggi intermedi, per quanto me ne possa fregare.

Ma riguardo "3dovverrider" o altre robe del genere non servono a un cavolo, funziona già in modo più avanzato di quanto accada con il buffer triplo che in teoria diminuiva i gradoni, ma sempre gradoni rimanevano. E senza dover toccare nulla.

Grey 7
01-12-2009, 22:37
se un software non serve non viene neanche sviluppato. Se d3doverrider esiste c'è un suo motivo, che poi tu non lo comprenda è un altro discorso :stordita:

II ARROWS
01-12-2009, 23:50
Allora dimmi come mai io non ho bisogno di d3doverrider per ottenere ciò che dovrebbe conferirmi solo lui...

wolverine
02-12-2009, 00:54
Allora dimmi come mai io non ho bisogno di d3doverrider per ottenere ciò che dovrebbe conferirmi solo lui...

Si ma D3DOverrider non lo hanno fatto per far rabbia a qualcuno o giusto perchè il suo creatore non aveva un clacson da fare.. :D

The_Kraker
02-12-2009, 08:22
Quale programma consigliate per settare al meglio le impostazioni grafiche? D3Doverrider o NHancer?

Altra domanda.. Ma se ad esempio con nhancer setto l'AA a 16x in un determinato gioco, cosa devo fare nel gioco? Lasciarlo a 0? Le due impostazioni vanno in conflitto?

FunnyDwarf
02-12-2009, 09:37
Che non ho mai notato questi gradoni che venivano spiegati...
Cioè che se non riuscivi a fare 60 fotogrammi diventavano 30... Ho sempre visto i passaggi intermedi, per quanto me ne possa fregare.

Ah ok, però se tu non l'hai mai notato non significa che il fenomeno non esista o non sia esistito. Per quel che puo' valere ho assistito molte volte al fenomeno del dimezzamento dei fps in passato, anche recentemente su una macchina vecchia di cinque-sei anni (amd barton 2600+ 1gb ram + ati 9600pro) in cui girava un gioco di biliardo online (carom mi pare).

Demonius
02-12-2009, 12:47
Io sono riuscito a risolvere problemi di sincronizzazione in tutti i giochi che mi sono capitati solo modificando il file di cfg del gioco stesso. Infatti alcuni, anche se selezionati dalle opzioni di gioco, continuavano a dare problemi (es medal of honor, call of duty, return to castle wolfenstein). Utilizzando programmi come il pannello di controllo nvidia o direct 3d override ho notato che effettivamente non servono a nulla per queste cose, tuttavia sono molto utili quando si vuole impostare in maniera forzata l'antialiasing e l'anisotropico.
L'unico gioco a cui non riesco a fare la sincronizzazione è Monkey island 3. Le ho provate tutte ma niente. Non è che qualcuno conosce un metodo per risolvere il problema con questo gioco (si un po vecchiotto :D )