Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHG1 <HG1_public@gmx.net>2014-06-14 11:30:09 +0400
committerInes Almeida <britalmeida@gmail.com>2015-02-21 15:16:20 +0300
commitf1a65a9fabad160900df76fdf98b6cfac6193ad5 (patch)
tree2d98fdabe297c1cb6e72cfbaa9c4994eb5f611a6 /source/gameengine
parentcf4646b95f7dac74fb67300a2df43bc973e7709d (diff)
makeScreenshot - adding frame number to the filename
Diffstat (limited to 'source/gameengine')
-rw-r--r--source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp3
-rw-r--r--source/gameengine/BlenderRoutines/KX_BlenderCanvas.h1
-rw-r--r--source/gameengine/GamePlayer/common/GPC_Canvas.cpp3
-rw-r--r--source/gameengine/GamePlayer/common/GPC_Canvas.h2
4 files changed, 9 insertions, 0 deletions
diff --git a/source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp b/source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp
index 5bb2d58cd8d..3a31806fad4 100644
--- a/source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp
+++ b/source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp
@@ -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);
}
@@ -350,6 +351,8 @@ void KX_BlenderCanvas::MakeScreenShot(const char *filename)
char path[FILE_MAX];
BLI_strncpy(path, filename, sizeof(path));
BLI_path_abs(path, G.main->name);
+ BLI_path_frame(path, m_frame, 0);
+ m_frame++;
BKE_image_path_ensure_ext_from_imtype(path, im_format.imtype);
/* create and save imbuf */
diff --git a/source/gameengine/BlenderRoutines/KX_BlenderCanvas.h b/source/gameengine/BlenderRoutines/KX_BlenderCanvas.h
index 917e0136cb1..c150af21230 100644
--- a/source/gameengine/BlenderRoutines/KX_BlenderCanvas.h
+++ b/source/gameengine/BlenderRoutines/KX_BlenderCanvas.h
@@ -210,6 +210,7 @@ private:
RAS_Rect m_area_rect;
int m_area_left;
int m_area_top;
+ int m_frame;
#ifdef WITH_CXX_GUARDEDALLOC
diff --git a/source/gameengine/GamePlayer/common/GPC_Canvas.cpp b/source/gameengine/GamePlayer/common/GPC_Canvas.cpp
index c88d55da2b6..52c4d13c638 100644
--- a/source/gameengine/GamePlayer/common/GPC_Canvas.cpp
+++ b/source/gameengine/GamePlayer/common/GPC_Canvas.cpp
@@ -69,6 +69,7 @@ GPC_Canvas::GPC_Canvas(
m_displayarea.m_y1 = 0;
m_displayarea.m_x2 = width;
m_displayarea.m_y2 = height;
+ m_frame = 1;
glGetIntegerv(GL_VIEWPORT, (GLint*)m_viewport);
}
@@ -180,6 +181,8 @@ MakeScreenShot(
char path[FILE_MAX];
BLI_strncpy(path, filename, sizeof(path));
BLI_path_abs(path, G.main->name);
+ BLI_path_frame(path, m_frame, 0);
+ m_frame++;
BKE_image_path_ensure_ext_from_imtype(path, im_format.imtype);
// create and save imbuf
diff --git a/source/gameengine/GamePlayer/common/GPC_Canvas.h b/source/gameengine/GamePlayer/common/GPC_Canvas.h
index 338f9647b3e..acbea477e38 100644
--- a/source/gameengine/GamePlayer/common/GPC_Canvas.h
+++ b/source/gameengine/GamePlayer/common/GPC_Canvas.h
@@ -56,6 +56,8 @@ protected:
/** Rect that defines the area used for rendering,
* relative to the context */
RAS_Rect m_displayarea;
+ /** Frame counter for screenshots */
+ int m_frame;
int m_viewport[4];