diff --git a/src/core.c b/src/core.c index cec7344c1..e644896c9 100644 --- a/src/core.c +++ b/src/core.c @@ -1195,6 +1195,22 @@ int GetMonitorPhysicalHeight(int monitor) return 0; } +int GetMonitorRefreshRate(int monitor) +{ +#if defined(PLATFORM_DESKTOP) + int monitorCount; + GLFWmonitor **monitors = glfwGetMonitors(&monitorCount); + + if ((monitor >= 0) && (monitor < monitorCount)) + { + const GLFWvidmode *vidmode = glfwGetVideoMode(monitors[monitor]); + return vidmode->refreshRate; + } + else TRACELOG(LOG_WARNING, "GLFW: Failed to find selected monitor"); +#endif + return 0; +} + // Get window position XY on monitor Vector2 GetWindowPosition(void) { diff --git a/src/raylib.h b/src/raylib.h index 19591bdc2..3894a4a18 100644 --- a/src/raylib.h +++ b/src/raylib.h @@ -892,6 +892,7 @@ RLAPI int GetMonitorWidth(int monitor); // Get primary RLAPI int GetMonitorHeight(int monitor); // Get primary monitor height RLAPI int GetMonitorPhysicalWidth(int monitor); // Get primary monitor physical width in millimetres RLAPI int GetMonitorPhysicalHeight(int monitor); // Get primary monitor physical height in millimetres +RLAPI int GetMonitorRefreshRate(int monitor); // Get primary monitor refresh rate RLAPI Vector2 GetWindowPosition(void); // Get window position XY on monitor RLAPI Vector2 GetWindowScaleDPI(void); // Get window scale DPI factor RLAPI const char *GetMonitorName(int monitor); // Get the human-readable, UTF-8 encoded name of the primary monitor