40 lines
		
	
	
		
			841 B
		
	
	
	
		
			GLSL
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			841 B
		
	
	
	
		
			GLSL
		
	
	
	
	
	
| #version 450
 | |
| 
 | |
| layout(location = 1) in vec4 in1;
 | |
| in vec4 in2;                        // ERROR
 | |
| layout(location = 3) in vec4 in3;
 | |
| 
 | |
| layout(location = 1) out vec4 out1;
 | |
| out vec4 out2;                      // ERROR
 | |
| layout(location = 3) out vec4 out3;
 | |
| 
 | |
| layout(location = 10) out inb1 { 
 | |
|     vec4 a;
 | |
|     vec4 b;
 | |
| } inbi1;
 | |
| out inb2 { 
 | |
|     layout(location = 12) vec4 a;
 | |
|     layout(location = 13) vec4 b;
 | |
| } inbi2;
 | |
| out inb3 {                          // ERROR
 | |
|     vec4 a;
 | |
|     vec4 b;
 | |
| } inbi3;
 | |
| 
 | |
| layout(location = 14) out struct S1 { vec4 a; } s1;
 | |
| out struct S2 { vec4 a; } s2;       // ERROR
 | |
| 
 | |
| struct SS { int a; };
 | |
| out layout(location = 15) SS ss1;
 | |
| out SS ss2;                         // ERROR
 | |
| 
 | |
| out gl_PerVertex {
 | |
|     vec4 gl_Position;
 | |
|     float gl_ClipDistance[2];
 | |
| };
 | |
| 
 | |
| void main()
 | |
| {
 | |
|     gl_ClipDistance[0] = 1.0;
 | |
| }
 | 
