netpoet coop and 64kode
This commit is contained in:
29
netpoet-coop-8k/src/intro/shaders/taa.hlsl
Normal file
29
netpoet-coop-8k/src/intro/shaders/taa.hlsl
Normal file
@@ -0,0 +1,29 @@
|
||||
void taa(inout float3 old, in float2 id, int2 iResolution)
|
||||
{
|
||||
id *= iResolution;
|
||||
id += .5;
|
||||
if (any(id <= 1) || any(id >= iResolution - 1))
|
||||
return;
|
||||
|
||||
// get the neighborhood min / max from this frame's render
|
||||
float3 center = lastFrame[id].rgb;
|
||||
float3 minColor = center;
|
||||
float3 maxColor = center;
|
||||
for (int iy = -1; iy <= 1; ++iy)
|
||||
{
|
||||
for (int ix = -1; ix <= 1; ++ix)
|
||||
{
|
||||
if (ix == 0 && iy == 0)
|
||||
continue;
|
||||
|
||||
float3 color = lastFrame[id + int2(ix, iy)].rgb;
|
||||
minColor = min(minColor, color);
|
||||
maxColor = max(maxColor, color);
|
||||
}
|
||||
}
|
||||
|
||||
//center = max(minColor, center);
|
||||
//center = min(maxColor, center);
|
||||
// get last frame's pixel and clamp it to the neighborhood of this frame
|
||||
old = lerp(old, center, 0.4);
|
||||
}
|
||||
Reference in New Issue
Block a user