Files
WickedEngine/WickedEngine/shaders/surfel_gridoffsetsCS.hlsl
2022-11-06 11:12:11 +01:00

16 lines
538 B
HLSL

#include "globals.hlsli"
#include "ShaderInterop_SurfelGI.h"
RWStructuredBuffer<SurfelGridCell> surfelGridBuffer : register(u0);
RWStructuredBuffer<uint> surfelCellBuffer : register(u1);
RWByteAddressBuffer surfelStatsBuffer : register(u2);
[numthreads(64, 1, 1)]
void main(uint3 DTid : SV_DispatchThreadID)
{
if (surfelGridBuffer[DTid.x].count == 0)
return;
surfelStatsBuffer.InterlockedAdd(SURFEL_STATS_OFFSET_CELLALLOCATOR, surfelGridBuffer[DTid.x].count, surfelGridBuffer[DTid.x].offset);
surfelGridBuffer[DTid.x].count = 0;
}