Vsync doesn't work when freesync is enabled in fullscreen mode

Hello,

Seems like enabling vsync has no effect when freesync is enabled in the AMD control panel.

This is how I create the window and the renderer.

SDL_Window* window = SDL_CreateWindow("title",
		SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, WINDOW_WIDTH,
		WINDOW_HEIGHT, SDL_WINDOW_FULLSCREEN_DESKTOP);

SDL_Renderer* renderer = SDL_CreateRenderer(window, -1, 
		SDL_RENDERER_ACCELERATED | SDL_RENDERER_TARGETTEXTURE | SDL_RENDERER_PRESENTVSYNC);

When freesync is disabled in AMD control panel this runs at 75fps which is my monitors refresh rate. Enabling freesync causes it to run at 500+ fps.

What happens if you set it to SDL_WINDOW_FULLSCREEN instead of SDL_WINDOW_FULLSCREEN_DESKTOP ?

1 Like

This seems to work as expected. Thanks.