diff options
Diffstat (limited to 'source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp')
-rw-r--r-- | source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp b/source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp index b3e0b4c3ea6..e37818678d6 100644 --- a/source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp +++ b/source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp @@ -29,7 +29,7 @@ * \ingroup blroutines */ -#include <GL/glew.h> +#include "glew-mx.h" #include "MEM_guardedalloc.h" @@ -67,6 +67,7 @@ m_frame_rect(rect) // area boundaries needed for mouse coordinates in Letterbox framing mode m_area_left = ar->winrct.xmin; m_area_top = ar->winrct.ymax; + m_frame = 1; glGetIntegerv(GL_VIEWPORT, (GLint *)m_viewport); } @@ -91,9 +92,14 @@ void KX_BlenderCanvas::SetSwapInterval(int interval) wm_window_set_swap_interval(m_win, interval); } -int KX_BlenderCanvas::GetSwapInterval() +bool KX_BlenderCanvas::GetSwapInterval(int &intervalOut) { - return wm_window_get_swap_interval(m_win); + return wm_window_get_swap_interval(m_win, &intervalOut); +} + +void KX_BlenderCanvas::GetDisplayDimensions(int &width, int &height) +{ + wm_get_screensize(&width, &height); } void KX_BlenderCanvas::ResizeWindow(int width, int height) @@ -350,7 +356,9 @@ void KX_BlenderCanvas::MakeScreenShot(const char *filename) char path[FILE_MAX]; BLI_strncpy(path, filename, sizeof(path)); BLI_path_abs(path, G.main->name); - BKE_add_image_extension_from_type(path, im_format.imtype); + BLI_path_frame(path, m_frame, 0); + m_frame++; + BKE_image_path_ensure_ext_from_imtype(path, im_format.imtype); /* create and save imbuf */ ImBuf *ibuf = IMB_allocImBuf(dumpsx, dumpsy, 24, 0); |