PDA

View Full Version : Che cos'è il vsync?


King of Pain
11-10-2006, 10:06
Come da titolo: che cos'è? il vsync? Mi sembra ovvio che abbia a che fare con la frequenza verticale ma non capisco come funziona....

Ad esempio giocando HL2 ho notato questo difetto: quando ci si muove le linee rette sono delle spezzate.... I muri sono tutti tremolanti e non solo quelli! Se si attiva il vsync il difetto scompare.
Senza vsync ho un frame rate sopra i 220 (con tutto attivo e al massimo, 1280*1024) ma con il "difetto" sopra riscontrato, se attivo il vsync i FPS stanno fissi a 60.... Ma cos'è che "sceglie" i 60 FPS? E perchè a volte da 60 FPS fissi scende a 30 FPS fissi? Soprattutto entrando negli edifici. Gli FPS li misuro con Fraps.
Ieri ho fatto mille prove, qualsiasi impostazione di dettagli e qualità texture, finchè non disabilito il vsync rimane fisso a 60 FPS...

E' normale? Il difetto non si presentava con lo stesso monitor ma Athlon XP 2500+ Radeon 9600 256

Grazie

fukka75
11-10-2006, 10:22
Il problema del "tearing" (le linee spezzettate di cui parli) è comune ha tutti i VG, indipendentemanete dal monitor che si usa, ed è più evidente negli FPS, dove i movimenti veloci del mouse amplificano la cosa. Il v-sync serve ad eliminare il problema, ma quando lo si attiva il frame rate massimo che ottieni è pari alla frequenza di refresh del monitor, quindi 60fps per 60Hz; però l'attivazione del vsync ha anche un altro "difetto", ben più grave: quando il frame rate scende al di sotto dei 60fps, automaticamente viene segato a 30fps, se scende sotto i 30fps viene segato a 20fps, e così via (cioè a sottomultipli dela frequenza di refresh). Per evitare questo adeguamento, devi attivare il triple buffering dal pannello dei driver, con cui se ad esempio vai a 45fps, il frame rate viene lasciato a 45, anziché essere segato a 30 (cmnq il frame rate massimo rimane sempre 60fps): per le schede nVidia il tb funziona solo per i giochi OpenGL (DooM3, Quake4, Prey, Quake3 e derivati), per le schede ATI non lo so.

Toh, fatti una cultura
http://209.85.129.104/search?q=cache:SmYLka6dFeIJ:www.hwinit.it:8080/guide/vsync/+DXTcontrol&hl=it&gl=it&ct=clnk&cd=4&lr=lang_it

King of Pain
11-10-2006, 11:01
Grazie infinite, mi sei stato estremamente utile. Non avevo idea di tutte queste cose... è la prima volta che ho un pc in grado di mettere in crisi il monitor! :sofico:

Ma quindi se come refresh del monitor imposto 75 hz (il massimo supportato dal mio monitor, un Acer AL1951As (http://www.acer.it/acereuro/page4.do?sp=page4&dau22.oid=10497&UserCtxParam=0&GroupCtxParam=0&dctx1=11&CountryISOCtxParam=IT&LanguageISOCtxParam=it&ctx3=5&ctx4=Italia&crc=2409778682) ) gli FPS massimi salgono a 75?

Ora studio bene la guida! :)

alexlionheart
11-10-2006, 11:03
che voi sappiate c'e' un modo per impostare i fotogrammi ad esempio a 30 al secondo evitando di sALIRE A 60 anche se la scheda lo permette?

fukka75
11-10-2006, 11:10
Ma quindi se come refresh del monitor imposto 75 hz (il massimo supportato dal mio monitor, gli FPS massimi salgono a 75?

Sì: col v-sync attivo il massimo frame rate è pari al valore del refresh (60Hz -> 60fps, 75Hz -> 75fps, 85Hz -> 85fps, 100Hz -> 100fps, e così via)
che voi sappiate c'e' un modo per impostare i fotogrammi ad esempio a 30 al secondo evitando di sALIRE A 60 anche se la scheda lo permette? E perché mai dovresti volerlo?

Luca1980
11-10-2006, 14:43
Con le Ati si può attivare il triple buffering in D3D tramite Ati Tray Tools.

alexlionheart
11-10-2006, 19:34
E perché mai dovresti volerlo?
perche' ti faccio un esempio.
warhammer 40000 mi oscilla in continuazione tra 30 e 60 fotogrammi a seconda di quante unita' ci sono su schermo
ma in questo modo si avverte chiaramente la differenza e sembra che il gioco scatti
se c'e' un modo per mantenerlo a 30 fissi invece da l' impressione di fluidita'
un po come la battaglia della terra di mezzo che e' fissato a 30 fotogrammi.per un gioco di strategia 30 fotogrammi sono + che sufficenti, non sono dei fps

fukka75
11-10-2006, 21:20
Togli il v-sync, oppure usa il triple buffering (se i driver lo consentono, altrimenti usa l'utility DXTweaker, che abilita il tb anche per i giochi Direct3D)

King of Pain
11-10-2006, 22:34
Con le Ati si può attivare il triple buffering in D3D tramite Ati Tray Tools.
Ho installato ma non trovo dove abilitare l'opzione... mi daresti una dritta?

Per quanto riguarda invece DXTweker, non so da dove scaricare i plugin... sul sito trovo solo il programma ma se lo faccio partire non ho nessuna funzione abilitabile....

Grazie

oro18k
11-10-2006, 22:34
Con le Ati si può attivare il triple buffering in D3D tramite Ati Tray Tools.

scusa, ma da dove lo si attiva?? io lo vedo solo nelle OpenGL

ciao!

ATi7500
11-10-2006, 22:47
scusa, ma da dove lo si attiva?? io lo vedo solo nelle OpenGL

ciao!
devi crearti un profilo per il gioco in questione dal menu Game Profiles, e tra le opzioni di quel menu c'è anche il Triple buffering

bYeZ!

oro18k
11-10-2006, 22:53
devi crearti un profilo per il gioco in questione dal menu Game Profiles, e tra le opzioni di quel menu c'è anche il Triple buffering

bYeZ!


grazie mille!

King of Pain
12-10-2006, 09:32
Esatto, l'ho scoperto anche io poco dopo aver postato. Peccato, preferivo un'opzione selezionabile piuttosto che creare un profilo per ogni gioco.... Ma c'è da dire che funziona alla grande! :D