Newsgroup: it.comp.giochi.action
Titolo: Domanda tecnica

Forse sarà stupida, ma ho sentito le risposte più disparate:
ho un gioco che mi fa di media 120 fps e il monitor alla massima
risoluzione ha un refresh di 75hz; è giusto bloccare gli fps del gioco a
75? Se fa più di 75 fps non è un lavoro inutile che fa la scheda video?
Inoltre: ho bloccato gli fps di CoD4 a 75, ma quando gioco mi da un range
da 80 a 50 fps, di media sta sui 77. Da cosa è dovuto?

 da 80 a 50 fps, di media sta sui 77. Da cosa è dovuto?
Ovviamente è perché li hai bloccati tu  :-)  i 77 che ti rileva sono il 
limite di refresh del monitor,  le utility di rilevazione cmq non sono 
precisissime, talvolta possono rilevare qualche frame in più o in meno, 
quindi è tutto a posto. 

 risultato complessivo (in genere negli lcd è molto evidente).
A me sembra molto piu' evidente nei CRT, anche perché con gli LCD non 
sarebbe proprio corretto parlare di refresh. In ogni caso gli 
'sfarfallii' si notano anche sugli LCD, ma IMHO molto meno che sui CRT, 
il che è normale, visto il diverso comportamento.
Copio un testo che puo' riassumere un po' di cose.
"Much of the discussion of refresh rate does not apply to the liquid 
crystal portion of an LCD monitor. This is because while a CRT monitor 
uses the same mechanism for both illumination and imaging, LCDs employ a 
separate backlight to illuminate the image being portrayed by the LCD's 
liquid crystal shutters. The shutters themselves do not have a "refresh 
rate" as such due to the fact that they always stay at whatever opacity 
they were last instructed to continuously, and do not become more or 
less transparent until instructed to produce a different opacity.
The closest thing liquid crystal shutters have to a refresh rate is 
their response time, while nearly all LCD backlights (most notably 
fluorescent cathodes, which commonly operate at ~200Hz) have a separate 
figure known as flicker, which describes how many times a second the 
backlight pulses on and off."

 normale, visto il diverso comportamento.
Non si tratta di sfarfallii, non c'entra nulla. Gli sfarfallii si hanno con 
un basso refresh del monitor. Quando invece i frames dell'immagine superano 
di molto quelli relativi al refresh, si ha una sorta di "difetto" 
dell'immagine, la quale non è perfettamente sicronizzata.

 "difetto" dell'immagine, la quale non è perfettamente sicronizzata.
Lo so...io li chiamo sfarfallii, ma tu con i tuoi sfarfalli a basso 
refresh che intendi scusa?! Anche in ambito desktop?
Con i CRT il difetto è molto piu' grande che con un LCD (parlo di giochi 
che superano il refresh con il framerate), perché il pennello 
elettronico disegnava ogni immagine dall'alto verso il basso facendo una 
linea orizzontale per volta. Il difetto dell'immagine che dici tu nei 
giochi io lo vedo chiaramente come una linea orizzontale che percorre lo 
schermo, vista la non-sincronia con le immagini da disegnare.
Con gli LCD non si dovrebbe parlare di refresh, inteso come si intendeva 
il refresh su un CRT. AFAIK, il refresh sugli LCD (parlando sempre di 
computer) è solamente il refresh rate che la scheda video manda al 
monitor. Il monitor in sè non ha il refresh rate come un CRT disegnando 
l'immagine TOT volte al secondo, il ruolo principale ce l'ha il tempo di 
risposta dei pixel (colorato - spento - colorato).
Ovvio però che se il framerate del gioco supera il refresh imposto dalla 
scheda video, si vedono un po' di errori anche con l'LCD.

 da 80 a 50 fps, di media sta sui 77. Da cosa è dovuto?
Dalle situazioni di carico elaborativo sulla GPU... le quali possono 
cambiare molto a seconda della scena da renderizzare.

 dell'immagine, la quale non è perfettamente sicronizzata.
Dicesi "tearing" dell'immagine. Effetto evitabile con v-sync, che
sincronizza i fotogrammi generati dalla VGA con la frequenza di refresh
del monitor.
Il v-sync, però, ti sega i frame eccedenti al refresh del monitor in caso
di framerate superiore al refresh (se la VGA macina 100 fps e il monitor
va a 60 Hz, a video verranno visualizzati solo 60 fps), mentre te li sega
a un sottomultiplo del refresh del monitor in caso di framerate inferiore
al refresh (se la VGA macina 50 fps e il monitor va a 60 Hz, a video
verranno visualizzati solo 30 fps).
Per limitare quest'ultimo effetto è necessario abilitare lo z-buffer.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 verranno visualizzati solo 30 fps).
Ma questo solo su alcuni rari giochi però, mi pare succedesse con l'ultimo 
engine della Id.
Ad esempio io tengo il V-sync sempre attivo, e su Dirt (per dirne uno ma 
potrei fare decine di esempi) ho una media stabile che oscilla tra i 40-50 
fps, non è bloccato a 30 o a un valore determinato. Lo stesso vale per tutti 
gli altri giochi tranne rari casi come detto sopra. 

 gli altri giochi tranne rari casi come detto sopra.
Sě, perché i nuovi engine dovrebbero gestire automaticamente lo z-buffer,
che in altri casi andava invece forzato via driver.
