| #version 430 |
| |
| // Verify that blocks with different instance names |
| // are correctly detected as invalid non-matching blocks |
| // when they are matched up by block name |
| layout (std140) uniform Block |
| { |
| mat4 uProj; |
| } uD; |
| |
| out Vertex |
| { |
| vec4 v1; |
| } oV; |
| |
| layout (std140) uniform ColorBlock |
| { |
| vec4 color1; |
| } uC; |
| |
| // Error, buffer blocks and uniform blocks share the |
| // same namespace for their block name |
| layout (std430) buffer ColorBlock |
| { |
| vec4 color1; |
| } uBufC; |
| |
| vec4 getWorld(); |
| vec4 getColor2(); |
| |
| out vec4 oColor; |
| |
| void |
| main() |
| { |
| oColor = uC.color1 * getColor2(); |
| oV.v1 = uC.color1 + uBufC.color1; |
| |
| gl_Position = uD.uProj * getWorld(); |
| } |