diff options
| author | Filippo Tarpini <filippotarpini@hotmail.it> | 2023-06-04 18:03:57 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-06-04 18:03:57 +0300 |
| commit | adf4089276b81eb17fadb6069b9cdb17da8f9d87 (patch) | |
| tree | f123ec577dc54e1098cfa6f17bdb4d5070a348df /Source/Core/VideoCommon/Present.cpp | |
| parent | 252d3f353aa74b06a1c67daa65eb60f786608a6a (diff) | |
Fix video output having small black borders all the times
To maintain compatibility with some video encoders, the whole output buffer was scaled to be a multiple of 4.
This change makes it so that that rule only applies while actively recording (or taking screenshots, even if it might not be necessary for that case).
Diffstat (limited to 'Source/Core/VideoCommon/Present.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/Present.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Source/Core/VideoCommon/Present.cpp b/Source/Core/VideoCommon/Present.cpp index 3ac4d516df..c969bdb91f 100644 --- a/Source/Core/VideoCommon/Present.cpp +++ b/Source/Core/VideoCommon/Present.cpp @@ -440,8 +440,11 @@ void Presenter::UpdateDrawRectangle() } // ensure divisibility by 4 to make it compatible with all the video encoders - draw_width = std::ceil(draw_width) - static_cast<int>(std::ceil(draw_width)) % 4; - draw_height = std::ceil(draw_height) - static_cast<int>(std::ceil(draw_height)) % 4; + if (g_frame_dumper->IsFrameDumping()) + { + draw_width = std::ceil(draw_width) - static_cast<int>(std::ceil(draw_width)) % 4; + draw_height = std::ceil(draw_height) - static_cast<int>(std::ceil(draw_height)) % 4; + } m_target_rectangle.left = static_cast<int>(std::round(win_width / 2.0 - draw_width / 2.0)); m_target_rectangle.top = static_cast<int>(std::round(win_height / 2.0 - draw_height / 2.0)); |
