blob: f8651a566fcc14f649b7c568cc867fab990b4511 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
#ifndef THREAD_GROUP_SIZE
# define THREAD_GROUP_SIZE 16
#endif
Texture3D<float3> g_tex3DCurrentOrderScattering;
Texture3D<float3> g_tex3DHighOrderOrderScattering;
RWTexture3D</*format = rgba16f*/float3> g_rwtex3DHighOrderSctr;
[numthreads(THREAD_GROUP_SIZE, THREAD_GROUP_SIZE, 1)]
void UpdateHighOrderScatteringCS(uint3 ThreadId : SV_DispatchThreadID)
{
// Accumulate in-scattering using alpha-blending
g_rwtex3DHighOrderSctr[ThreadId] =
g_tex3DHighOrderOrderScattering.Load( int4(ThreadId, 0) ) +
g_tex3DCurrentOrderScattering.Load( int4(ThreadId, 0) );
}
|