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();
 | |
| }
 | 
