procedural-3d-engine/shaders/hlsl/ssao/blur.frag
Vovan675 fc9753a8fc
Fix SSAO blur range (#1122)
* Fix ssao blur range

* Recompile ssao blur shaders

---------

Co-authored-by: Vladimir Kosachev <vovan675@unigine.com>
2024-06-21 07:56:26 +02:00

24 lines
No EOL
613 B
GLSL

// Copyright 2020 Google LLC
Texture2D textureSSAO : register(t0);
SamplerState samplerSSAO : register(s0);
float4 main([[vk::location(0)]] float2 inUV : TEXCOORD0) : SV_TARGET
{
const int blurRange = 2;
int n = 0;
int2 texDim;
textureSSAO.GetDimensions(texDim.x, texDim.y);
float2 texelSize = 1.0 / (float2)texDim;
float result = 0.0;
for (int x = -blurRange; x <= blurRange; x++)
{
for (int y = -blurRange; y <= blurRange; y++)
{
float2 offset = float2(float(x), float(y)) * texelSize;
result += textureSSAO.Sample(samplerSSAO, inUV + offset).r;
n++;
}
}
return result / (float(n));
}