summaryrefslogtreecommitdiffstats
path: root/src/graphics/engine
diff options
context:
space:
mode:
authorkrzys-h <krzys_h@interia.pl>2014-07-11 15:24:44 +0200
committerkrzys-h <krzys_h@interia.pl>2014-07-11 15:24:44 +0200
commit96d49d84aafecd78c902681f20de6207badf7e85 (patch)
tree7a835fce4f264c6c0886441c4f79e02cdf47582c /src/graphics/engine
parent5223ef1fb116780298495a4d2f63e6c2c39fdfbd (diff)
parent852223262055440569ecca70f1b9da46089424c4 (diff)
downloadcolobot-96d49d84aafecd78c902681f20de6207badf7e85.tar.gz
colobot-96d49d84aafecd78c902681f20de6207badf7e85.tar.bz2
colobot-96d49d84aafecd78c902681f20de6207badf7e85.zip
Merge branch 'dev' into dev-physfs
Conflicts: data src/app/gamedata.cpp src/ui/control.cpp src/ui/edit.cpp src/ui/maindialog.cpp
Diffstat (limited to 'src/graphics/engine')
-rw-r--r--src/graphics/engine/camera.cpp3
-rw-r--r--src/graphics/engine/engine.cpp17
2 files changed, 14 insertions, 6 deletions
diff --git a/src/graphics/engine/camera.cpp b/src/graphics/engine/camera.cpp
index f0c379c..fedc70a 100644
--- a/src/graphics/engine/camera.cpp
+++ b/src/graphics/engine/camera.cpp
@@ -593,9 +593,6 @@ void CCamera::EffectFrame(const Event &event)
dist = Math::Norm((dist - 100.f) / 100.0f);
force *= 1.0f-dist;
-#if _TEEN
- force *= 2.0f;
-#endif
m_effectOffset *= force;
if (m_effectProgress >= 1.0f)
diff --git a/src/graphics/engine/engine.cpp b/src/graphics/engine/engine.cpp
index 2745068..cfb794a 100644
--- a/src/graphics/engine/engine.cpp
+++ b/src/graphics/engine/engine.cpp
@@ -423,9 +423,20 @@ void CEngine::FrameUpdate()
bool CEngine::WriteScreenShot(const std::string& fileName, int width, int height)
{
- // TODO write screenshot: not very important for now
- GetLogger()->Debug("CEngine::WriteSceenShot(): stub!\n");
- return true;
+ void *pixels = m_device->GetFrameBufferPixels();
+ CImage img({width,height});
+
+ img.SetDataPixels(pixels);
+ img.flipVertically();
+
+ if ( img.SavePNG(fileName.c_str()) ){
+ GetLogger()->Info("Save SceenShot Saved Successfully!\n");
+ return true;
+ }
+ else{
+ GetLogger()->Error("%s!\n",img.GetError().c_str());
+ return false;
+ }
}
bool CEngine::GetPause()