spv.texture.vert
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 150

                              Capability Shader
                              Capability Sampled1D
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Vertex 4  "main" 39 148
                              Source GLSL 140
                              Name 4  "main"
                              Name 8  "lod"
                              Name 10  "coords1D"
                              Name 14  "coords3D"
                              Name 20  "coords4D"
                              Name 23  "color"
                              Name 29  "texSampler1D"
                              Name 39  "coords2D"
                              Name 56  "texSampler2D"
                              Name 80  "texSampler3D"
                              Name 96  "texSamplerCube"
                              Name 106  "shadowSampler1D"
                              Name 118  "shadowSampler2D"
                              Name 148  "gl_Position"
                              Decorate 29(texSampler1D) DescriptorSet 0
                              Decorate 29(texSampler1D) Binding 0
                              Decorate 39(coords2D) Location 0
                              Decorate 56(texSampler2D) DescriptorSet 0
                              Decorate 56(texSampler2D) Binding 1
                              Decorate 80(texSampler3D) DescriptorSet 0
                              Decorate 80(texSampler3D) Binding 2
                              Decorate 96(texSamplerCube) DescriptorSet 0
                              Decorate 96(texSamplerCube) Binding 3
                              Decorate 106(shadowSampler1D) DescriptorSet 0
                              Decorate 106(shadowSampler1D) Binding 4
                              Decorate 118(shadowSampler2D) DescriptorSet 0
                              Decorate 118(shadowSampler2D) Binding 5
                              Decorate 148(gl_Position) BuiltIn Position
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypePointer Function 6(float)
               9:    6(float) Constant 1077936128
              11:    6(float) Constant 1071971828
              12:             TypeVector 6(float) 3
              13:             TypePointer Function 12(fvec3)
              15:    6(float) Constant 1076753334
              16:    6(float) Constant 1079836148
              17:   12(fvec3) ConstantComposite 11 15 16
              18:             TypeVector 6(float) 4
              19:             TypePointer Function 18(fvec4)
              21:    6(float) Constant 1073741824
              22:   18(fvec4) ConstantComposite 11 15 16 21
              24:    6(float) Constant 0
              25:   18(fvec4) ConstantComposite 24 24 24 24
              26:             TypeImage 6(float) 1D sampled format:Unknown
              27:             TypeSampledImage 26
              28:             TypePointer UniformConstant 27
29(texSampler1D):     28(ptr) Variable UniformConstant
              37:             TypeVector 6(float) 2
              38:             TypePointer Input 37(fvec2)
    39(coords2D):     38(ptr) Variable Input
              53:             TypeImage 6(float) 2D sampled format:Unknown
              54:             TypeSampledImage 53
              55:             TypePointer UniformConstant 54
56(texSampler2D):     55(ptr) Variable UniformConstant
              77:             TypeImage 6(float) 3D sampled format:Unknown
              78:             TypeSampledImage 77
              79:             TypePointer UniformConstant 78
80(texSampler3D):     79(ptr) Variable UniformConstant
              93:             TypeImage 6(float) Cube sampled format:Unknown
              94:             TypeSampledImage 93
              95:             TypePointer UniformConstant 94
96(texSamplerCube):     95(ptr) Variable UniformConstant
             103:             TypeImage 6(float) 1D depth sampled format:Unknown
             104:             TypeSampledImage 103
             105:             TypePointer UniformConstant 104
106(shadowSampler1D):    105(ptr) Variable UniformConstant
             115:             TypeImage 6(float) 2D depth sampled format:Unknown
             116:             TypeSampledImage 115
             117:             TypePointer UniformConstant 116
118(shadowSampler2D):    117(ptr) Variable UniformConstant
             147:             TypePointer Output 18(fvec4)
