Est-ce encore possible? Comme ive a remarqué que v-sync ne marche pas du tout sur mon ordinateur portable, je construis un "limiteur" FPS "manuellement" et maintenant je voudrais utiliser la limite FPS que l'utilisateur a définie sur son écran.Comment obtenir le taux de rafraîchissement de l'écran?
Éditer: Je veux dire le taux hz du moniteur.
Edit3: Heres le code que je suis travailler (je pense ... quelque chose de mal là-bas?):
DEVMODE lpDevMode;
memset(&lpDevMode, 0, sizeof(DEVMODE));
lpDevMode.dmSize = sizeof(DEVMODE);
lpDevMode.dmDriverExtra = 0;
if(EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &lpDevMode) == 0){
framerate_limit = 60; // default value if cannot retrieve from user settings.
}
Sur demande, voici mon code permettant v-sync jay.lee demandé:
PFNWGLSWAPINTERVALEXTPROC wglSwapIntervalEXT = NULL; // global
...
wglSwapIntervalEXT = (PFNWGLSWAPINTERVALEXTPROC) wglGetProcAddress("wglSwapIntervalEXT");
v_sync_enabled = 0;
if(wglSwapIntervalEXT != NULL){
if(wglSwapIntervalEXT(1) != FALSE){
v_sync_enabled = 1;
}
}
Voulez-vous dire la fréquence Hz du moniteur, et non votre boucle de dessin? –
moniteur je veux dire. – Newbie
juste curieux, comment essayez-vous d'activer vsync? –