24 lines
		
	
	
		
			545 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			545 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
#version 450
 | 
						|
 | 
						|
#extension GL_KHR_shader_subgroup_basic: enable
 | 
						|
 | 
						|
layout (local_size_x = 8, local_size_y = 8, local_size_z = 1) in;
 | 
						|
 | 
						|
layout(binding = 0) buffer Buffer
 | 
						|
{
 | 
						|
    int a[];
 | 
						|
} data;
 | 
						|
 | 
						|
void main()
 | 
						|
{
 | 
						|
    data.a[gl_SubgroupSize] = 1;
 | 
						|
    data.a[gl_SubgroupInvocationID] = 1;
 | 
						|
    data.a[gl_NumSubgroups] = 1;
 | 
						|
    data.a[gl_SubgroupID] = (subgroupElect()) ? 1 : 0;
 | 
						|
    subgroupBarrier();
 | 
						|
    subgroupMemoryBarrier();
 | 
						|
    subgroupMemoryBarrierBuffer();
 | 
						|
    subgroupMemoryBarrierShared();
 | 
						|
    subgroupMemoryBarrierImage();
 | 
						|
}
 |