diff --git a/ffi/rgfw-export.c b/ffi/rgfw-export.c index 2fe0154..f708d33 100644 --- a/ffi/rgfw-export.c +++ b/ffi/rgfw-export.c @@ -30,6 +30,11 @@ void swapBuffers(RGFW_window* window) { RGFW_window_swapBuffers_OpenGL(window); } +void enableVsync(RGFW_window* window) { + // A swap interval of 1 will enable vsync + RGFW_window_swapInterval_OpenGL(window, 1); +} + void writeClipboard(char* string, int stringSize) { RGFW_writeClipboard(string, stringSize); } diff --git a/ffi/rgfw-import.sml b/ffi/rgfw-import.sml index 675cda8..6686a7e 100644 --- a/ffi/rgfw-import.sml +++ b/ffi/rgfw-import.sml @@ -11,6 +11,8 @@ struct _import "shouldCloseWindow" public : window -> bool; val swapBuffers = _import "swapBuffers" public : window -> unit; + val enableVsync = + _import "enableVsync" public : window -> unit; val pollEvents = _import "pollEvents" public reentrant : unit -> unit; diff --git a/shell/rgfw-loop.sml b/shell/rgfw-loop.sml index f899cdb..a9199dc 100644 --- a/shell/rgfw-loop.sml +++ b/shell/rgfw-loop.sml @@ -98,6 +98,7 @@ struct fun main () = let val window = Rgfw.createWindow ("shf", 0, 0, 1920, 1080) + val () = Rgfw.enableVsync window val () = Gles3.enableDepthTest () (* load file intol gap buffer and create initial app *) diff --git a/shf b/shf deleted file mode 100755 index fa8b5a0..0000000 Binary files a/shf and /dev/null differ