diff options
author | Liam <byteslice@airmail.cc> | 2022-04-04 11:45:15 -0400 |
---|---|---|
committer | Liam <byteslice@airmail.cc> | 2022-04-04 11:45:15 -0400 |
commit | c59c035d7487e997e85b3e9bb9804c5655c527fa (patch) | |
tree | 24fa6d531dcc97f9a099c4caa515d65328f599e8 | |
parent | e9cf2d43f1fb62dd06f9e8ef2e51cb43147ad808 (diff) |
Vulkan: crop to screen dimensions if crop not explicitly requested
-rw-r--r-- | src/video_core/renderer_vulkan/vk_blit_screen.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/video_core/renderer_vulkan/vk_blit_screen.cpp b/src/video_core/renderer_vulkan/vk_blit_screen.cpp index d893c1952..b866e9103 100644 --- a/src/video_core/renderer_vulkan/vk_blit_screen.cpp +++ b/src/video_core/renderer_vulkan/vk_blit_screen.cpp @@ -1406,8 +1406,9 @@ void VKBlitScreen::SetVertexData(BufferData& data, const Tegra::FramebufferConfi UNIMPLEMENTED_IF(framebuffer_crop_rect.top != 0); UNIMPLEMENTED_IF(framebuffer_crop_rect.left != 0); - f32 scale_u = 1.0f; - f32 scale_v = 1.0f; + f32 scale_u = static_cast<f32>(framebuffer.width) / static_cast<f32>(screen_info.width); + f32 scale_v = static_cast<f32>(framebuffer.height) / static_cast<f32>(screen_info.height); + // Scale the output by the crop width/height. This is commonly used with 1280x720 rendering // (e.g. handheld mode) on a 1920x1080 framebuffer. if (!fsr) { |