Skip to content

Proper VSyncย #1870

Open
Open
@robertpfeiffer

Description

@robertpfeiffer
  • with vsync=1 and SCALED, pg.display.update already blocking on my machine
  • allow querying of screen refresh rate, via SDL_GetCurrentDisplayMode maybe as pg.display.get_refresh_rate() -> int
  • warn if clock.tick is slower than screen refresh rate
  • add GPU render path without scaling
  • force GPU render path when vsync is requested without additional parameters
  • use presentvsync when vsync is enabled
  • should that include the SDL_HINT_RENDER_VSYNC hint? If yes, query that and force GPU render path too
  • either deprecate list_modes and mode_ok or make them refresh rate and vsync aware
    • deprecate list_modes
    • add list_fullscreen_modes with vsync support
  • investigate adaptive vsync with renderer (result: it's not a thing!)
  • add environment variable to disable fullscreen_desktop and force HW fullscreen like it's 1999 (for @fladd and expyriment)
  • interactive test program for vsync
  • test on KMSDRM
  • test on Mac
  • test on wayland

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions