simtiers
Messages postés207Date d'inscriptionjeudi 3 avril 2003StatutMembreDernière intervention 2 novembre 2006
-
21 nov. 2004 à 15:34
Arnaud16022
Messages postés1329Date d'inscriptionvendredi 15 août 2003StatutMembreDernière intervention16 juin 2010
-
23 nov. 2004 à 20:09
Salut !
J'aimerais savoir comment on fait pour changer le taux de rafraichissement d'une scene déssinée par Irrlicht en mode OpenGL. Je parle bien du taux de rafraichissement (60,70,75,85 Hz ... ) et non des FPS.
J'ai vu que GLUT savait le faire, mais j'aimerais éviter de l'utiliser, ça commencerait à faire trop de dépendance pour mon projet...
Arnaud16022
Messages postés1329Date d'inscriptionvendredi 15 août 2003StatutMembreDernière intervention16 juin 20102 21 nov. 2004 à 16:21
????????????????????????????????
???
?
dsl je comprend pas.
quelle différence fais tu entre taux de rafraichissement et fps?
si pour toi le taux de raffraichissement est le nombre d'images affichées par l'écran (et non pas calculées pas le GPU et le CPU) en une sec, tu peux pas y toucher.
pour le fps, plus t'en as mieux c'est.
simtiers
Messages postés207Date d'inscriptionjeudi 3 avril 2003StatutMembreDernière intervention 2 novembre 2006 21 nov. 2004 à 19:11
Par FPS, j'entends Frames/sec, c'est à dire le nombre d'images calculées par le GPU/CPU
Par taux de rafraichissiment, j'entends le nombre d'images par secondes affichées par l'écran.
Par défaut avc OpenGL, ce taux est de 60 Hz (=60 img/s)
Ce que je voudrais faire, c'est comme avec DirectX : choisir un taux de rafraichissement d'écran, le passer à 85Hz au lieu de 60Hz (plus de scintillement, écran moins fatiguant à voir...)
simtiers
Messages postés207Date d'inscriptionjeudi 3 avril 2003StatutMembreDernière intervention 2 novembre 2006 21 nov. 2004 à 19:11
Par FPS, j'entends Frames/sec, c'est à dire le nombre d'images calculées par le GPU/CPU
Par taux de rafraichissiment, j'entends le nombre d'images par secondes affichées par l'écran.
Par défaut avc OpenGL, ce taux est de 60 Hz (=60 img/s)
Ce que je voudrais faire, c'est comme avec DirectX : choisir un taux de rafraichissement d'écran, le passer à 85Hz au lieu de 60Hz (plus de scintillement, écran moins fatiguant à voir...)
NoRabbit
Messages postés224Date d'inscriptionsamedi 26 juillet 2003StatutMembreDernière intervention30 mars 2009 21 nov. 2004 à 20:05
en fait le FPS dépend du taux de rafraichissement de ton écran (Hz). Si ton taux est de 85 Hz, ton FPS ne pourra pas aller au dessus de 85 images par secondes (même si la scène est rapide à dessiner)
Sous directx et opengl, la synchronisation entre la fréquence d'affichage des images et le taux de rafraichissement de l'écran (vsync) est activée par défaut.
Il te faut désactiver ce vSync (vertical syncronization)
Pour certaines cartes, il t'es possible de le désactiver directement via le panneau de config de ton écran/carte. Pour le faire via le code, il existe plusieurs sources sur le net, cherches du côté de "vsync".
Si tu cherches à monter ou descendre le taux de refraichissment de ta carte, alors je ne sais pas t'aider, tout ce que je peux te dire, c'est de chercher du côté d'MSDN.
.:. NoRabbit .:.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Arnaud16022
Messages postés1329Date d'inscriptionvendredi 15 août 2003StatutMembreDernière intervention16 juin 20102 21 nov. 2004 à 20:32
d'ou tiens tu ce 60Hz???
c'est stupide, je sais pas ou t'as lu ca.
openGL calculeautat de fps que tu lui en demande.
si tu arrives a faire du 1500 fps (c'est possible avec de tt petits progs), openGL va toutes les calculer et les aficher a l'écran.
le probleme c'est que celui-ci , 1500 c'est comme qui dirait un peu trop... par défaut c'est 50Hz, mais c'est toi qui vois ca par l'intermédiaire de ton driver de carte graphique.
en revanche, si openGL n'arrive qu'a afficher que 10 fps, ca rame a mort, l'image est saccadée, etc.
cf les tutos de digiben sur gametutorials.com
faut pas croire tout ce que tu trouve sur le net tu sais
Arnaud16022
Messages postés1329Date d'inscriptionvendredi 15 août 2003StatutMembreDernière intervention16 juin 20102 21 nov. 2004 à 20:38
Norabbit-> ce que tu dis est faux, mon prog tourne a 140fps, c'est l'affichage qui ne peut aller au dessus de 75hz
le VSync est utile si par exemple tu as du 200 fps, c'et inutile d'en calculer autant puisque seulement le tiers sera affiché. alors du coup ca limite le fps, c'est peut-etre de ca que voulait parler simtiers
Funto66
Messages postés1267Date d'inscriptionmercredi 1 janvier 2003StatutMembreDernière intervention28 février 20074 21 nov. 2004 à 23:05
Image qui scintille à 60Hz???
Quand on sait qu'une télé affiche 24 images par seconde et que l'on peut rester des heures à la regarder...permets-moi de douter que passer de 60 à 85 de fera avancer ^^
---------------------------------------------------------
Patience et longueur de temps font plus que force ni que rage....
Coucous flingueurs 3D : http://www.freewebs.com/cf3d/
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 20047 22 nov. 2004 à 11:14
non funto, une tv recois 25 images/seconde en signal mais en affiche 50 désentrelacées, une image est affichée en 2 passes (lignes paires - lignes impaires ), c'est le cas pour un tube 50hz
25 hz ca serais irregardable (on pourrais meme distinguer le balyage de l'ecran)
le scintillement d'un ecran à 60hz fatigue beaucoup vu qu'en principe on le regarde de beaucoup plus pres qu'une tv
le refreshrate n'a rien à voir avec le framerate, la vsync permet juste de ne pas avoir d'effet de decoupe de l'image lorsque le framerate est élevé par rapport au refreshrate
NoRabbit
Messages postés224Date d'inscriptionsamedi 26 juillet 2003StatutMembreDernière intervention30 mars 2009 22 nov. 2004 à 13:37
ok, donc en gros le vsync permet de limiter le nombre d'images affichées s'il est plus élevé que la fréquence de rafraichissement de l'écran pour éviter certains "problèmes" au niveau de l'affichage.
Ce que je ne savais pas, c'est que le prog, lui, tourne toujours aussi vite qu'il le peut sans être influencé par ce "vsync". En fait je pensais qu'à chaque fois qu'on faisait un "SwapBuffers()", opengl faisait une pause afin d'être synchro avec la fréquence de rafraichissement de l'écran stoppant, de ce fait, le programme pendant quelques millisecondes.
Funto66
Messages postés1267Date d'inscriptionmercredi 1 janvier 2003StatutMembreDernière intervention28 février 20074 23 nov. 2004 à 19:10
Il me semble bien qu'à ce moment-là (ou sinon plutôt au glFlush() je pense, qui peut être encapsulé dans une autre fonction cependant...) OpenGL peut bloquer le programme, mais seulement lorsque la V-Sync est activée.
A confirmer.
---------------------------------------------------------
Patience et longueur de temps font plus que force ni que rage....
Coucous flingueurs 3D : http://www.freewebs.com/cf3d/