GPU: Use display size for calculating internal screenshot size

Fixes detail being lost due to added padding when not cropping.
This commit is contained in:
Stenzek 2025-02-02 17:14:33 +10:00
parent 64d3716cfd
commit 4ceeb58dbc
No known key found for this signature in database
1 changed files with 4 additions and 2 deletions

View File

@ -1165,8 +1165,10 @@ GSVector2i GPUPresenter::CalculateScreenshotSize(DisplayScreenshotMode mode) con
{ {
if (mode == DisplayScreenshotMode::InternalResolution) if (mode == DisplayScreenshotMode::InternalResolution)
{ {
float f_width = static_cast<float>(m_display_texture_view_width); float f_width =
float f_height = static_cast<float>(m_display_texture_view_height); m_display_width * (static_cast<float>(m_display_texture_view_width) / static_cast<float>(m_display_vram_width));
float f_height = m_display_height *
(static_cast<float>(m_display_texture_view_height) / static_cast<float>(m_display_vram_height));
if (!g_gpu_settings.gpu_show_vram) if (!g_gpu_settings.gpu_show_vram)
GPU::ApplyPixelAspectRatioToSize(m_display_pixel_aspect_ratio, &f_width, &f_height); GPU::ApplyPixelAspectRatioToSize(m_display_pixel_aspect_ratio, &f_width, &f_height);