SPV: projective texturing: move the project coordinate.

SPV doesn't allow gaps in the components of the texturing coordinate.
It also removes the shadow reference.
So, close up the components so all used components are together.
This commit is contained in:
John Kessenich 2016-06-16 14:06:26 -06:00
parent 76d4dfcd51
commit 65336488a8
5 changed files with 1908 additions and 1858 deletions

View file

@ -9,13 +9,13 @@ Linked fragment stage:
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 291
// Id's are bound by 305
Capability Shader
Capability Sampled1D
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 47 277 280 283 289 290
EntryPoint Fragment 4 "main" 47 291 294 297 303 304
ExecutionMode 4 OriginUpperLeft
Source GLSL 140
Name 4 "main"
@ -29,26 +29,26 @@ Linked fragment stage:
Name 26 "color"
Name 32 "texSampler1D"
Name 47 "coords2D"
Name 72 "texSampler2D"
Name 98 "texSampler3D"
Name 124 "texSamplerCube"
Name 139 "shadowSampler1D"
Name 158 "shadowSampler2D"
Name 207 "iCoords2D"
Name 212 "iLod"
Name 222 "gradX"
Name 225 "gradY"
Name 277 "gl_FragColor"
Name 280 "u"
Name 283 "blend"
Name 289 "scale"
Name 290 "t"
Name 76 "texSampler2D"
Name 104 "texSampler3D"
Name 130 "texSamplerCube"
Name 145 "shadowSampler1D"
Name 164 "shadowSampler2D"
Name 221 "iCoords2D"
Name 226 "iLod"
Name 236 "gradX"
Name 239 "gradY"
Name 291 "gl_FragColor"
Name 294 "u"
Name 297 "blend"
Name 303 "scale"
Name 304 "t"
Decorate 32(texSampler1D) DescriptorSet 0
Decorate 72(texSampler2D) DescriptorSet 0
Decorate 98(texSampler3D) DescriptorSet 0
Decorate 124(texSamplerCube) DescriptorSet 0
Decorate 139(shadowSampler1D) DescriptorSet 0
Decorate 158(shadowSampler2D) DescriptorSet 0
Decorate 76(texSampler2D) DescriptorSet 0
Decorate 104(texSampler3D) DescriptorSet 0
Decorate 130(texSamplerCube) DescriptorSet 0
Decorate 145(shadowSampler1D) DescriptorSet 0
Decorate 164(shadowSampler2D) DescriptorSet 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
@ -73,46 +73,46 @@ Linked fragment stage:
45: TypeVector 6(float) 2
46: TypePointer Input 45(fvec2)
47(coords2D): 46(ptr) Variable Input
69: TypeImage 6(float) 2D sampled format:Unknown
70: TypeSampledImage 69
71: TypePointer UniformConstant 70
72(texSampler2D): 71(ptr) Variable UniformConstant
95: TypeImage 6(float) 3D sampled format:Unknown
96: TypeSampledImage 95
97: TypePointer UniformConstant 96
98(texSampler3D): 97(ptr) Variable UniformConstant
121: TypeImage 6(float) Cube sampled format:Unknown
122: TypeSampledImage 121
123: TypePointer UniformConstant 122
124(texSamplerCube): 123(ptr) Variable UniformConstant
136: TypeImage 6(float) 1D depth sampled format:Unknown
137: TypeSampledImage 136
138: TypePointer UniformConstant 137
139(shadowSampler1D): 138(ptr) Variable UniformConstant
155: TypeImage 6(float) 2D depth sampled format:Unknown
156: TypeSampledImage 155
157: TypePointer UniformConstant 156
158(shadowSampler2D): 157(ptr) Variable UniformConstant
204: TypeInt 32 1
205: TypeVector 204(int) 2
206: TypePointer Function 205(ivec2)
208: 204(int) Constant 0
209: 204(int) Constant 5
210: 205(ivec2) ConstantComposite 208 209
211: TypePointer Function 204(int)
213: 204(int) Constant 1
221: TypePointer Function 45(fvec2)
250: 204(int) Constant 3
251: 204(int) Constant 4294967289
252: 205(ivec2) ConstantComposite 250 251
276: TypePointer Output 22(fvec4)
277(gl_FragColor): 276(ptr) Variable Output
279: TypePointer Input 22(fvec4)
280(u): 279(ptr) Variable Input
282: TypePointer Input 6(float)
283(blend): 282(ptr) Variable Input
289(scale): 46(ptr) Variable Input
290(t): 46(ptr) Variable Input
73: TypeImage 6(float) 2D sampled format:Unknown
74: TypeSampledImage 73
75: TypePointer UniformConstant 74
76(texSampler2D): 75(ptr) Variable UniformConstant
101: TypeImage 6(float) 3D sampled format:Unknown
102: TypeSampledImage 101
103: TypePointer UniformConstant 102
104(texSampler3D): 103(ptr) Variable UniformConstant
127: TypeImage 6(float) Cube sampled format:Unknown
128: TypeSampledImage 127
129: TypePointer UniformConstant 128
130(texSamplerCube): 129(ptr) Variable UniformConstant
142: TypeImage 6(float) 1D depth sampled format:Unknown
143: TypeSampledImage 142
144: TypePointer UniformConstant 143
145(shadowSampler1D): 144(ptr) Variable UniformConstant
161: TypeImage 6(float) 2D depth sampled format:Unknown
162: TypeSampledImage 161
163: TypePointer UniformConstant 162
164(shadowSampler2D): 163(ptr) Variable UniformConstant
218: TypeInt 32 1
219: TypeVector 218(int) 2
220: TypePointer Function 219(ivec2)
222: 218(int) Constant 0
223: 218(int) Constant 5
224: 219(ivec2) ConstantComposite 222 223
225: TypePointer Function 218(int)
227: 218(int) Constant 1
235: TypePointer Function 45(fvec2)
264: 218(int) Constant 3
265: 218(int) Constant 4294967289
266: 219(ivec2) ConstantComposite 264 265
290: TypePointer Output 22(fvec4)
291(gl_FragColor): 290(ptr) Variable Output
293: TypePointer Input 22(fvec4)
294(u): 293(ptr) Variable Input
296: TypePointer Input 6(float)
297(blend): 296(ptr) Variable Input
303(scale): 46(ptr) Variable Input
304(t): 46(ptr) Variable Input
4(main): 2 Function None 3
5: Label
8(blendscale): 7(ptr) Variable Function
@ -123,10 +123,10 @@ Linked fragment stage:
18(coords3D): 17(ptr) Variable Function
24(coords4D): 23(ptr) Variable Function
26(color): 23(ptr) Variable Function
207(iCoords2D): 206(ptr) Variable Function
212(iLod): 211(ptr) Variable Function
222(gradX): 221(ptr) Variable Function
225(gradY): 221(ptr) Variable Function
221(iCoords2D): 220(ptr) Variable Function
226(iLod): 225(ptr) Variable Function
236(gradX): 235(ptr) Variable Function
239(gradY): 235(ptr) Variable Function
Store 8(blendscale) 9
Store 10(bias) 11
Store 12(lod) 13
@ -156,230 +156,244 @@ Linked fragment stage:
Store 26(color) 51
52: 30 Load 32(texSampler1D)
53: 22(fvec4) Load 24(coords4D)
54: 22(fvec4) ImageSampleProjImplicitLod 52 53
55: 22(fvec4) Load 26(color)
56: 22(fvec4) FAdd 55 54
Store 26(color) 56
57: 30 Load 32(texSampler1D)
58: 45(fvec2) Load 47(coords2D)
59: 6(float) Load 10(bias)
60: 22(fvec4) ImageSampleProjImplicitLod 57 58 Bias 59
61: 22(fvec4) Load 26(color)
62: 22(fvec4) FAdd 61 60
Store 26(color) 62
63: 30 Load 32(texSampler1D)
64: 22(fvec4) Load 24(coords4D)
65: 6(float) Load 10(bias)
66: 22(fvec4) ImageSampleProjImplicitLod 63 64 Bias 65
67: 22(fvec4) Load 26(color)
68: 22(fvec4) FAdd 67 66
Store 26(color) 68
73: 70 Load 72(texSampler2D)
74: 45(fvec2) Load 47(coords2D)
75: 22(fvec4) ImageSampleImplicitLod 73 74
76: 22(fvec4) Load 26(color)
77: 22(fvec4) FAdd 76 75
Store 26(color) 77
78: 70 Load 72(texSampler2D)
79: 45(fvec2) Load 47(coords2D)
80: 6(float) Load 10(bias)
81: 22(fvec4) ImageSampleImplicitLod 78 79 Bias 80
82: 22(fvec4) Load 26(color)
83: 22(fvec4) FAdd 82 81
Store 26(color) 83
84: 70 Load 72(texSampler2D)
85: 16(fvec3) Load 18(coords3D)
86: 22(fvec4) ImageSampleProjImplicitLod 84 85
87: 22(fvec4) Load 26(color)
88: 22(fvec4) FAdd 87 86
Store 26(color) 88
89: 70 Load 72(texSampler2D)
90: 22(fvec4) Load 24(coords4D)
91: 6(float) Load 10(bias)
92: 22(fvec4) ImageSampleProjImplicitLod 89 90 Bias 91
93: 22(fvec4) Load 26(color)
94: 22(fvec4) FAdd 93 92
Store 26(color) 94
99: 96 Load 98(texSampler3D)
100: 16(fvec3) Load 18(coords3D)
101: 22(fvec4) ImageSampleImplicitLod 99 100
102: 22(fvec4) Load 26(color)
103: 22(fvec4) FAdd 102 101
Store 26(color) 103
104: 96 Load 98(texSampler3D)
105: 16(fvec3) Load 18(coords3D)
106: 6(float) Load 10(bias)
107: 22(fvec4) ImageSampleImplicitLod 104 105 Bias 106
54: 6(float) CompositeExtract 53 3
55: 22(fvec4) CompositeInsert 54 53 1
56: 22(fvec4) ImageSampleProjImplicitLod 52 55
57: 22(fvec4) Load 26(color)
58: 22(fvec4) FAdd 57 56
Store 26(color) 58
59: 30 Load 32(texSampler1D)
60: 45(fvec2) Load 47(coords2D)
61: 6(float) Load 10(bias)
62: 22(fvec4) ImageSampleProjImplicitLod 59 60 Bias 61
63: 22(fvec4) Load 26(color)
64: 22(fvec4) FAdd 63 62
Store 26(color) 64
65: 30 Load 32(texSampler1D)
66: 22(fvec4) Load 24(coords4D)
67: 6(float) Load 10(bias)
68: 6(float) CompositeExtract 66 3
69: 22(fvec4) CompositeInsert 68 66 1
70: 22(fvec4) ImageSampleProjImplicitLod 65 69 Bias 67
71: 22(fvec4) Load 26(color)
72: 22(fvec4) FAdd 71 70
Store 26(color) 72
77: 74 Load 76(texSampler2D)
78: 45(fvec2) Load 47(coords2D)
79: 22(fvec4) ImageSampleImplicitLod 77 78
80: 22(fvec4) Load 26(color)
81: 22(fvec4) FAdd 80 79
Store 26(color) 81
82: 74 Load 76(texSampler2D)
83: 45(fvec2) Load 47(coords2D)
84: 6(float) Load 10(bias)
85: 22(fvec4) ImageSampleImplicitLod 82 83 Bias 84
86: 22(fvec4) Load 26(color)
87: 22(fvec4) FAdd 86 85
Store 26(color) 87
88: 74 Load 76(texSampler2D)
89: 16(fvec3) Load 18(coords3D)
90: 22(fvec4) ImageSampleProjImplicitLod 88 89
91: 22(fvec4) Load 26(color)
92: 22(fvec4) FAdd 91 90
Store 26(color) 92
93: 74 Load 76(texSampler2D)
94: 22(fvec4) Load 24(coords4D)
95: 6(float) Load 10(bias)
96: 6(float) CompositeExtract 94 3
97: 22(fvec4) CompositeInsert 96 94 2
98: 22(fvec4) ImageSampleProjImplicitLod 93 97 Bias 95
99: 22(fvec4) Load 26(color)
100: 22(fvec4) FAdd 99 98
Store 26(color) 100
105: 102 Load 104(texSampler3D)
106: 16(fvec3) Load 18(coords3D)
107: 22(fvec4) ImageSampleImplicitLod 105 106
108: 22(fvec4) Load 26(color)
109: 22(fvec4) FAdd 108 107
Store 26(color) 109
110: 96 Load 98(texSampler3D)
111: 22(fvec4) Load 24(coords4D)
112: 22(fvec4) ImageSampleProjImplicitLod 110 111
113: 22(fvec4) Load 26(color)
114: 22(fvec4) FAdd 113 112
Store 26(color) 114
115: 96 Load 98(texSampler3D)
116: 22(fvec4) Load 24(coords4D)
117: 6(float) Load 10(bias)
118: 22(fvec4) ImageSampleProjImplicitLod 115 116 Bias 117
110: 102 Load 104(texSampler3D)
111: 16(fvec3) Load 18(coords3D)
112: 6(float) Load 10(bias)
113: 22(fvec4) ImageSampleImplicitLod 110 111 Bias 112
114: 22(fvec4) Load 26(color)
115: 22(fvec4) FAdd 114 113
Store 26(color) 115
116: 102 Load 104(texSampler3D)
117: 22(fvec4) Load 24(coords4D)
118: 22(fvec4) ImageSampleProjImplicitLod 116 117
119: 22(fvec4) Load 26(color)
120: 22(fvec4) FAdd 119 118
Store 26(color) 120
125: 122 Load 124(texSamplerCube)
126: 16(fvec3) Load 18(coords3D)
127: 22(fvec4) ImageSampleImplicitLod 125 126
128: 22(fvec4) Load 26(color)
129: 22(fvec4) FAdd 128 127
Store 26(color) 129
130: 122 Load 124(texSamplerCube)
131: 16(fvec3) Load 18(coords3D)
132: 6(float) Load 10(bias)
133: 22(fvec4) ImageSampleImplicitLod 130 131 Bias 132
121: 102 Load 104(texSampler3D)
122: 22(fvec4) Load 24(coords4D)
123: 6(float) Load 10(bias)
124: 22(fvec4) ImageSampleProjImplicitLod 121 122 Bias 123
125: 22(fvec4) Load 26(color)
126: 22(fvec4) FAdd 125 124
Store 26(color) 126
131: 128 Load 130(texSamplerCube)
132: 16(fvec3) Load 18(coords3D)
133: 22(fvec4) ImageSampleImplicitLod 131 132
134: 22(fvec4) Load 26(color)
135: 22(fvec4) FAdd 134 133
Store 26(color) 135
140: 137 Load 139(shadowSampler1D)
141: 16(fvec3) Load 18(coords3D)
142: 6(float) CompositeExtract 141 2
143: 6(float) ImageSampleDrefImplicitLod 140 141 142
144: 22(fvec4) Load 26(color)
145: 22(fvec4) CompositeConstruct 143 143 143 143
146: 22(fvec4) FAdd 144 145
Store 26(color) 146
147: 137 Load 139(shadowSampler1D)
148: 16(fvec3) Load 18(coords3D)
149: 6(float) Load 10(bias)
150: 6(float) CompositeExtract 148 2
151: 6(float) ImageSampleDrefImplicitLod 147 148 150 Bias 149
152: 22(fvec4) Load 26(color)
153: 22(fvec4) CompositeConstruct 151 151 151 151
154: 22(fvec4) FAdd 152 153
Store 26(color) 154
159: 156 Load 158(shadowSampler2D)
160: 16(fvec3) Load 18(coords3D)
161: 6(float) CompositeExtract 160 2
162: 6(float) ImageSampleDrefImplicitLod 159 160 161
163: 22(fvec4) Load 26(color)
164: 22(fvec4) CompositeConstruct 162 162 162 162
165: 22(fvec4) FAdd 163 164
Store 26(color) 165
166: 156 Load 158(shadowSampler2D)
167: 16(fvec3) Load 18(coords3D)
168: 6(float) Load 10(bias)
169: 6(float) CompositeExtract 167 2
170: 6(float) ImageSampleDrefImplicitLod 166 167 169 Bias 168
171: 22(fvec4) Load 26(color)
172: 22(fvec4) CompositeConstruct 170 170 170 170
173: 22(fvec4) FAdd 171 172
Store 26(color) 173
174: 137 Load 139(shadowSampler1D)
175: 22(fvec4) Load 24(coords4D)
176: 6(float) CompositeExtract 175 2
177: 6(float) ImageSampleProjDrefImplicitLod 174 175 176
178: 22(fvec4) Load 26(color)
179: 22(fvec4) CompositeConstruct 177 177 177 177
180: 22(fvec4) FAdd 178 179
Store 26(color) 180
181: 137 Load 139(shadowSampler1D)
182: 22(fvec4) Load 24(coords4D)
183: 6(float) Load 10(bias)
184: 6(float) CompositeExtract 182 2
185: 6(float) ImageSampleProjDrefImplicitLod 181 182 184 Bias 183
136: 128 Load 130(texSamplerCube)
137: 16(fvec3) Load 18(coords3D)
138: 6(float) Load 10(bias)
139: 22(fvec4) ImageSampleImplicitLod 136 137 Bias 138
140: 22(fvec4) Load 26(color)
141: 22(fvec4) FAdd 140 139
Store 26(color) 141
146: 143 Load 145(shadowSampler1D)
147: 16(fvec3) Load 18(coords3D)
148: 6(float) CompositeExtract 147 2
149: 6(float) ImageSampleDrefImplicitLod 146 147 148
150: 22(fvec4) Load 26(color)
151: 22(fvec4) CompositeConstruct 149 149 149 149
152: 22(fvec4) FAdd 150 151
Store 26(color) 152
153: 143 Load 145(shadowSampler1D)
154: 16(fvec3) Load 18(coords3D)
155: 6(float) Load 10(bias)
156: 6(float) CompositeExtract 154 2
157: 6(float) ImageSampleDrefImplicitLod 153 154 156 Bias 155
158: 22(fvec4) Load 26(color)
159: 22(fvec4) CompositeConstruct 157 157 157 157
160: 22(fvec4) FAdd 158 159
Store 26(color) 160
165: 162 Load 164(shadowSampler2D)
166: 16(fvec3) Load 18(coords3D)
167: 6(float) CompositeExtract 166 2
168: 6(float) ImageSampleDrefImplicitLod 165 166 167
169: 22(fvec4) Load 26(color)
170: 22(fvec4) CompositeConstruct 168 168 168 168
171: 22(fvec4) FAdd 169 170
Store 26(color) 171
172: 162 Load 164(shadowSampler2D)
173: 16(fvec3) Load 18(coords3D)
174: 6(float) Load 10(bias)
175: 6(float) CompositeExtract 173 2
176: 6(float) ImageSampleDrefImplicitLod 172 173 175 Bias 174
177: 22(fvec4) Load 26(color)
178: 22(fvec4) CompositeConstruct 176 176 176 176
179: 22(fvec4) FAdd 177 178
Store 26(color) 179
180: 143 Load 145(shadowSampler1D)
181: 22(fvec4) Load 24(coords4D)
182: 6(float) CompositeExtract 181 2
183: 6(float) CompositeExtract 181 3
184: 22(fvec4) CompositeInsert 183 181 1
185: 6(float) ImageSampleProjDrefImplicitLod 180 184 182
186: 22(fvec4) Load 26(color)
187: 22(fvec4) CompositeConstruct 185 185 185 185
188: 22(fvec4) FAdd 186 187
Store 26(color) 188
189: 156 Load 158(shadowSampler2D)
189: 143 Load 145(shadowSampler1D)
190: 22(fvec4) Load 24(coords4D)
191: 6(float) CompositeExtract 190 2
192: 6(float) ImageSampleProjDrefImplicitLod 189 190 191
193: 22(fvec4) Load 26(color)
194: 22(fvec4) CompositeConstruct 192 192 192 192
195: 22(fvec4) FAdd 193 194
Store 26(color) 195
196: 156 Load 158(shadowSampler2D)
197: 22(fvec4) Load 24(coords4D)
198: 6(float) Load 10(bias)
199: 6(float) CompositeExtract 197 2
200: 6(float) ImageSampleProjDrefImplicitLod 196 197 199 Bias 198
201: 22(fvec4) Load 26(color)
202: 22(fvec4) CompositeConstruct 200 200 200 200
203: 22(fvec4) FAdd 201 202
Store 26(color) 203
Store 207(iCoords2D) 210
Store 212(iLod) 213
214: 70 Load 72(texSampler2D)
215: 205(ivec2) Load 207(iCoords2D)
216: 204(int) Load 212(iLod)
217: 69 Image 214
218: 22(fvec4) ImageFetch 217 215 Lod 216
219: 22(fvec4) Load 26(color)
220: 22(fvec4) FAdd 219 218
Store 26(color) 220
223: 45(fvec2) Load 47(coords2D)
224: 45(fvec2) DPdx 223
Store 222(gradX) 224
226: 45(fvec2) Load 47(coords2D)
227: 45(fvec2) DPdy 226
Store 225(gradY) 227
228: 70 Load 72(texSampler2D)
229: 45(fvec2) Load 47(coords2D)
230: 45(fvec2) Load 222(gradX)
231: 45(fvec2) Load 225(gradY)
232: 22(fvec4) ImageSampleExplicitLod 228 229 Grad 230 231
191: 6(float) Load 10(bias)
192: 6(float) CompositeExtract 190 2
193: 6(float) CompositeExtract 190 3
194: 22(fvec4) CompositeInsert 193 190 1
195: 6(float) ImageSampleProjDrefImplicitLod 189 194 192 Bias 191
196: 22(fvec4) Load 26(color)
197: 22(fvec4) CompositeConstruct 195 195 195 195
198: 22(fvec4) FAdd 196 197
Store 26(color) 198
199: 162 Load 164(shadowSampler2D)
200: 22(fvec4) Load 24(coords4D)
201: 6(float) CompositeExtract 200 2
202: 6(float) CompositeExtract 200 3
203: 22(fvec4) CompositeInsert 202 200 2
204: 6(float) ImageSampleProjDrefImplicitLod 199 203 201
205: 22(fvec4) Load 26(color)
206: 22(fvec4) CompositeConstruct 204 204 204 204
207: 22(fvec4) FAdd 205 206
Store 26(color) 207
208: 162 Load 164(shadowSampler2D)
209: 22(fvec4) Load 24(coords4D)
210: 6(float) Load 10(bias)
211: 6(float) CompositeExtract 209 2
212: 6(float) CompositeExtract 209 3
213: 22(fvec4) CompositeInsert 212 209 2
214: 6(float) ImageSampleProjDrefImplicitLod 208 213 211 Bias 210
215: 22(fvec4) Load 26(color)
216: 22(fvec4) CompositeConstruct 214 214 214 214
217: 22(fvec4) FAdd 215 216
Store 26(color) 217
Store 221(iCoords2D) 224
Store 226(iLod) 227
228: 74 Load 76(texSampler2D)
229: 219(ivec2) Load 221(iCoords2D)
230: 218(int) Load 226(iLod)
231: 73 Image 228
232: 22(fvec4) ImageFetch 231 229 Lod 230
233: 22(fvec4) Load 26(color)
234: 22(fvec4) FAdd 233 232
Store 26(color) 234
235: 70 Load 72(texSampler2D)
236: 45(fvec2) Load 47(coords2D)
237: 6(float) Load 14(proj)
238: 6(float) CompositeExtract 236 0
239: 6(float) CompositeExtract 236 1
240: 16(fvec3) CompositeConstruct 238 239 237
241: 45(fvec2) Load 222(gradX)
242: 45(fvec2) Load 225(gradY)
243: 22(fvec4) ImageSampleProjExplicitLod 235 240 Grad 241 242
244: 22(fvec4) Load 26(color)
245: 22(fvec4) FAdd 244 243
Store 26(color) 245
246: 70 Load 72(texSampler2D)
247: 45(fvec2) Load 47(coords2D)
248: 45(fvec2) Load 222(gradX)
249: 45(fvec2) Load 225(gradY)
253: 22(fvec4) ImageSampleExplicitLod 246 247 Grad ConstOffset 248 249 252
254: 22(fvec4) Load 26(color)
255: 22(fvec4) FAdd 254 253
Store 26(color) 255
256: 70 Load 72(texSampler2D)
257: 16(fvec3) Load 18(coords3D)
258: 45(fvec2) Load 222(gradX)
259: 45(fvec2) Load 225(gradY)
260: 22(fvec4) ImageSampleProjExplicitLod 256 257 Grad ConstOffset 258 259 252
261: 22(fvec4) Load 26(color)
262: 22(fvec4) FAdd 261 260
Store 26(color) 262
263: 156 Load 158(shadowSampler2D)
264: 45(fvec2) Load 47(coords2D)
265: 6(float) Load 12(lod)
266: 6(float) CompositeExtract 264 0
267: 6(float) CompositeExtract 264 1
268: 16(fvec3) CompositeConstruct 266 267 265
269: 45(fvec2) Load 222(gradX)
270: 45(fvec2) Load 225(gradY)
271: 6(float) CompositeExtract 268 2
272: 6(float) ImageSampleDrefExplicitLod 263 268 271 Grad 269 270
273: 22(fvec4) Load 26(color)
274: 22(fvec4) CompositeConstruct 272 272 272 272
275: 22(fvec4) FAdd 273 274
Store 26(color) 275
278: 22(fvec4) Load 26(color)
281: 22(fvec4) Load 280(u)
284: 6(float) Load 283(blend)
285: 6(float) Load 8(blendscale)
286: 6(float) FMul 284 285
287: 22(fvec4) CompositeConstruct 286 286 286 286
288: 22(fvec4) ExtInst 1(GLSL.std.450) 46(FMix) 278 281 287
Store 277(gl_FragColor) 288
237: 45(fvec2) Load 47(coords2D)
238: 45(fvec2) DPdx 237
Store 236(gradX) 238
240: 45(fvec2) Load 47(coords2D)
241: 45(fvec2) DPdy 240
Store 239(gradY) 241
242: 74 Load 76(texSampler2D)
243: 45(fvec2) Load 47(coords2D)
244: 45(fvec2) Load 236(gradX)
245: 45(fvec2) Load 239(gradY)
246: 22(fvec4) ImageSampleExplicitLod 242 243 Grad 244 245
247: 22(fvec4) Load 26(color)
248: 22(fvec4) FAdd 247 246
Store 26(color) 248
249: 74 Load 76(texSampler2D)
250: 45(fvec2) Load 47(coords2D)
251: 6(float) Load 14(proj)
252: 6(float) CompositeExtract 250 0
253: 6(float) CompositeExtract 250 1
254: 16(fvec3) CompositeConstruct 252 253 251
255: 45(fvec2) Load 236(gradX)
256: 45(fvec2) Load 239(gradY)
257: 22(fvec4) ImageSampleProjExplicitLod 249 254 Grad 255 256
258: 22(fvec4) Load 26(color)
259: 22(fvec4) FAdd 258 257
Store 26(color) 259
260: 74 Load 76(texSampler2D)
261: 45(fvec2) Load 47(coords2D)
262: 45(fvec2) Load 236(gradX)
263: 45(fvec2) Load 239(gradY)
267: 22(fvec4) ImageSampleExplicitLod 260 261 Grad ConstOffset 262 263 266
268: 22(fvec4) Load 26(color)
269: 22(fvec4) FAdd 268 267
Store 26(color) 269
270: 74 Load 76(texSampler2D)
271: 16(fvec3) Load 18(coords3D)
272: 45(fvec2) Load 236(gradX)
273: 45(fvec2) Load 239(gradY)
274: 22(fvec4) ImageSampleProjExplicitLod 270 271 Grad ConstOffset 272 273 266
275: 22(fvec4) Load 26(color)
276: 22(fvec4) FAdd 275 274
Store 26(color) 276
277: 162 Load 164(shadowSampler2D)
278: 45(fvec2) Load 47(coords2D)
279: 6(float) Load 12(lod)
280: 6(float) CompositeExtract 278 0
281: 6(float) CompositeExtract 278 1
282: 16(fvec3) CompositeConstruct 280 281 279
283: 45(fvec2) Load 236(gradX)
284: 45(fvec2) Load 239(gradY)
285: 6(float) CompositeExtract 282 2
286: 6(float) ImageSampleDrefExplicitLod 277 282 285 Grad 283 284
287: 22(fvec4) Load 26(color)
288: 22(fvec4) CompositeConstruct 286 286 286 286
289: 22(fvec4) FAdd 287 288
Store 26(color) 289
292: 22(fvec4) Load 26(color)
295: 22(fvec4) Load 294(u)
298: 6(float) Load 297(blend)
299: 6(float) Load 8(blendscale)
300: 6(float) FMul 298 299
301: 22(fvec4) CompositeConstruct 300 300 300 300
302: 22(fvec4) ExtInst 1(GLSL.std.450) 46(FMix) 292 295 301
Store 291(gl_FragColor) 302
Return
FunctionEnd