yuzu, video_core: Screenshot functionality

Allows capturing screenshot at the current internal resolution (native for software renderer), but a setting is available to capture it in other resolutions. The screenshot is saved to a single PNG in the current layout.
This commit is contained in:
zhupengfei
2018-08-31 14:16:16 +08:00
committed by fearlessTobi
parent f761e3ef86
commit a2be49305d
15 changed files with 229 additions and 44 deletions

View File

@ -8,6 +8,7 @@
#include <condition_variable>
#include <mutex>
#include <QGLWidget>
#include <QImage>
#include <QThread>
#include "common/thread.h"
#include "core/core.h"
@ -139,6 +140,8 @@ public:
void InitRenderTarget();
void CaptureScreenshot(u16 res_scale, const QString& screenshot_path);
public slots:
void moveContext(); // overridden
@ -165,6 +168,9 @@ private:
EmuThread* emu_thread;
/// Temporary storage of the screenshot taken
QImage screenshot_image;
protected:
void showEvent(QShowEvent* event) override;
};