Files
bluflame/netpoet-coop-8k/src/intro/framework/shaders/histogramGather.hlsl
2026-04-19 00:41:25 +02:00

15 lines
499 B
HLSL

Texture2DMS<float4,1> in0 : register(t0);
RWTexture1D<uint> histogramBucketR : register(u1);
RWTexture1D<uint> histogramBucketG : register(u2);
RWTexture1D<uint> histogramBucketB : register(u3);
RWTexture1D<float4> histogramOut : register(u4);
[numthreads(16, 16, 1)]
void main(uint3 id : SV_DispatchThreadID)
{
int3 iPixel = in0[id.xy].rgb * 255.0f;
InterlockedAdd(histogramBucketR[iPixel.r], 1);
InterlockedAdd(histogramBucketG[iPixel.g], 1);
InterlockedAdd(histogramBucketB[iPixel.b], 1);
}