148(gl_Position):    147(ptr) Variable Output
         4(main):           2 Function None 3
               5:             Label
          8(lod):      7(ptr) Variable Function
    10(coords1D):      7(ptr) Variable Function
    14(coords3D):     13(ptr) Variable Function
    20(coords4D):     19(ptr) Variable Function
       23(color):     19(ptr) Variable Function
                              Store 8(lod) 9
                              Store 10(coords1D) 11
                              Store 14(coords3D) 17
                              Store 20(coords4D) 22
                              Store 23(color) 25
              30:          27 Load 29(texSampler1D)
              31:    6(float) Load 10(coords1D)
              32:    6(float) Load 8(lod)
              33:   18(fvec4) ImageSampleExplicitLod 30 31 Lod 32
              34:   18(fvec4) Load 23(color)
              35:   18(fvec4) FAdd 34 33
                              Store 23(color) 35
              36:          27 Load 29(texSampler1D)
              40:   37(fvec2) Load 39(coords2D)
              41:    6(float) Load 8(lod)
              42:   18(fvec4) ImageSampleProjExplicitLod 36 40 Lod 41
              43:   18(fvec4) Load 23(color)
              44:   18(fvec4) FAdd 43 42
                              Store 23(color) 44
              45:          27 Load 29(texSampler1D)
              46:   18(fvec4) Load 20(coords4D)
              47:    6(float) Load 8(lod)
              48:    6(float) CompositeExtract 46 3
              49:   18(fvec4) CompositeInsert 48 46 1
              50:   18(fvec4) ImageSampleProjExplicitLod 45 49 Lod 47
              51:   18(fvec4) Load 23(color)
              52:   18(fvec4) FAdd 51 50
                              Store 23(color) 52
              57:          54 Load 56(texSampler2D)
              58:   37(fvec2) Load 39(coords2D)
              59:    6(float) Load 8(lod)
              60:   18(fvec4) ImageSampleExplicitLod 57 58 Lod 59
              61:   18(fvec4) Load 23(color)
              62:   18(fvec4) FAdd 61 60
                              Store 23(color) 62
              63:          54 Load 56(texSampler2D)
              64:   12(fvec3) Load 14(coords3D)
              65:    6(float) Load 8(lod)
              66:   18(fvec4) ImageSampleProjExplicitLod 63 64 Lod 65
              67:   18(fvec4) Load 23(color)
              68:   18(fvec4) FAdd 67 66
                              Store 23(color) 68
              69:          54 Load 56(texSampler2D)
              70:   18(fvec4) Load 20(coords4D)
              71:    6(float) Load 8(lod)
              72:    6(float) CompositeExtract 70 3
              73:   18(fvec4) CompositeInsert 72 70 2
              74:   18(fvec4) ImageSampleProjExplicitLod 69 73 Lod 71
              75:   18(fvec4) Load 23(color)
              76:   18(fvec4) FAdd 75 74
                              Store 23(color) 76
              81:          78 Load 80(texSampler3D)
              82:   12(fvec3) Load 14(coords3D)
              83:    6(float) Load 8(lod)
              84:   18(fvec4) ImageSampleExplicitLod 81 82 Lod 83
              85:   18(fvec4) Load 23(color)
              86:   18(fvec4) FAdd 85 84
                              Store 23(color) 86
              87:          78 Load 80(texSampler3D)
              88:   18(fvec4) Load 20(coords4D)
              89:    6(float) Load 8(lod)
              90:   18(fvec4) ImageSampleProjExplicitLod 87 88 Lod 89
              91:   18(fvec4) Load 23(color)
              92:   18(fvec4) FAdd 91 90
                              Store 23(color) 92
              97:          94 Load 96(texSamplerCube)
              98:   12(fvec3) Load 14(coords3D)
              99:    6(float) Load 8(lod)
             100:   18(fvec4) ImageSampleExplicitLod 97 98 Lod 99
             101:   18(fvec4) Load 23(color)
             102:   18(fvec4) FAdd 101 100
                              Store 23(color) 102
             107:         104 Load 106(shadowSampler1D)
             108:   12(fvec3) Load 14(coords3D)
             109:    6(float) Load 8(lod)
             110:    6(float) CompositeExtract 108 2
             111:    6(float) ImageSampleDrefExplicitLod 107 108 110 Lod 109
             112:   18(fvec4) Load 23(color)
             113:   18(fvec4) CompositeConstruct 111 111 111 111
             114:   18(fvec4) FAdd 112 113
                              Store 23(color) 114
             119:         116 Load 118(shadowSampler2D)
             120:   12(fvec3) Load 14(coords3D)
             121:    6(float) Load 8(lod)
             122:    6(float) CompositeExtract 120 2
             123:    6(float) ImageSampleDrefExplicitLod 119 120 122 Lod 121
             124:   18(fvec4) Load 23(color)
             125:   18(fvec4) CompositeConstruct 123 123 123 123
             126:   18(fvec4) FAdd 124 125
                              Store 23(color) 126
             127:         104 Load 106(shadowSampler1D)
             128:   18(fvec4) Load 20(coords4D)
             129:    6(float) Load 8(lod)
             130:    6(float) CompositeExtract 128 2
             131:    6(float) CompositeExtract 128 3
             132:   18(fvec4) CompositeInsert 131 128 1
             133:    6(float) ImageSampleProjDrefExplicitLod 127 132 130 Lod 129
             134:   18(fvec4) Load 23(color)
             135:   18(fvec4) CompositeConstruct 133 133 133 133
             136:   18(fvec4) FAdd 134 135
                              Store 23(color) 136
             137:         116 Load 118(shadowSampler2D)
             138:   18(fvec4) Load 20(coords4D)
             139:    6(float) Load 8(lod)
             140:    6(float) CompositeExtract 138 2
             141:    6(float) CompositeExtract 138 3
             142:   18(fvec4) CompositeInsert 141 138 2
             143:    6(float) ImageSampleProjDrefExplicitLod 137 142 140 Lod 139
             144:   18(fvec4) Load 23(color)
             145:   18(fvec4) CompositeConstruct 143 143 143 143
             146:   18(fvec4) FAdd 144 145
                              Store 23(color) 146
             149:   18(fvec4) Load 23(color)
                              Store 148(gl_Position) 149
                              Return
                              FunctionEnd
