From c337c67decf3cf1ccbd37a62578a7737dfb6bff7 Mon Sep 17 00:00:00 2001 From: Skyth <19259897+blueskythlikesclouds@users.noreply.github.com> Date: Wed, 8 Jan 2025 15:31:15 +0300 Subject: [PATCH] Scale DoF correctly at different aspect ratios. --- UnleashedRecomp/gpu/shader/gaussian_blur.hlsli | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/UnleashedRecomp/gpu/shader/gaussian_blur.hlsli b/UnleashedRecomp/gpu/shader/gaussian_blur.hlsli index a10a7bee..20f99552 100644 --- a/UnleashedRecomp/gpu/shader/gaussian_blur.hlsli +++ b/UnleashedRecomp/gpu/shader/gaussian_blur.hlsli @@ -45,7 +45,11 @@ float4 main(in float4 iPosition : SV_Position, in float4 iTexCoord0 : TEXCOORD0) Texture2D texture = g_Texture2DDescriptorHeap[s0_Texture2DDescriptorIndex]; SamplerState samplerState = g_SamplerDescriptorHeap[s0_SamplerDescriptorIndex]; - float scale = g_ViewportSize.y / 360.0; + float scale; + if ((g_ViewportSize.x * g_ViewportSize.w) >= (16.0 / 9.0)) + scale = g_ViewportSize.y / 360.0; + else + scale = g_ViewportSize.x / 640.0; float2 offsets[3]; offsets[0] = g_offsets(0).xy * scale;