[Bf-blender-cvs] [1ada96f] soc-2014-bge: makeScreenshot - adding frame number to the filename
HG1
noreply at git.blender.org
Fri Jun 20 17:53:20 CEST 2014
Commit: 1ada96fbf07fdf48844d89a44c1ac21f28c19f24
Author: HG1
Date: Sat Jun 14 08:30:09 2014 +0100
https://developer.blender.org/rB1ada96fbf07fdf48844d89a44c1ac21f28c19f24
makeScreenshot - adding frame number to the filename
===================================================================
M source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp
M source/gameengine/BlenderRoutines/KX_BlenderCanvas.h
M source/gameengine/GamePlayer/common/GPC_Canvas.cpp
M source/gameengine/GamePlayer/common/GPC_Canvas.h
===================================================================
diff --git a/source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp b/source/gameengine/BlenderRoutines/KX_BlenderCanvas.cpp
index b3e0b4c..7538d6b 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_add_image_extension_from_type(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 9ad80cb..5a6e56f 100644
--- a/source/gameengine/BlenderRoutines/KX_BlenderCanvas.h
+++ b/source/gameengine/BlenderRoutines/KX_BlenderCanvas.h
@@ -209,6 +209,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 be7cf66..a3c6221 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_add_image_extension_from_type(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 bd50066..9228a1a 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];
More information about the Bf-blender-cvs
mailing list