mirror of
https://github.com/KhronosGroup/SPIRV-Cross.git
synced 2024-11-16 08:50:14 +00:00
1f16f0d260
If 'const' is used, the shader expects the variable to be backed by a constant buffer. 'static const' is probably preferred for a value that is initialized with a constant in the HLSL source code. FXC also emits a warning for 'const' variables with initializers, since 'static const' was probably intended.
33 lines
991 B
Plaintext
33 lines
991 B
Plaintext
static const uint3 gl_WorkGroupSize = uint3(8u, 4u, 2u);
|
|
|
|
static uint3 gl_WorkGroupID;
|
|
static uint3 gl_LocalInvocationID;
|
|
static uint3 gl_GlobalInvocationID;
|
|
static uint gl_LocalInvocationIndex;
|
|
struct SPIRV_Cross_Input
|
|
{
|
|
uint3 gl_WorkGroupID : SV_GroupID;
|
|
uint3 gl_LocalInvocationID : SV_GroupThreadID;
|
|
uint3 gl_GlobalInvocationID : SV_DispatchThreadID;
|
|
uint gl_LocalInvocationIndex : SV_GroupIndex;
|
|
};
|
|
|
|
void comp_main()
|
|
{
|
|
uint3 local_id = gl_LocalInvocationID;
|
|
uint3 global_id = gl_GlobalInvocationID;
|
|
uint local_index = gl_LocalInvocationIndex;
|
|
uint3 work_group_size = gl_WorkGroupSize;
|
|
uint3 work_group_id = gl_WorkGroupID;
|
|
}
|
|
|
|
[numthreads(8, 4, 2)]
|
|
void main(SPIRV_Cross_Input stage_input)
|
|
{
|
|
gl_WorkGroupID = stage_input.gl_WorkGroupID;
|
|
gl_LocalInvocationID = stage_input.gl_LocalInvocationID;
|
|
gl_GlobalInvocationID = stage_input.gl_GlobalInvocationID;
|
|
gl_LocalInvocationIndex = stage_input.gl_LocalInvocationIndex;
|
|
comp_main();
|
|
}
|