summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/PostProcessing.cpp
diff options
context:
space:
mode:
authorValeri <v19930312@gmail.com>2021-04-13 20:14:17 +0300
committerGitHub <noreply@github.com>2021-04-13 20:14:17 +0300
commitb3b1518f91f66a4c471ec41a1a40170c6795e847 (patch)
tree3323f47849cfb9ad95b98e4cd4436e20d1416f66 /Source/Core/VideoCommon/PostProcessing.cpp
parent53222560650e4a99eceafcd537d4e04d1c50b3a6 (diff)
Allow shaders to query reciprocal of window resolution
Diffstat (limited to 'Source/Core/VideoCommon/PostProcessing.cpp')
-rw-r--r--Source/Core/VideoCommon/PostProcessing.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/Source/Core/VideoCommon/PostProcessing.cpp b/Source/Core/VideoCommon/PostProcessing.cpp
index e21b474f0b..c5dbe2bf20 100644
--- a/Source/Core/VideoCommon/PostProcessing.cpp
+++ b/Source/Core/VideoCommon/PostProcessing.cpp
@@ -544,6 +544,11 @@ float2 GetWindowResolution()
return window_resolution.xy;
}
+float2 GetInvWindowResolution()
+{
+ return window_resolution.zw;
+}
+
float2 GetResolution()
{
return resolution.xy;
@@ -673,7 +678,8 @@ void PostProcessing::FillUniformBuffer(const MathUtil::Rectangle<int>& src,
{static_cast<float>(src_tex->GetWidth()), static_cast<float>(src_tex->GetHeight()),
rcp_src_width, rcp_src_height},
{static_cast<float>(window_rect.GetWidth()), static_cast<float>(window_rect.GetHeight()),
- 0.0f, 0.0f},
+ 1.0f / static_cast<float>(window_rect.GetWidth()),
+ 1.0f / static_cast<float>(window_rect.GetHeight())},
{static_cast<float>(src.left) * rcp_src_width, static_cast<float>(src.top) * rcp_src_height,
static_cast<float>(src.GetWidth()) * rcp_src_width,
static_cast<float>(src.GetHeight()) * rcp_src_height},