link.vk.multiBlocksValid.0.0.vert Shader version: 430 0:? Sequence 0:43 Function Definition: main( ( global void) 0:43 Function Parameters: 0:45 Sequence 0:45 move second child to first child ( temp highp 4-component vector of float) 0:45 'oColor' ( smooth out highp 4-component vector of float) 0:45 component-wise multiply ( temp highp 4-component vector of float) 0:45 component-wise multiply ( temp highp 4-component vector of float) 0:45 color1: direct index for structure (layout( column_major std140 offset=0) uniform highp 4-component vector of float) 0:45 'uC' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3}) 0:45 Constant: 0:45 0 (const int) 0:45 Function Call: getColor2( ( global highp 4-component vector of float) 0:45 c: direct index for structure (layout( column_major std430 offset=0) buffer highp 4-component vector of float) 0:45 'uColorBuf' (layout( binding=0 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4-component vector of float c}) 0:45 Constant: 0:45 0 (const int) 0:46 move second child to first child ( temp highp 4-component vector of float) 0:46 v1: direct index for structure ( out highp 4-component vector of float) 0:46 'oV' ( out block{ out highp 4-component vector of float v1, out highp 4-component vector of float v2}) 0:46 Constant: 0:46 0 (const int) 0:46 color1: direct index for structure (layout( column_major std140 offset=0) uniform highp 4-component vector of float) 0:46 'uC' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3}) 0:46 Constant: 0:46 0 (const int) 0:48 move second child to first child ( temp highp 4-component vector of float) 0:48 gl_Position: direct index for structure ( gl_Position highp 4-component vector of float Position) 0:48 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance}) 0:48 Constant: 0:48 0 (const uint) 0:48 matrix-times-vector ( temp highp 4-component vector of float) 0:48 uProj: direct index for structure (layout( column_major std140 offset=0) uniform highp 4X4 matrix of float) 0:48 'uM' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld}) 0:48 Constant: 0:48 0 (const int) 0:48 Function Call: getWorld( ( global highp 4-component vector of float) 0:? Linker Objects 0:? 'uM' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld}) 0:? 'oV' ( out block{ out highp 4-component vector of float v1, out highp 4-component vector of float v2}) 0:? 'uC' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3}) 0:? 'uBuf' (layout( binding=1 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4X4 matrix of float p}) 0:? 'uColorBuf' (layout( binding=0 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4-component vector of float c}) 0:? 'oColor' ( smooth out highp 4-component vector of float) 0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out unsized 1-element array of float ClipDistance gl_ClipDistance}) link.vk.multiBlocksValid.0.1.vert Shader version: 430 0:? Sequence 0:36 Function Definition: getColor2( ( global highp 4-component vector of float) 0:36 Function Parameters: 0:38 Sequence 0:38 Branch: Return with expression 0:38 color2: direct index for structure (layout( column_major std140 offset=32) uniform highp 4-component vector of float) 0:38 'uColor' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3}) 0:38 Constant: 0:38 2 (const int) 0:41 Function Definition: getWorld( ( global highp 4-component vector of float) 0:41 Function Parameters: 0:43 Sequence 0:43 move second child to first child ( temp highp 4-component vector of float) 0:43 v1: direct index for structure ( out highp 4-component vector of float) 0:43 'anon@0' ( out block{ out highp 4-component vector of float v1, out highp 4-component vector of float v2}) 0:43 Constant: 0:43 0 (const uint) 0:43 Constant: 0:43 1.000000 0:43 1.000000 0:43 1.000000 0:43 1.000000 0:44 Branch: Return with expression 0:44 matrix-times-vector ( temp highp 4-component vector of float) 0:44 uWorld: direct index for structure (layout( column_major std140 offset=64) uniform highp 4X4 matrix of float) 0:44 'uMatrix' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld}) 0:44 Constant: 0:44 1 (const int) 0:44 'P' ( in highp 4-component vector of float) 0:? Linker Objects 0:? 'uColor' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3}) 0:? 'uBuffer' (layout( binding=1 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4X4 matrix of float p}) 0:? 'uMatrix' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld}) 0:? 'anon@0' ( out block{ out highp 4-component vector of float v1, out highp 4-component vector of float v2}) 0:? 'P' ( in highp 4-component vector of float) Linked vertex stage: WARNING: Linking vertex stage: Matched shader interfaces are using different instance names. uC: "layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3}" versus uColor: "layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3}" WARNING: Linking vertex stage: Matched shader interfaces are using different instance names. uBuf: "layout( binding=1 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4X4 matrix of float p}" versus uBuffer: "layout( binding=1 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4X4 matrix of float p}" WARNING: Linking vertex stage: Matched shader interfaces are using different instance names. uM: "layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld}" versus uMatrix: "layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld}" WARNING: Linking vertex stage: Matched shader interfaces are using different instance names. oV: " out block{ out highp 4-component vector of float v1, out highp 4-component vector of float v2}" versus anon@0: " out block{ out highp 4-component vector of float v1, out highp 4-component vector of float v2}" Shader version: 430 0:? Sequence 0:43 Function Definition: main( ( global void) 0:43 Function Parameters: 0:45 Sequence 0:45 move second child to first child ( temp highp 4-component vector of float) 0:45 'oColor' ( smooth out highp 4-component vector of float) 0:45 component-wise multiply ( temp highp 4-component vector of float) 0:45 component-wise multiply ( temp highp 4-component vector of float) 0:45 color1: direct index for structure (layout( column_major std140 offset=0) uniform highp 4-component vector of float) 0:45 'uC' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3}) 0:45 Constant: 0:45 0 (const int) 0:45 Function Call: getColor2( ( global highp 4-component vector of float) 0:45 c: direct index for structure (layout( column_major std430 offset=0) buffer highp 4-component vector of float) 0:45 'uColorBuf' (layout( binding=0 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4-component vector of float c}) 0:45 Constant: 0:45 0 (const int) 0:46 move second child to first child ( temp highp 4-component vector of float) 0:46 v1: direct index for structure ( out highp 4-component vector of float) 0:46 'oV' ( out block{ out highp 4-component vector of float v1, out highp 4-component vector of float v2}) 0:46 Constant: 0:46 0 (const int) 0:46 color1: direct index for structure (layout( column_major std140 offset=0) uniform highp 4-component vector of float) 0:46 'uC' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3}) 0:46 Constant: 0:46 0 (const int) 0:48 move second child to first child ( temp highp 4-component vector of float) 0:48 gl_Position: direct index for structure ( gl_Position highp 4-component vector of float Position) 0:48 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance}) 0:48 Constant: 0:48 0 (const uint) 0:48 matrix-times-vector ( temp highp 4-component vector of float) 0:48 uProj: direct index for structure (layout( column_major std140 offset=0) uniform highp 4X4 matrix of float) 0:48 'uM' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld}) 0:48 Constant: 0:48 0 (const int) 0:48 Function Call: getWorld( ( global highp 4-component vector of float) 0:36 Function Definition: getColor2( ( global highp 4-component vector of float) 0:36 Function Parameters: 0:38 Sequence 0:38 Branch: Return with expression 0:38 color2: direct index for structure (layout( column_major std140 offset=32) uniform highp 4-component vector of float) 0:38 'uColor' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3}) 0:38 Constant: 0:38 2 (const int) 0:41 Function Definition: getWorld( ( global highp 4-component vector of float) 0:41 Function Parameters: 0:43 Sequence 0:43 move second child to first child ( temp highp 4-component vector of float) 0:43 v1: direct index for structure ( out highp 4-component vector of float) 0:43 'anon@0' ( out block{ out highp 4-component vector of float v1, out highp 4-component vector of float v2}) 0:43 Constant: 0:43 0 (const uint) 0:43 Constant: 0:43 1.000000 0:43 1.000000 0:43 1.000000 0:43 1.000000 0:44 Branch: Return with expression 0:44 matrix-times-vector ( temp highp 4-component vector of float) 0:44 uWorld: direct index for structure (layout( column_major std140 offset=64) uniform highp 4X4 matrix of float) 0:44 'uMatrix' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld}) 0:44 Constant: 0:44 1 (const int) 0:44 'P' ( in highp 4-component vector of float) 0:? Linker Objects 0:? 'uM' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld}) 0:? 'oV' ( out block{ out highp 4-component vector of float v1, out highp 4-component vector of float v2}) 0:? 'uC' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3}) 0:? 'uBuf' (layout( binding=1 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4X4 matrix of float p}) 0:? 'uColorBuf' (layout( binding=0 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4-component vector of float c}) 0:? 'oColor' ( smooth out highp 4-component vector of float) 0:? 'anon@0' ( out block{ gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance}) 0:? 'P' ( in highp 4-component vector of float) // Module Version 10000 // Generated by (magic number): 8000a // Id's are bound by 73 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Vertex 4 "main" 14 34 42 65 Source GLSL 430 Name 4 "main" Name 9 "getColor2(" Name 11 "getWorld(" Name 14 "oColor" Name 16 "ColorBlock" MemberName 16(ColorBlock) 0 "color1" MemberName 16(ColorBlock) 1 "b" MemberName 16(ColorBlock) 2 "color2" MemberName 16(ColorBlock) 3 "color3" Name 18 "uC" Name 26 "SecondaryColorBlock" MemberName 26(SecondaryColorBlock) 0 "c" Name 28 "uColorBuf" Name 32 "Vertex" MemberName 32(Vertex) 0 "v1" MemberName 32(Vertex) 1 "v2" Name 34 "oV" Name 40 "gl_PerVertex" MemberName 40(gl_PerVertex) 0 "gl_Position" MemberName 40(gl_PerVertex) 1 "gl_PointSize" MemberName 40(gl_PerVertex) 2 "gl_ClipDistance" Name 42 "" Name 44 "MatrixBlock" MemberName 44(MatrixBlock) 0 "uProj" MemberName 44(MatrixBlock) 1 "uWorld" Name 46 "uM" Name 65 "P" Name 70 "BufferBlock" MemberName 70(BufferBlock) 0 "p" Name 72 "uBuf" Decorate 14(oColor) Location 2 MemberDecorate 16(ColorBlock) 0 Offset 0 MemberDecorate 16(ColorBlock) 1 Offset 16 MemberDecorate 16(ColorBlock) 2 Offset 32 MemberDecorate 16(ColorBlock) 3 Offset 48 Decorate 16(ColorBlock) Block Decorate 18(uC) DescriptorSet 0 Decorate 18(uC) Binding 1 MemberDecorate 26(SecondaryColorBlock) 0 Offset 0 Decorate 26(SecondaryColorBlock) BufferBlock Decorate 28(uColorBuf) DescriptorSet 0 Decorate 28(uColorBuf) Binding 0 Decorate 32(Vertex) Block Decorate 34(oV) Location 0 MemberDecorate 40(gl_PerVertex) 0 BuiltIn Position MemberDecorate 40(gl_PerVertex) 1 BuiltIn PointSize MemberDecorate 40(gl_PerVertex) 2 BuiltIn ClipDistance Decorate 40(gl_PerVertex) Block MemberDecorate 44(MatrixBlock) 0 ColMajor MemberDecorate 44(MatrixBlock) 0 Offset 0 MemberDecorate 44(MatrixBlock) 0 MatrixStride 16 MemberDecorate 44(MatrixBlock) 1 ColMajor MemberDecorate 44(MatrixBlock) 1 Offset 64 MemberDecorate 44(MatrixBlock) 1 MatrixStride 16 Decorate 44(MatrixBlock) Block Decorate 46(uM) DescriptorSet 0 Decorate 46(uM) Binding 0 Decorate 65(P) Location 0 MemberDecorate 70(BufferBlock) 0 ColMajor MemberDecorate 70(BufferBlock) 0 Offset 0 MemberDecorate 70(BufferBlock) 0 MatrixStride 16 Decorate 70(BufferBlock) BufferBlock Decorate 72(uBuf) DescriptorSet 0 Decorate 72(uBuf) Binding 1 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 4 8: TypeFunction 7(fvec4) 13: TypePointer Output 7(fvec4) 14(oColor): 13(ptr) Variable Output 15: TypeInt 32 0 16(ColorBlock): TypeStruct 7(fvec4) 15(int) 7(fvec4) 7(fvec4) 17: TypePointer Uniform 16(ColorBlock) 18(uC): 17(ptr) Variable Uniform 19: TypeInt 32 1 20: 19(int) Constant 0 21: TypePointer Uniform 7(fvec4) 26(SecondaryColorBlock): TypeStruct 7(fvec4) 27: TypePointer Uniform 26(SecondaryColorBlock) 28(uColorBuf): 27(ptr) Variable Uniform 32(Vertex): TypeStruct 7(fvec4) 7(fvec4) 33: TypePointer Output 32(Vertex) 34(oV): 33(ptr) Variable Output 38: 15(int) Constant 1 39: TypeArray 6(float) 38 40(gl_PerVertex): TypeStruct 7(fvec4) 6(float) 39 41: TypePointer Output 40(gl_PerVertex) 42: 41(ptr) Variable Output 43: TypeMatrix 7(fvec4) 4 44(MatrixBlock): TypeStruct 43 43 45: TypePointer Uniform 44(MatrixBlock) 46(uM): 45(ptr) Variable Uniform 47: TypePointer Uniform 43 53: 19(int) Constant 2 58: 6(float) Constant 1065353216 59: 7(fvec4) ConstantComposite 58 58 58 58 61: 19(int) Constant 1 64: TypePointer Input 7(fvec4) 65(P): 64(ptr) Variable Input 70(BufferBlock): TypeStruct 43 71: TypePointer Uniform 70(BufferBlock) 72(uBuf): 71(ptr) Variable Uniform 4(main): 2 Function None 3 5: Label 22: 21(ptr) AccessChain 18(uC) 20 23: 7(fvec4) Load 22 24: 7(fvec4) FunctionCall 9(getColor2() 25: 7(fvec4) FMul 23 24 29: 21(ptr) AccessChain 28(uColorBuf) 20 30: 7(fvec4) Load 29 31: 7(fvec4) FMul 25 30 Store 14(oColor) 31 35: 21(ptr) AccessChain 18(uC) 20 36: 7(fvec4) Load 35 37: 13(ptr) AccessChain 34(oV) 20 Store 37 36 48: 47(ptr) AccessChain 46(uM) 20 49: 43 Load 48 50: 7(fvec4) FunctionCall 11(getWorld() 51: 7(fvec4) MatrixTimesVector 49 50 52: 13(ptr) AccessChain 42 20 Store 52 51 Return FunctionEnd 9(getColor2(): 7(fvec4) Function None 8 10: Label 54: 21(ptr) AccessChain 18(uC) 53 55: 7(fvec4) Load 54 ReturnValue 55 FunctionEnd 11(getWorld(): 7(fvec4) Function None 8 12: Label 60: 13(ptr) AccessChain 34(oV) 20 Store 60 59 62: 47(ptr) AccessChain 46(uM) 61 63: 43 Load 62 66: 7(fvec4) Load 65(P) 67: 7(fvec4) MatrixTimesVector 63 66 ReturnValue 67 FunctionEnd