DisplayFrequency / OpenGL



  • Hallo,

    ich schalte auf Vollbilbidschirmmodus so um:

    // for Fullscreen
    	DEVMODE dmScreenSettings;								// Device Mode
    	memset(&dmScreenSettings,0,sizeof(dmScreenSettings));	// Makes Sure Memory's Cleared
    	dmScreenSettings.dmSize=sizeof(dmScreenSettings);		// Size Of The Devmode Structure
    	dmScreenSettings.dmPelsWidth	= width;				// Selected Screen Width
    	dmScreenSettings.dmPelsHeight	= height;				// Selected Screen Height
    	dmScreenSettings.dmBitsPerPel	= bits;					// Selected Bits Per Pixel
    	[b]dmScreenSettings.dmDisplayFrequency = 100;    // Display Refresh Rate [Hz][/b]
    	dmScreenSettings.dmFields=DM_BITSPERPEL|DM_PELSWIDTH|DM_PELSHEIGHT;
    
    	// Try To Set Selected Mode And Get Results.  NOTE: CDS_FULLSCREEN Gets Rid Of Start Bar.
    	if (ChangeDisplaySettings(&dmScreenSettings,CDS_FULLSCREEN)!=DISP_CHANGE_SUCCESSFUL)
    	{
    		// If The Mode Fails, Offer Two Options.  Quit Or Use Windowed Mode.
    		MessageBox(NULL,"The Requested Fullscreen Mode Is Not Supported By\nYour Video Card.","GL_test",MB_OK|MB_ICONEXCLAMATION);
    		return FALSE;									// Return FALSE
    	}
    

    Jedoch wird der Bildschirm immer nur mit 60Herz betrieben.
    And den Systemeinstellungen liegt es scheinbar nicht, da in anderen OpenGL-Anwendungen (bei gleicher Auflösung/Farbtiefe) korrekt auf höher Refreshwerte geschaltet wird.

    Danke für Ratschläge!



  • Habe ich innerhalb einer Minute selbst gelöst 🙂

    dmScreenSettings.dmFields=DM_BITSPERPEL | DM_PELSWIDTH | DM_PELSHEIGHT | [b]DM_DISPLAYFREQUENCY[/b];
    

Anmelden zum Antworten