summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_rasterizer.cpp
diff options
context:
space:
mode:
authorLiam <byteslice@airmail.cc>2024-01-27 04:27:34 +0100
committerLiam <byteslice@airmail.cc>2024-01-31 17:27:20 +0100
commit453091f61100effba637950dc840da41d95be477 (patch)
tree0e1d46a7c5a354769d04b9bde090b5a9b1f02eb7 /src/video_core/renderer_opengl/gl_rasterizer.cpp
parentvideo_core: simplify accelerated surface fetch and crop handling between APIs (diff)
downloadyuzu-453091f61100effba637950dc840da41d95be477.tar
yuzu-453091f61100effba637950dc840da41d95be477.tar.gz
yuzu-453091f61100effba637950dc840da41d95be477.tar.bz2
yuzu-453091f61100effba637950dc840da41d95be477.tar.lz
yuzu-453091f61100effba637950dc840da41d95be477.tar.xz
yuzu-453091f61100effba637950dc840da41d95be477.tar.zst
yuzu-453091f61100effba637950dc840da41d95be477.zip
Diffstat (limited to 'src/video_core/renderer_opengl/gl_rasterizer.cpp')
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp
index 050a74cca..b42fb110c 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp
@@ -747,16 +747,20 @@ std::optional<FramebufferTextureInfo> RasterizerOpenGL::AccelerateDisplay(
MICROPROFILE_SCOPE(OpenGL_CacheManagement);
std::scoped_lock lock{texture_cache.mutex};
- ImageView* const image_view{
- texture_cache.TryFindFramebufferImageView(config, framebuffer_addr)};
+ const auto [image_view, scaled] =
+ texture_cache.TryFindFramebufferImageView(config, framebuffer_addr);
if (!image_view) {
return {};
}
+ const auto& resolution = Settings::values.resolution_info;
+
FramebufferTextureInfo info{};
info.display_texture = image_view->Handle(Shader::TextureType::Color2D);
info.width = image_view->size.width;
info.height = image_view->size.height;
+ info.scaled_width = scaled ? resolution.ScaleUp(info.width) : info.width;
+ info.scaled_height = scaled ? resolution.ScaleUp(info.height) : info.height;
return info;
}