06a0d86e9c
This uses the mailbox model to move pixel downloading to its own thread, eliminating Nvidia's warnings and (possibly) making use of GPU copy engine. To achieve this, we created a new mailbox type that is different from the presentation mailbox in that it never discards a rendered frame. Also, I tweaked the projection matrix thing so that it can just draw the frame upside down instead of having the CPU flip it.
16 lines
No EOL
482 B
C++
16 lines
No EOL
482 B
C++
// Copyright 2018 Citra Emulator Project
|
|
// Licensed under GPLv2 or any later version
|
|
// Refer to the license.txt file included.
|
|
|
|
#include <cstring>
|
|
#include "core/dumping/backend.h"
|
|
|
|
namespace VideoDumper {
|
|
|
|
VideoFrame::VideoFrame(std::size_t width_, std::size_t height_, u8* data_)
|
|
: width(width_), height(height_), stride(width * 4), data(data_, data_ + width * height * 4) {}
|
|
|
|
Backend::~Backend() = default;
|
|
NullBackend::~NullBackend() = default;
|
|
|
|
} // namespace VideoDumper
|