summaryrefslogtreecommitdiff
path: root/src/graphics/Renderer.cpp
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2012-08-11 19:24:48 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2012-08-11 19:24:48 (GMT)
commit08b4e5553aa10df74c4fdb0ba519fb700fa8100b (patch)
tree68cda233dcd82978c377978bb19b1fd61bbe0c70 /src/graphics/Renderer.cpp
parentecbb1e910352aec1cda4e2d4c36cf3599bc43963 (diff)
downloadpowder-08b4e5553aa10df74c4fdb0ba519fb700fa8100b.zip
powder-08b4e5553aa10df74c4fdb0ba519fb700fa8100b.tar.gz
Implement some missing lua functions, PNG format creation (requires zlib)
Diffstat (limited to 'src/graphics/Renderer.cpp')
-rw-r--r--src/graphics/Renderer.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/graphics/Renderer.cpp b/src/graphics/Renderer.cpp
index 11cf9c3..6c1a31b 100644
--- a/src/graphics/Renderer.cpp
+++ b/src/graphics/Renderer.cpp
@@ -2475,6 +2475,23 @@ unsigned int Renderer::GetColourMode()
return colour_mode;
}
+VideoBuffer Renderer::DumpFrame()
+{
+#ifdef OGLR
+#elif defined(OGLI)
+ VideoBuffer newBuffer(XRES, YRES);
+ std::copy(vid, vid+(XRES*YRES), newBuffer.Buffer);
+ return newBuffer;
+#else
+ VideoBuffer newBuffer(XRES, YRES);
+ for(int y = 0; y < YRES; y++)
+ {
+ std::copy(vid+(y*(XRES+BARSIZE)), vid+(y*(XRES+BARSIZE))+XRES, newBuffer.Buffer+(y*XRES));
+ }
+ return newBuffer;
+#endif
+}
+
Renderer::~Renderer()
{
#if !defined(OGLR)