yum-mirror/glslang

git clone https://git.yummers.dev/yum-mirror/glslang

spencer-lunargFix ShaderDebugInfo having invalid line numbers in 1.0e4c40890

main
81.2 KiB1374 linesraw
1spv.debuginfo.hlsl.frag
2// Module Version 10000
3// Generated by (magic number): 8000b
4// Id's are bound by 942
5
6                              Capability Shader
7                              Capability ImageQuery
8                              Extension  "SPV_KHR_non_semantic_info"
9               1:             ExtInstImport  "NonSemantic.Shader.DebugInfo.100"
10               3:             ExtInstImport  "GLSL.std.450"
11                              MemoryModel Logical GLSL450
12                              EntryPoint Fragment 6  "main" 935 938
13                              ExecutionMode 6 OriginUpperLeft
14               2:             String  "spv.debuginfo.hlsl.frag"
15               9:             String  "float"
16              12:             String  "uint"
17              38:             String  "textureProj"
18              41:             String  "/*
19The MIT License (MIT)
20
21Copyright (c) 2022 Google LLC
22Copyright (c) 2022 Sascha Willems
23
24Permission is hereby granted, free of charge, to any person obtaining a copy
25of this software and associated documentation files (the "Software"), to deal
26in the Software without restriction, including without limitation the rights
27to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
28copies of the Software, and to permit persons to whom the Software is
29furnished to do so, subject to the following conditions:
30
31The above copyright notice and this permission notice shall be included in all
32copies or substantial portions of the Software.
33
34THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
35IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
36FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
37AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
38LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
39OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
40SOFTWARE.
41*/
42
43Texture2D textureposition : register(t1);
44SamplerState samplerposition : register(s1);
45Texture2D textureNormal : register(t2);
46SamplerState samplerNormal : register(s2);
47Texture2D textureAlbedo : register(t3);
48SamplerState samplerAlbedo : register(s3);
49// Depth from the light's point of view
50//layout (binding = 5) uniform sampler2DShadow samplerShadowMap;
51Texture2DArray textureShadowMap : register(t5);
52SamplerState samplerShadowMap : register(s5);
53
54#define LIGHT_COUNT 3
55#define SHADOW_FACTOR 0.25
56#define AMBIENT_LIGHT 0.1
57#define USE_PCF
58
59struct Light
60{
61	float4 position;
62	float4 target;
63	float4 color;
64	float4x4 viewMatrix;
65};
66
67struct UBO
68{
69	float4 viewPos;
70	Light lights[LIGHT_COUNT];
71	int useShadows;
72	int displayDebugTarget;
73};
74
75cbuffer ubo : register(b4) { UBO ubo; }
76
77float textureProj(float4 P, float layer, float2 offset)
78{
79	float shadow = 1.0;
80	float4 shadowCoord = P / P.w;
81	shadowCoord.xy = shadowCoord.xy * 0.5 + 0.5;
82
83	if (shadowCoord.z > -1.0 && shadowCoord.z < 1.0)
84	{
85		float dist = textureShadowMap.Sample(samplerShadowMap, float3(shadowCoord.xy + offset, layer)).r;
86		if (shadowCoord.w > 0.0 && dist < shadowCoord.z)
87		{
88			shadow = SHADOW_FACTOR;
89		}
90	}
91	return shadow;
92}
93
94float filterPCF(float4 sc, float layer)
95{
96	int2 texDim; int elements; int levels;
97	textureShadowMap.GetDimensions(0, texDim.x, texDim.y, elements, levels);
98	float scale = 1.5;
99	float dx = scale * 1.0 / float(texDim.x);
100	float dy = scale * 1.0 / float(texDim.y);
101
102	float shadowFactor = 0.0;
103	int count = 0;
104	int range = 1;
105
106	for (int x = -range; x <= range; x++)
107	{
108		for (int y = -range; y <= range; y++)
109		{
110			shadowFactor += textureProj(sc, layer, float2(dx*x, dy*y));
111			count++;
112		}
113
114	}
115	return shadowFactor / count;
116}
117
118float3 shadow(float3 fragcolor, float3 fragPos) {
119	for (int i = 0; i < LIGHT_COUNT; ++i)
120	{
121		float4 shadowClip = mul(ubo.lights[i].viewMatrix, float4(fragPos.xyz, 1.0));
122
123		float shadowFactor;
124		#ifdef USE_PCF
125			shadowFactor= filterPCF(shadowClip, i);
126		#else
127			shadowFactor = textureProj(shadowClip, i, float2(0.0, 0.0));
128		#endif
129
130		fragcolor *= shadowFactor;
131	}
132	return fragcolor;
133}
134
135float4 main([[vk::location(0)]] float2 inUV : TEXCOORD0) : SV_TARGET
136{
137	// Get G-Buffer values
138	float3 fragPos = textureposition.Sample(samplerposition, inUV).rgb;
139	float3 normal = textureNormal.Sample(samplerNormal, inUV).rgb;
140	float4 albedo = textureAlbedo.Sample(samplerAlbedo, inUV);
141
142	float3 fragcolor;
143
144	// Debug display
145	if (ubo.displayDebugTarget > 0) {
146		switch (ubo.displayDebugTarget) {
147			case 1: 
148				fragcolor.rgb = shadow(float3(1.0, 1.0, 1.0), fragPos);
149				break;
150			case 2: 
151				fragcolor.rgb = fragPos;
152				break;
153			case 3: 
154				fragcolor.rgb = normal;
155				break;
156			case 4: 
157				fragcolor.rgb = albedo.rgb;
158				break;
159			case 5: 
160				fragcolor.rgb = albedo.aaa;
161				break;
162		}		
163		return float4(fragcolor, 1.0);
164	}
165
166	// Ambient part
167	fragcolor  = albedo.rgb * AMBIENT_LIGHT;
168
169	float3 N = normalize(normal);
170
171	for(int i = 0; i < LIGHT_COUNT; ++i)
172	{
173		// Vector to light
174		float3 L = ubo.lights[i].position.xyz - fragPos;
175		// Distance from light to fragment position
176		float dist = length(L);
177		L = normalize(L);
178
179		// Viewer to fragment
180		float3 V = ubo.viewPos.xyz - fragPos;
181		V = normalize(V);
182
183		float lightCosInnerAngle = cos(radians(15.0));
184		float lightCosOuterAngle = cos(radians(25.0));
185		float lightRange = 100.0;
186
187		// Direction vector from source to target
188		float3 dir = normalize(ubo.lights[i].position.xyz - ubo.lights[i].target.xyz);
189
190		// Dual cone spot light with smooth transition between inner and outer angle
191		float cosDir = dot(L, dir);
192		float spotEffect = smoothstep(lightCosOuterAngle, lightCosInnerAngle, cosDir);
193		float heightAttenuation = smoothstep(lightRange, 0.0f, dist);
194
195		// Diffuse lighting
196		float NdotL = max(0.0, dot(N, L));
197		float3 diff = NdotL.xxx;
198
199		// Specular lighting
200		float3 R = reflect(-L, N);
201		float NdotR = max(0.0, dot(R, V));
202		float3 spec = (pow(NdotR, 16.0) * albedo.a * 2.5).xxx;
203
204		fragcolor += float3((diff + spec) * spotEffect * heightAttenuation) * ubo.lights[i].color.rgb * albedo.rgb;
205	}
206
207	// Shadow calculations in a separate pass
208	if (ubo.useShadows > 0)
209	{
210		fragcolor = shadow(fragcolor, fragPos);
211	}
212
213	return float4(fragcolor, 1);
214}
215"
216              47:             String  "P"
217              53:             String  "layer"
218              56:             String  "offset"
219              64:             String  "filterPCF"
220              68:             String  "sc"
221              84:             String  "shadow"
222              88:             String  "fragcolor"
223              93:             String  "fragPos"
224             100:             String  "@main"
225             104:             String  "inUV"
226             119:             String  "shadowCoord"
227             146:             String  "bool"
228             158:             String  "dist"
229             165:             String  "type.2d.image"
230             166:             String  "@type.2d.image"
231             172:             String  "textureShadowMap"
232             177:             String  "type.sampler"
233             178:             String  "@type.sampler"
234             183:             String  "samplerShadowMap"
235             187:             String  "type.sampled.image"
236             188:             String  "@type.sampled.image"
237             229:             String  "int"
238             237:             String  "texDim"
239             246:             String  "elements"
240             250:             String  "levels"
241             258:             String  "sizeQueryTemp"
242             282:             String  "scale"
243             289:             String  "dx"
244             301:             String  "dy"
245             313:             String  "shadowFactor"
246             319:             String  "count"
247             326:             String  "range"
248             336:             String  "x"
249             360:             String  "y"
250             428:             String  "i"
251             447:             String  "shadowClip"
252             462:             String  "position"
253             466:             String  "target"
254             470:             String  "color"
255             474:             String  "viewMatrix"
256             478:             String  "Light"
257             483:             String  "viewPos"
258             487:             String  "lights"
259             490:             String  "useShadows"
260             493:             String  "displayDebugTarget"
261             497:             String  "UBO"
262             500:             String  "ubo"
263             508:             String  ""
264             559:             String  "textureposition"
265             564:             String  "samplerposition"
266             574:             String  "normal"
267             580:             String  "textureNormal"
268             585:             String  "samplerNormal"
269             593:             String  "albedo"
270             599:             String  "textureAlbedo"
271             604:             String  "samplerAlbedo"
272             695:             String  "N"
273             723:             String  "L"
274             749:             String  "V"
275             764:             String  "lightCosInnerAngle"
276             771:             String  "lightCosOuterAngle"
277             778:             String  "lightRange"
278             785:             String  "dir"
279             801:             String  "cosDir"
280             810:             String  "spotEffect"
281             820:             String  "heightAttenuation"
282             829:             String  "NdotL"
283             839:             String  "diff"
284             847:             String  "R"
285             857:             String  "NdotR"
286             867:             String  "spec"
287                              Name 6  "main"
288                              Name 36  "textureProj(vf4;f1;vf2;"
289                              Name 33  "P"
290                              Name 34  "layer"
291                              Name 35  "offset"
292                              Name 62  "filterPCF(vf4;f1;"
293                              Name 60  "sc"
294                              Name 61  "layer"
295                              Name 82  "shadow(vf3;vf3;"
296                              Name 80  "fragcolor"
297                              Name 81  "fragPos"
298                              Name 98  "@main(vf2;"
299                              Name 97  "inUV"
300                              Name 110  "shadow"
301                              Name 117  "shadowCoord"
302                              Name 156  "dist"
303                              Name 170  "textureShadowMap"
304                              Name 181  "samplerShadowMap"
305                              Name 235  "texDim"
306                              Name 244  "elements"
307                              Name 248  "levels"
308                              Name 256  "sizeQueryTemp"
309                              Name 280  "scale"
310                              Name 287  "dx"
311                              Name 299  "dy"
312                              Name 311  "shadowFactor"
313                              Name 317  "count"
314                              Name 324  "range"
315                              Name 334  "x"
316                              Name 358  "y"
317                              Name 391  "param"
318                              Name 393  "param"
319                              Name 395  "param"
320                              Name 426  "i"
321                              Name 445  "shadowClip"
322                              Name 460  "Light"
323                              MemberName 460(Light) 0  "position"
324                              MemberName 460(Light) 1  "target"
325                              MemberName 460(Light) 2  "color"
326                              MemberName 460(Light) 3  "viewMatrix"
327                              Name 481  "UBO"
328                              MemberName 481(UBO) 0  "viewPos"
329                              MemberName 481(UBO) 1  "lights"
330                              MemberName 481(UBO) 2  "useShadows"
331                              MemberName 481(UBO) 3  "displayDebugTarget"
332                              Name 498  "ubo"
333                              MemberName 498(ubo) 0  "ubo"
334                              Name 506  ""
335                              Name 515  "shadowFactor"
336                              Name 524  "param"
337                              Name 526  "param"
338                              Name 547  "fragPos"
339                              Name 557  "textureposition"
340                              Name 562  "samplerposition"
341                              Name 572  "normal"
342                              Name 578  "textureNormal"
343                              Name 583  "samplerNormal"
344                              Name 591  "albedo"
345                              Name 597  "textureAlbedo"
346                              Name 602  "samplerAlbedo"
347                              Name 609  "fragcolor"
348                              Name 636  "param"
349                              Name 640  "param"
350                              Name 693  "N"
351                              Name 704  "i"
352                              Name 721  "L"
353                              Name 736  "dist"
354                              Name 747  "V"
355                              Name 762  "lightCosInnerAngle"
356                              Name 769  "lightCosOuterAngle"
357                              Name 776  "lightRange"
358                              Name 783  "dir"
359                              Name 799  "cosDir"
360                              Name 808  "spotEffect"
361                              Name 818  "heightAttenuation"
362                              Name 827  "NdotL"
363                              Name 837  "diff"
364                              Name 845  "R"
365                              Name 855  "NdotR"
366                              Name 865  "spec"
367                              Name 913  "param"
368                              Name 918  "param"
369                              Name 933  "inUV"
370                              Name 935  "inUV"
371                              Name 938  "@entryPointOutput"
372                              Name 939  "param"
373                              Decorate 170(textureShadowMap) Binding 5
374                              Decorate 170(textureShadowMap) DescriptorSet 0
375                              Decorate 181(samplerShadowMap) Binding 5
376                              Decorate 181(samplerShadowMap) DescriptorSet 0
377                              MemberDecorate 460(Light) 0 Offset 0
378                              MemberDecorate 460(Light) 1 Offset 16
379                              MemberDecorate 460(Light) 2 Offset 32
380                              MemberDecorate 460(Light) 3 RowMajor
381                              MemberDecorate 460(Light) 3 MatrixStride 16
382                              MemberDecorate 460(Light) 3 Offset 48
383                              Decorate 479 ArrayStride 112
384                              MemberDecorate 481(UBO) 0 Offset 0
385                              MemberDecorate 481(UBO) 1 Offset 16
386                              MemberDecorate 481(UBO) 2 Offset 352
387                              MemberDecorate 481(UBO) 3 Offset 356
388                              Decorate 498(ubo) Block
389                              MemberDecorate 498(ubo) 0 Offset 0
390                              Decorate 506 Binding 4
391                              Decorate 506 DescriptorSet 0
392                              Decorate 557(textureposition) Binding 1
393                              Decorate 557(textureposition) DescriptorSet 0
394                              Decorate 562(samplerposition) Binding 1
395                              Decorate 562(samplerposition) DescriptorSet 0
396                              Decorate 578(textureNormal) Binding 2
397                              Decorate 578(textureNormal) DescriptorSet 0
398                              Decorate 583(samplerNormal) Binding 2
399                              Decorate 583(samplerNormal) DescriptorSet 0
400                              Decorate 597(textureAlbedo) Binding 3
401                              Decorate 597(textureAlbedo) DescriptorSet 0
402                              Decorate 602(samplerAlbedo) Binding 3
403                              Decorate 602(samplerAlbedo) DescriptorSet 0
404                              Decorate 935(inUV) Location 0
405                              Decorate 938(@entryPointOutput) Location 0
406               4:             TypeVoid
407               5:             TypeFunction 4
408               8:             TypeFloat 32
409              11:             TypeInt 32 0
410              14:     11(int) Constant 32
411              15:     11(int) Constant 6
412              16:     11(int) Constant 0
413              13:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 12 14 15 16
414              17:     11(int) Constant 3
415              10:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 9 14 17 16
416              18:             TypeVector 8(float) 4
417              19:     11(int) Constant 4
418              20:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 19
419              21:             TypePointer Function 18(fvec4)
420              22:     11(int) Constant 7
421              23:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 22 16
422              24:             TypePointer Function 8(float)
423              25:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 22 16
424              26:             TypeVector 8(float) 2
425              27:     11(int) Constant 2
426              28:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 27
427              29:             TypePointer Function 26(fvec2)
428              30:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 28 22 16
429              31:             TypeFunction 8(float) 21(ptr) 24(ptr) 29(ptr)
430              32:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 10 20 10 28
431              40:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 2 41
432              42:     11(int) Constant 61
433              44:     11(int) Constant 1
434              45:     11(int) Constant 5
435              43:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 44 19 40 45
436              39:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 38 32 40 42 16 43 38 17 42
437              46:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 47 20 40 42 16 39 19 44
438              49:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression)
439              52:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 53 10 40 42 16 39 19 27
440              55:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 56 28 40 42 16 39 19 17
441              58:             TypeFunction 8(float) 21(ptr) 24(ptr)
442              59:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 10 20 10
443              66:     11(int) Constant 78
444              65:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 64 59 40 66 16 43 64 17 66
445              67:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 68 20 40 66 16 65 19 44
446              72:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 53 10 40 66 16 65 19 27
447              74:             TypeVector 8(float) 3
448              75:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 17
449              76:             TypePointer Function 74(fvec3)
450              77:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 75 22 16
451              78:             TypeFunction 74(fvec3) 76(ptr) 76(ptr)
452              79:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 75 75 75
453              86:     11(int) Constant 101
454              85:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 84 79 40 86 16 43 84 17 86
455              87:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 88 75 40 86 16 85 19 44
456              92:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 93 75 40 86 16 85 19 27
457              95:             TypeFunction 18(fvec4) 29(ptr)
458              96:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 20 28
459             102:     11(int) Constant 119
460             101:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 100 96 40 102 16 43 100 17 102
461             103:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 104 28 40 102 16 101 19 44
462             109:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 39
463             112:     11(int) Constant 62
464             111:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 84 10 40 112 16 109 19
465             116:    8(float) Constant 1065353216
466             120:     11(int) Constant 63
467             118:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 119 20 40 120 16 109 19
468             130:     11(int) Constant 64
469             132:    8(float) Constant 1056964608
470             142:     11(int) Constant 66
471             144:    8(float) Constant 3212836864
472             145:             TypeBool
473             147:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 146 14 27 16
474             155:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 109
475             159:     11(int) Constant 68
476             157:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 158 10 40 159 16 155 19
477             163:             TypeImage 8(float) 2D array sampled format:Unknown
478             167:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone)
479             164:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 165 44 40 159 16 43 166 167 17
480             168:             TypePointer UniformConstant 163
481             169:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 164 16 16
482170(textureShadowMap):    168(ptr) Variable UniformConstant
483             173:     11(int) Constant 8
484             171:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 172 164 40 159 16 43 172 170(textureShadowMap) 173
485             175:             TypeSampler
486             176:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 177 44 40 159 16 43 178 167 17
487             179:             TypePointer UniformConstant 175
488             180:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 176 16 16
489181(samplerShadowMap):    179(ptr) Variable UniformConstant
490             182:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 183 176 40 159 16 43 183 181(samplerShadowMap) 173
491             185:             TypeSampledImage 163
492             186:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 187 44 40 159 16 43 188 167 17
493             202:     11(int) Constant 69
494             204:    8(float) Constant 0
495             213:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 155
496             214:    8(float) Constant 1048576000
497             217:     11(int) Constant 71
498             221:     11(int) Constant 74
499             227:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 65
500             228:             TypeInt 32 1
501             230:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 229 14 19 16
502             231:             TypeVector 228(int) 2
503             232:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 230 27
504             233:             TypePointer Function 231(ivec2)
505             234:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 232 22 16
506             238:     11(int) Constant 79
507             236:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 237 232 40 238 16 227 19
508             242:             TypePointer Function 228(int)
509             243:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 230 22 16
510             245:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 246 230 40 238 16 227 19
511             249:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 250 230 40 238 16 227 19
512             252:             TypeVector 11(int) 3
513             253:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 13 17
514             254:             TypePointer Function 252(ivec3)
515             255:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 253 22 16
516             259:     11(int) Constant 80
517             257:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 258 253 40 259 16 227 19
518             264:             TypePointer Function 11(int)
519             265:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 13 22 16
520             283:     11(int) Constant 81
521             281:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 282 10 40 283 16 227 19
522             286:    8(float) Constant 1069547520
523             290:     11(int) Constant 82
524             288:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 289 10 40 290 16 227 19
525             302:     11(int) Constant 83
526             300:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 301 10 40 302 16 227 19
527             314:     11(int) Constant 85
528             312:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 313 10 40 314 16 227 19
529             320:     11(int) Constant 86
530             318:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 319 230 40 320 16 227 19
531             323:    228(int) Constant 0
532             327:     11(int) Constant 87
533             325:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 326 230 40 327 16 227 19
534             330:    228(int) Constant 1
535             332:     11(int) Constant 89
536             333:     11(int) Constant 11
537             331:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 332 333 227
538             335:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 336 230 40 332 16 331 19
539             354:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 331
540             356:     11(int) Constant 91
541             357:     11(int) Constant 12
542             355:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 356 357 354
543             359:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 360 230 40 356 16 355 19
544             378:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 355
545             382:     11(int) Constant 93
546             401:     11(int) Constant 94
547             414:     11(int) Constant 98
548             423:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 85
549             425:     11(int) Constant 102
550             424:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 425 333 423
551             427:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 428 230 40 425 16 424 19
552             442:    228(int) Constant 3
553             444:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 424
554             448:     11(int) Constant 104
555             446:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 447 20 40 448 16 444 19
556             457:             TypeMatrix 18(fvec4) 4
557             459:   145(bool) ConstantTrue
558             458:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 20 19 459
559      460(Light):             TypeStruct 18(fvec4) 18(fvec4) 18(fvec4) 457
560             463:     11(int) Constant 44
561             464:     11(int) Constant 17
562             461:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 462 20 40 463 464 16 16 17
563             467:     11(int) Constant 45
564             468:     11(int) Constant 15
565             465:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 466 20 40 467 468 16 16 17
566             471:     11(int) Constant 46
567             472:     11(int) Constant 14
568             469:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 470 20 40 471 472 16 16 17
569             475:     11(int) Constant 47
570             476:     11(int) Constant 21
571             473:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 474 458 40 475 476 16 16 17
572             477:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 478 44 40 448 16 43 478 16 17 461 465 469 473
573             479:             TypeArray 460(Light) 17
574             480:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 477 17
575        481(UBO):             TypeStruct 18(fvec4) 479 228(int) 228(int)
576             484:     11(int) Constant 52
577             485:     11(int) Constant 16
578             482:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 483 20 40 484 485 16 16 17
579             488:     11(int) Constant 53
580             486:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 487 480 40 488 472 16 16 17
581             491:     11(int) Constant 54
582             489:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 490 230 40 491 485 16 16 17
583             494:     11(int) Constant 55
584             495:     11(int) Constant 24
585             492:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 493 230 40 494 495 16 16 17
586             496:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 497 44 40 448 16 43 497 16 17 482 486 489 492
587        498(ubo):             TypeStruct 481(UBO)
588             501:     11(int) Constant 58
589             502:     11(int) Constant 37
590             499:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 500 496 40 501 502 16 16 17
591             503:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 500 44 40 448 16 43 500 16 17 499
592             504:             TypePointer Uniform 498(ubo)
593             505:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 503 27 16
594             506:    504(ptr) Variable Uniform
595             507:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 508 503 40 448 16 43 508 506 173
596             510:             TypePointer Uniform 457
597             511:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 458 27 16
598             517:     11(int) Constant 106
599             516:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 313 10 40 517 16 444 19
600             522:     11(int) Constant 108
601             530:     11(int) Constant 113
602             540:     11(int) Constant 115
603             546:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 101
604             549:     11(int) Constant 121
605             548:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 93 75 40 549 16 546 19
606             553:             TypeImage 8(float) 2D sampled format:Unknown
607             554:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 165 44 40 549 16 43 166 167 17
608             555:             TypePointer UniformConstant 553
609             556:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 554 16 16
610557(textureposition):    555(ptr) Variable UniformConstant
611             558:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 559 554 40 549 16 43 559 557(textureposition) 173
612             561:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 177 44 40 549 16 43 178 167 17
613562(samplerposition):    179(ptr) Variable UniformConstant
614             563:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 564 561 40 549 16 43 564 562(samplerposition) 173
615             566:             TypeSampledImage 553
616             567:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 187 44 40 549 16 43 188 167 17
617             575:     11(int) Constant 122
618             573:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 574 75 40 575 16 546 19
619578(textureNormal):    555(ptr) Variable UniformConstant
620             579:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 580 554 40 575 16 43 580 578(textureNormal) 173
621             582:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 177 44 40 575 16 43 178 167 17
622583(samplerNormal):    179(ptr) Variable UniformConstant
623             584:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 585 582 40 575 16 43 585 583(samplerNormal) 173
624             594:     11(int) Constant 123
625             592:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 593 20 40 594 16 546 19
626597(textureAlbedo):    555(ptr) Variable UniformConstant
627             598:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 599 554 40 594 16 43 599 597(textureAlbedo) 173
628             601:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 177 44 40 594 16 43 178 167 17
629602(samplerAlbedo):    179(ptr) Variable UniformConstant
630             603:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 604 601 40 594 16 43 604 602(samplerAlbedo) 173
631             611:     11(int) Constant 125
632             610:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 88 75 40 611 16 546 19
633             614:             TypePointer Uniform 228(int)
634             615:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 230 27 16
635             618:     11(int) Constant 128
636             623:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 546
637             627:     11(int) Constant 129
638             635:   74(fvec3) ConstantComposite 116 116 116
639             639:     11(int) Constant 131
640             644:     11(int) Constant 132
641             649:     11(int) Constant 134
642             651:     11(int) Constant 135
643             656:     11(int) Constant 137
644             658:     11(int) Constant 138
645             663:     11(int) Constant 140
646             666:     11(int) Constant 141
647             671:     11(int) Constant 143
648             674:     11(int) Constant 144
649             680:     11(int) Constant 146
650             689:     11(int) Constant 150
651             691:    8(float) Constant 1036831949
652             696:     11(int) Constant 152
653             694:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 695 75 40 696 16 546 19
654             702:     11(int) Constant 154
655             703:     11(int) Constant 10
656             701:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 702 703 546
657             705:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 428 230 40 702 16 701 19
658             720:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 701
659             724:     11(int) Constant 157
660             722:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 723 75 40 724 16 720 19
661             729:             TypePointer Uniform 18(fvec4)
662             730:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 27 16
663             738:     11(int) Constant 159
664             737:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 158 10 40 738 16 720 19
665             745:     11(int) Constant 160
666             750:     11(int) Constant 163
667             748:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 749 75 40 750 16 720 19
668             760:     11(int) Constant 164
669             765:     11(int) Constant 166
670             763:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 764 10 40 765 16 720 19
671             768:    8(float) Constant 1064781546
672             772:     11(int) Constant 167
673             770:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 771 10 40 772 16 720 19
674             775:    8(float) Constant 1063781322
675             779:     11(int) Constant 168
676             777:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 778 10 40 779 16 720 19
677             782:    8(float) Constant 1120403456
678             786:     11(int) Constant 171
679             784:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 785 75 40 786 16 720 19
680             802:     11(int) Constant 174
681             800:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 801 10 40 802 16 720 19
682             811:     11(int) Constant 175
683             809:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 810 10 40 811 16 720 19
684             821:     11(int) Constant 176
685             819:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 820 10 40 821 16 720 19
686             830:     11(int) Constant 179
687             828:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 829 10 40 830 16 720 19
688             840:     11(int) Constant 180
689             838:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 839 75 40 840 16 720 19
690             848:     11(int) Constant 183
691             846:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 847 75 40 848 16 720 19
692             858:     11(int) Constant 184
693             856:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 857 10 40 858 16 720 19
694             868:     11(int) Constant 185
695             866:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 867 75 40 868 16 720 19
696             872:    8(float) Constant 1098907648
697             877:    8(float) Constant 1075838976
698             882:     11(int) Constant 187
699             890:    228(int) Constant 2
700             907:     11(int) Constant 191
701             912:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 546
702             917:     11(int) Constant 193
703             924:     11(int) Constant 196
704             934:             TypePointer Input 26(fvec2)
705       935(inUV):    934(ptr) Variable Input
706             937:             TypePointer Output 18(fvec4)
707938(@entryPointOutput):    937(ptr) Variable Output
708         6(main):           4 Function None 5
709               7:             Label
710       933(inUV):     29(ptr) Variable Function
711      939(param):     29(ptr) Variable Function
712             936:   26(fvec2) Load 935(inUV)
713                              Store 933(inUV) 936
714             940:   26(fvec2) Load 933(inUV)
715                              Store 939(param) 940
716             941:   18(fvec4) FunctionCall 98(@main(vf2;) 939(param)
717                              Store 938(@entryPointOutput) 941
718                              Return
719                              FunctionEnd
72036(textureProj(vf4;f1;vf2;):    8(float) Function None 31
721           33(P):     21(ptr) FunctionParameter
722       34(layer):     24(ptr) FunctionParameter
723      35(offset):     29(ptr) FunctionParameter
724              37:             Label
725     110(shadow):     24(ptr) Variable Function
726117(shadowCoord):     21(ptr) Variable Function
727       156(dist):     24(ptr) Variable Function
728              50:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 39
729              51:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 42 42 16 16
730              48:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 46 33(P) 49
731              54:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 52 34(layer) 49
732              57:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 55 35(offset) 49
733             108:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 39 36(textureProj(vf4;f1;vf2;)
734             114:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 109
735             115:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 112 112 16 16
736             113:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 111 110(shadow) 49
737                              Store 110(shadow) 116
738             122:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 120 120 16 16
739             121:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 118 117(shadowCoord) 49
740             123:   18(fvec4) Load 33(P)
741             124:     24(ptr) AccessChain 33(P) 17
742             125:    8(float) Load 124
743             126:   18(fvec4) CompositeConstruct 125 125 125 125
744             127:   18(fvec4) FDiv 123 126
745                              Store 117(shadowCoord) 127
746             129:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 130 130 16 16
747             128:   18(fvec4) Load 117(shadowCoord)
748             131:   26(fvec2) VectorShuffle 128 128 0 1
749             133:   26(fvec2) VectorTimesScalar 131 132
750             134:   26(fvec2) CompositeConstruct 132 132
751             135:   26(fvec2) FAdd 133 134
752             136:     24(ptr) AccessChain 117(shadowCoord) 16
753             137:    8(float) CompositeExtract 135 0
754                              Store 136 137
755             138:     24(ptr) AccessChain 117(shadowCoord) 44
756             139:    8(float) CompositeExtract 135 1
757                              Store 138 139
758             141:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 142 142 16 16
759             140:     24(ptr) AccessChain 117(shadowCoord) 27
760             143:    8(float) Load 140
761             148:   145(bool) FOrdGreaterThan 143 144
762             149:     24(ptr) AccessChain 117(shadowCoord) 27
763             150:    8(float) Load 149
764             151:   145(bool) FOrdLessThan 150 116
765             152:   145(bool) LogicalAnd 148 151
766                              SelectionMerge 154 None
767                              BranchConditional 152 153 154
768             153:               Label
769             161:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 155
770             162:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 159 159 16 16
771             160:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 157 156(dist) 49
772             174:         163   Load 170(textureShadowMap)
773             184:         175   Load 181(samplerShadowMap)
774             189:         185   SampledImage 174 184
775             190:   18(fvec4)   Load 117(shadowCoord)
776             191:   26(fvec2)   VectorShuffle 190 190 0 1
777             192:   26(fvec2)   Load 35(offset)
778             193:   26(fvec2)   FAdd 191 192
779             194:    8(float)   Load 34(layer)
780             195:    8(float)   CompositeExtract 193 0
781             196:    8(float)   CompositeExtract 193 1
782             197:   74(fvec3)   CompositeConstruct 195 196 194
783             198:   18(fvec4)   ImageSampleImplicitLod 189 197
784             199:    8(float)   CompositeExtract 198 0
785                                Store 156(dist) 199
786             201:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 202 202 16 16
787             200:     24(ptr)   AccessChain 117(shadowCoord) 17
788             203:    8(float)   Load 200
789             205:   145(bool)   FOrdGreaterThan 203 204
790             206:    8(float)   Load 156(dist)
791             207:     24(ptr)   AccessChain 117(shadowCoord) 27
792             208:    8(float)   Load 207
793             209:   145(bool)   FOrdLessThan 206 208
794             210:   145(bool)   LogicalAnd 205 209
795                                SelectionMerge 212 None
796                                BranchConditional 210 211 212
797             211:                 Label
798             215:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 213
799             216:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 217 217 16 16
800                                  Store 110(shadow) 214
801                                  Branch 212
802             212:               Label
803                                Branch 154
804             154:             Label
805             219:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 109
806             220:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 221 221 16 16
807             218:    8(float) Load 110(shadow)
808                              ReturnValue 218
809                              FunctionEnd
81062(filterPCF(vf4;f1;):    8(float) Function None 58
811          60(sc):     21(ptr) FunctionParameter
812       61(layer):     24(ptr) FunctionParameter
813              63:             Label
814     235(texDim):    233(ptr) Variable Function
815   244(elements):    242(ptr) Variable Function
816     248(levels):    242(ptr) Variable Function
817256(sizeQueryTemp):    254(ptr) Variable Function
818      280(scale):     24(ptr) Variable Function
819         287(dx):     24(ptr) Variable Function
820         299(dy):     24(ptr) Variable Function
821311(shadowFactor):     24(ptr) Variable Function
822      317(count):    242(ptr) Variable Function
823      324(range):    242(ptr) Variable Function
824          334(x):    242(ptr) Variable Function
825          358(y):    242(ptr) Variable Function
826      391(param):     21(ptr) Variable Function
827      393(param):     24(ptr) Variable Function
828      395(param):     29(ptr) Variable Function
829              70:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65
830              71:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 66 66 16 16
831              69:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 67 60(sc) 49
832              73:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 72 61(layer) 49
833             226:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 65 62(filterPCF(vf4;f1;)
834             240:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 227
835             241:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 238 238 16 16
836             239:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 236 235(texDim) 49
837             247:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 245 244(elements) 49
838             251:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 249 248(levels) 49
839             261:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 259 259 16 16
840             260:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 257 256(sizeQueryTemp) 49
841             262:         163 Load 170(textureShadowMap)
842             263:  252(ivec3) ImageQuerySizeLod 262 16
843                              Store 256(sizeQueryTemp) 263
844             266:    264(ptr) AccessChain 256(sizeQueryTemp) 16
845             267:     11(int) Load 266
846             268:    228(int) Bitcast 267
847             269:    242(ptr) AccessChain 235(texDim) 16
848                              Store 269 268
849             270:    264(ptr) AccessChain 256(sizeQueryTemp) 44
850             271:     11(int) Load 270
851             272:    228(int) Bitcast 271
852             273:    242(ptr) AccessChain 235(texDim) 44
853                              Store 273 272
854             274:    264(ptr) AccessChain 256(sizeQueryTemp) 27
855             275:     11(int) Load 274
856             276:    228(int) Bitcast 275
857                              Store 244(elements) 276
858             277:         163 Load 170(textureShadowMap)
859             278:     11(int) ImageQueryLevels 277
860             279:    228(int) Bitcast 278
861                              Store 248(levels) 279
862             285:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 283 283 16 16
863             284:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 281 280(scale) 49
864                              Store 280(scale) 286
865             292:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 290 290 16 16
866             291:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 288 287(dx) 49
867             293:    8(float) Load 280(scale)
868             294:    8(float) FMul 293 116
869             295:    242(ptr) AccessChain 235(texDim) 16
870             296:    228(int) Load 295
871             297:    8(float) ConvertSToF 296
872             298:    8(float) FDiv 294 297
873                              Store 287(dx) 298
874             304:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 302 302 16 16
875             303:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 300 299(dy) 49
876             305:    8(float) Load 280(scale)
877             306:    8(float) FMul 305 116
878             307:    242(ptr) AccessChain 235(texDim) 44
879             308:    228(int) Load 307
880             309:    8(float) ConvertSToF 308
881             310:    8(float) FDiv 306 309
882                              Store 299(dy) 310
883             316:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 314 314 16 16
884             315:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 312 311(shadowFactor) 49
885                              Store 311(shadowFactor) 204
886             322:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 320 320 16 16
887             321:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 318 317(count) 49
888                              Store 317(count) 323
889             329:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 327 327 16 16
890             328:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 325 324(range) 49
891                              Store 324(range) 330
892             338:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 331
893             339:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 332 332 16 16
894             337:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 335 334(x) 49
895             340:    228(int) Load 324(range)
896             341:    228(int) SNegate 340
897                              Store 334(x) 341
898                              Branch 342
899             342:             Label
900             346:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 331
901             347:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 332 332 16 16
902                              LoopMerge 344 345 None
903                              Branch 348
904             348:             Label
905             350:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 331
906             351:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 332 332 16 16
907             349:    228(int) Load 334(x)
908             352:    228(int) Load 324(range)
909             353:   145(bool) SLessThanEqual 349 352
910                              BranchConditional 353 343 344
911             343:               Label
912             362:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 355
913             363:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 356 356 16 16
914             361:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 359 358(y) 49
915             364:    228(int)   Load 324(range)
916             365:    228(int)   SNegate 364
917                                Store 358(y) 365
918                                Branch 366
919             366:               Label
920             370:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 355
921             371:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 356 356 16 16
922                                LoopMerge 368 369 None
923                                Branch 372
924             372:               Label
925             374:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 355
926             375:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 356 356 16 16
927             373:    228(int)   Load 358(y)
928             376:    228(int)   Load 324(range)
929             377:   145(bool)   SLessThanEqual 373 376
930                                BranchConditional 377 367 368
931             367:                 Label
932             380:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 378
933             381:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 382 382 16 16
934             379:    8(float)     Load 287(dx)
935             383:    228(int)     Load 334(x)
936             384:    8(float)     ConvertSToF 383
937             385:    8(float)     FMul 379 384
938             386:    8(float)     Load 299(dy)
939             387:    228(int)     Load 358(y)
940             388:    8(float)     ConvertSToF 387
941             389:    8(float)     FMul 386 388
942             390:   26(fvec2)     CompositeConstruct 385 389
943             392:   18(fvec4)     Load 60(sc)
944                                  Store 391(param) 392
945             394:    8(float)     Load 61(layer)
946                                  Store 393(param) 394
947                                  Store 395(param) 390
948             396:    8(float)     FunctionCall 36(textureProj(vf4;f1;vf2;) 391(param) 393(param) 395(param)
949             397:    8(float)     Load 311(shadowFactor)
950             398:    8(float)     FAdd 397 396
951                                  Store 311(shadowFactor) 398
952             400:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 401 401 16 16
953             399:    228(int)     Load 317(count)
954             402:    228(int)     IAdd 399 330
955                                  Store 317(count) 402
956                                  Branch 369
957             369:                 Label
958             404:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 355
959             405:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 356 356 16 16
960             403:    228(int)     Load 358(y)
961             406:    228(int)     IAdd 403 330
962                                  Store 358(y) 406
963                                  Branch 366
964             368:               Label
965                                Branch 345
966             345:               Label
967             408:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 331
968             409:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 332 332 16 16
969             407:    228(int)   Load 334(x)
970             410:    228(int)   IAdd 407 330
971                                Store 334(x) 410
972                                Branch 342
973             344:             Label
974             412:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 227
975             413:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 414 414 16 16
976             411:    8(float) Load 311(shadowFactor)
977             415:    228(int) Load 317(count)
978             416:    8(float) ConvertSToF 415
979             417:    8(float) FDiv 411 416
980                              ReturnValue 417
981                              FunctionEnd
98282(shadow(vf3;vf3;):   74(fvec3) Function None 78
983   80(fragcolor):     76(ptr) FunctionParameter
984     81(fragPos):     76(ptr) FunctionParameter
985              83:             Label
986          426(i):    242(ptr) Variable Function
987 445(shadowClip):     21(ptr) Variable Function
988515(shadowFactor):     24(ptr) Variable Function
989      524(param):     21(ptr) Variable Function
990      526(param):     24(ptr) Variable Function
991              90:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85
992              91:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 86 86 16 16
993              89:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 87 80(fragcolor) 49
994              94:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 92 81(fragPos) 49
995             422:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 85 82(shadow(vf3;vf3;)
996             430:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 424
997             431:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 425 425 16 16
998             429:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 427 426(i) 49
999                              Store 426(i) 323
1000                              Branch 432
1001             432:             Label
1002             436:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 424
1003             437:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 425 425 16 16
1004                              LoopMerge 434 435 None
1005                              Branch 438
1006             438:             Label
1007             440:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 424
1008             441:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 425 425 16 16
1009             439:    228(int) Load 426(i)
1010             443:   145(bool) SLessThan 439 442
1011                              BranchConditional 443 433 434
1012             433:               Label
1013             450:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 444
1014             451:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 448 448 16 16
1015             449:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 446 445(shadowClip) 49
1016             452:   74(fvec3)   Load 81(fragPos)
1017             453:    8(float)   CompositeExtract 452 0
1018             454:    8(float)   CompositeExtract 452 1
1019             455:    8(float)   CompositeExtract 452 2
1020             456:   18(fvec4)   CompositeConstruct 453 454 455 116
1021             509:    228(int)   Load 426(i)
1022             512:    510(ptr)   AccessChain 506 323 330 509 442
1023             513:         457   Load 512
1024             514:   18(fvec4)   VectorTimesMatrix 456 513
1025                                Store 445(shadowClip) 514
1026             519:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 517 517 16 16
1027             518:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 516 515(shadowFactor) 49
1028             521:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 522 522 16 16
1029             520:    228(int)   Load 426(i)
1030             523:    8(float)   ConvertSToF 520
1031             525:   18(fvec4)   Load 445(shadowClip)
1032                                Store 524(param) 525
1033                                Store 526(param) 523
1034             527:    8(float)   FunctionCall 62(filterPCF(vf4;f1;) 524(param) 526(param)
1035                                Store 515(shadowFactor) 527
1036             529:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 530 530 16 16
1037             528:    8(float)   Load 515(shadowFactor)
1038             531:   74(fvec3)   Load 80(fragcolor)
1039             532:   74(fvec3)   VectorTimesScalar 531 528
1040                                Store 80(fragcolor) 532
1041                                Branch 435
1042             435:               Label
1043             534:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 424
1044             535:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 425 425 16 16
1045             533:    228(int)   Load 426(i)
1046             536:    228(int)   IAdd 533 330
1047                                Store 426(i) 536
1048                                Branch 432
1049             434:             Label
1050             538:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 423
1051             539:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 540 540 16 16
1052             537:   74(fvec3) Load 80(fragcolor)
1053                              ReturnValue 537
1054                              FunctionEnd
1055  98(@main(vf2;):   18(fvec4) Function None 95
1056        97(inUV):     29(ptr) FunctionParameter
1057              99:             Label
1058    547(fragPos):     76(ptr) Variable Function
1059     572(normal):     76(ptr) Variable Function
1060     591(albedo):     21(ptr) Variable Function
1061  609(fragcolor):     76(ptr) Variable Function
1062      636(param):     76(ptr) Variable Function
1063      640(param):     76(ptr) Variable Function
1064          693(N):     76(ptr) Variable Function
1065          704(i):    242(ptr) Variable Function
1066          721(L):     76(ptr) Variable Function
1067       736(dist):     24(ptr) Variable Function
1068          747(V):     76(ptr) Variable Function
1069762(lightCosInnerAngle):     24(ptr) Variable Function
1070769(lightCosOuterAngle):     24(ptr) Variable Function
1071 776(lightRange):     24(ptr) Variable Function
1072        783(dir):     76(ptr) Variable Function
1073     799(cosDir):     24(ptr) Variable Function
1074 808(spotEffect):     24(ptr) Variable Function
1075818(heightAttenuation):     24(ptr) Variable Function
1076      827(NdotL):     24(ptr) Variable Function
1077       837(diff):     76(ptr) Variable Function
1078          845(R):     76(ptr) Variable Function
1079      855(NdotR):     24(ptr) Variable Function
1080       865(spec):     76(ptr) Variable Function
1081      913(param):     76(ptr) Variable Function
1082      918(param):     76(ptr) Variable Function
1083             106:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101
1084             107:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 102 102 16 16
1085             105:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 103 97(inUV) 49
1086             545:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 101 98(@main(vf2;)
1087             551:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 546
1088             552:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 549 549 16 16
1089             550:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 548 547(fragPos) 49
1090             560:         553 Load 557(textureposition)
1091             565:         175 Load 562(samplerposition)
1092             568:         566 SampledImage 560 565
1093             569:   26(fvec2) Load 97(inUV)
1094             570:   18(fvec4) ImageSampleImplicitLod 568 569
1095             571:   74(fvec3) VectorShuffle 570 570 0 1 2
1096                              Store 547(fragPos) 571
1097             577:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 575 575 16 16
1098             576:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 573 572(normal) 49
1099             581:         553 Load 578(textureNormal)
1100             586:         175 Load 583(samplerNormal)
1101             587:         566 SampledImage 581 586
1102             588:   26(fvec2) Load 97(inUV)
1103             589:   18(fvec4) ImageSampleImplicitLod 587 588
1104             590:   74(fvec3) VectorShuffle 589 589 0 1 2
1105                              Store 572(normal) 590
1106             596:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 594 594 16 16
1107             595:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 592 591(albedo) 49
1108             600:         553 Load 597(textureAlbedo)
1109             605:         175 Load 602(samplerAlbedo)
1110             606:         566 SampledImage 600 605
1111             607:   26(fvec2) Load 97(inUV)
1112             608:   18(fvec4) ImageSampleImplicitLod 606 607
1113                              Store 591(albedo) 608
1114             613:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 611 611 16 16
1115             612:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 610 609(fragcolor) 49
1116             617:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 618 618 16 16
1117             616:    614(ptr) AccessChain 506 323 442
1118             619:    228(int) Load 616
1119             620:   145(bool) SGreaterThan 619 323
1120                              SelectionMerge 622 None
1121                              BranchConditional 620 621 622
1122             621:               Label
1123             625:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 623
1124             626:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 627 627 16 16
1125             624:    614(ptr)   AccessChain 506 323 442
1126             628:    228(int)   Load 624
1127                                SelectionMerge 634 None
1128                                Switch 628 634 
1129                                       case 1: 629
1130                                       case 2: 630
1131                                       case 3: 631
1132                                       case 4: 632
1133                                       case 5: 633
1134             629:                 Label
1135             637:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 623
1136             638:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 639 639 16 16
1137                                  Store 636(param) 635
1138             641:   74(fvec3)     Load 547(fragPos)
1139                                  Store 640(param) 641
1140             642:   74(fvec3)     FunctionCall 82(shadow(vf3;vf3;) 636(param) 640(param)
1141                                  Store 609(fragcolor) 642
1142             643:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 644 644 16 16
1143                                  Branch 634
1144             630:                 Label
1145             647:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 623
1146             648:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 649 649 16 16
1147             646:   74(fvec3)     Load 547(fragPos)
1148                                  Store 609(fragcolor) 646
1149             650:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 651 651 16 16
1150                                  Branch 634
1151             631:                 Label
1152             654:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 623
1153             655:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 656 656 16 16
1154             653:   74(fvec3)     Load 572(normal)
1155                                  Store 609(fragcolor) 653
1156             657:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 658 658 16 16
1157                                  Branch 634
1158             632:                 Label
1159             661:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 623
1160             662:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 663 663 16 16
1161             660:   18(fvec4)     Load 591(albedo)
1162             664:   74(fvec3)     VectorShuffle 660 660 0 1 2
1163                                  Store 609(fragcolor) 664
1164             665:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 666 666 16 16
1165                                  Branch 634
1166             633:                 Label
1167             669:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 623
1168             670:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 671 671 16 16
1169             668:   18(fvec4)     Load 591(albedo)
1170             672:   74(fvec3)     VectorShuffle 668 668 3 3 3
1171                                  Store 609(fragcolor) 672
1172             673:           4     ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 674 674 16 16
1173                                  Branch 634
1174             634:               Label
1175             678:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 623
1176             679:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 680 680 16 16
1177             677:   74(fvec3)   Load 609(fragcolor)
1178             681:    8(float)   CompositeExtract 677 0
1179             682:    8(float)   CompositeExtract 677 1
1180             683:    8(float)   CompositeExtract 677 2
1181             684:   18(fvec4)   CompositeConstruct 681 682 683 116
1182                                ReturnValue 684
1183             622:             Label
1184             687:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 546
1185             688:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 689 689 16 16
1186             686:   18(fvec4) Load 591(albedo)
1187             690:   74(fvec3) VectorShuffle 686 686 0 1 2
1188             692:   74(fvec3) VectorTimesScalar 690 691
1189                              Store 609(fragcolor) 692
1190             698:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 696 696 16 16
1191             697:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 694 693(N) 49
1192             699:   74(fvec3) Load 572(normal)
1193             700:   74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 699
1194                              Store 693(N) 700
1195             707:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 701
1196             708:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 702 702 16 16
1197             706:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 705 704(i) 49
1198                              Store 704(i) 323
1199                              Branch 709
1200             709:             Label
1201             713:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 701
1202             714:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 702 702 16 16
1203                              LoopMerge 711 712 None
1204                              Branch 715
1205             715:             Label
1206             717:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 701
1207             718:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 702 702 16 16
1208             716:    228(int) Load 704(i)
1209             719:   145(bool) SLessThan 716 442
1210                              BranchConditional 719 710 711
1211             710:               Label
1212             726:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 720
1213             727:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 724 724 16 16
1214             725:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 722 721(L) 49
1215             728:    228(int)   Load 704(i)
1216             731:    729(ptr)   AccessChain 506 323 330 728 323
1217             732:   18(fvec4)   Load 731
1218             733:   74(fvec3)   VectorShuffle 732 732 0 1 2
1219             734:   74(fvec3)   Load 547(fragPos)
1220             735:   74(fvec3)   FSub 733 734
1221                                Store 721(L) 735
1222             740:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 738 738 16 16
1223             739:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 737 736(dist) 49
1224             741:   74(fvec3)   Load 721(L)
1225             742:    8(float)   ExtInst 3(GLSL.std.450) 66(Length) 741
1226                                Store 736(dist) 742
1227             744:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 745 745 16 16
1228             743:   74(fvec3)   Load 721(L)
1229             746:   74(fvec3)   ExtInst 3(GLSL.std.450) 69(Normalize) 743
1230                                Store 721(L) 746
1231             752:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 750 750 16 16
1232             751:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 748 747(V) 49
1233             753:    729(ptr)   AccessChain 506 323 323
1234             754:   18(fvec4)   Load 753
1235             755:   74(fvec3)   VectorShuffle 754 754 0 1 2
1236             756:   74(fvec3)   Load 547(fragPos)
1237             757:   74(fvec3)   FSub 755 756
1238                                Store 747(V) 757
1239             759:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 760 760 16 16
1240             758:   74(fvec3)   Load 747(V)
1241             761:   74(fvec3)   ExtInst 3(GLSL.std.450) 69(Normalize) 758
1242                                Store 747(V) 761
1243             767:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 765 765 16 16
1244             766:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 763 762(lightCosInnerAngle) 49
1245                                Store 762(lightCosInnerAngle) 768
1246             774:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 772 772 16 16
1247             773:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 770 769(lightCosOuterAngle) 49
1248                                Store 769(lightCosOuterAngle) 775
1249             781:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 779 779 16 16
1250             780:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 777 776(lightRange) 49
1251                                Store 776(lightRange) 782
1252             788:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 786 786 16 16
1253             787:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 784 783(dir) 49
1254             789:    228(int)   Load 704(i)
1255             790:    729(ptr)   AccessChain 506 323 330 789 323
1256             791:   18(fvec4)   Load 790
1257             792:   74(fvec3)   VectorShuffle 791 791 0 1 2
1258             793:    228(int)   Load 704(i)
1259             794:    729(ptr)   AccessChain 506 323 330 793 330
1260             795:   18(fvec4)   Load 794
1261             796:   74(fvec3)   VectorShuffle 795 795 0 1 2
1262             797:   74(fvec3)   FSub 792 796
1263             798:   74(fvec3)   ExtInst 3(GLSL.std.450) 69(Normalize) 797
1264                                Store 783(dir) 798
1265             804:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 802 802 16 16
1266             803:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 800 799(cosDir) 49
1267             805:   74(fvec3)   Load 721(L)
1268             806:   74(fvec3)   Load 783(dir)
1269             807:    8(float)   Dot 805 806
1270                                Store 799(cosDir) 807
1271             813:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 811 811 16 16
1272             812:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 809 808(spotEffect) 49
1273             814:    8(float)   Load 769(lightCosOuterAngle)
1274             815:    8(float)   Load 762(lightCosInnerAngle)
1275             816:    8(float)   Load 799(cosDir)
1276             817:    8(float)   ExtInst 3(GLSL.std.450) 49(SmoothStep) 814 815 816
1277                                Store 808(spotEffect) 817
1278             823:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 821 821 16 16
1279             822:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 819 818(heightAttenuation) 49
1280             824:    8(float)   Load 776(lightRange)
1281             825:    8(float)   Load 736(dist)
1282             826:    8(float)   ExtInst 3(GLSL.std.450) 49(SmoothStep) 824 204 825
1283                                Store 818(heightAttenuation) 826
1284             832:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 830 830 16 16
1285             831:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 828 827(NdotL) 49
1286             833:   74(fvec3)   Load 693(N)
1287             834:   74(fvec3)   Load 721(L)
1288             835:    8(float)   Dot 833 834
1289             836:    8(float)   ExtInst 3(GLSL.std.450) 40(FMax) 204 835
1290                                Store 827(NdotL) 836
1291             842:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 840 840 16 16
1292             841:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 838 837(diff) 49
1293             843:    8(float)   Load 827(NdotL)
1294             844:   74(fvec3)   CompositeConstruct 843 843 843
1295                                Store 837(diff) 844
1296             850:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 848 848 16 16
1297             849:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 846 845(R) 49
1298             851:   74(fvec3)   Load 721(L)
1299             852:   74(fvec3)   FNegate 851
1300             853:   74(fvec3)   Load 693(N)
1301             854:   74(fvec3)   ExtInst 3(GLSL.std.450) 71(Reflect) 852 853
1302                                Store 845(R) 854
1303             860:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 858 858 16 16
1304             859:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 856 855(NdotR) 49
1305             861:   74(fvec3)   Load 845(R)
1306             862:   74(fvec3)   Load 747(V)
1307             863:    8(float)   Dot 861 862
1308             864:    8(float)   ExtInst 3(GLSL.std.450) 40(FMax) 204 863
1309                                Store 855(NdotR) 864
1310             870:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 868 868 16 16
1311             869:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 866 865(spec) 49
1312             871:    8(float)   Load 855(NdotR)
1313             873:    8(float)   ExtInst 3(GLSL.std.450) 26(Pow) 871 872
1314             874:     24(ptr)   AccessChain 591(albedo) 17
1315             875:    8(float)   Load 874
1316             876:    8(float)   FMul 873 875
1317             878:    8(float)   FMul 876 877
1318             879:   74(fvec3)   CompositeConstruct 878 878 878
1319                                Store 865(spec) 879
1320             881:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 882 882 16 16
1321             880:   74(fvec3)   Load 837(diff)
1322             883:   74(fvec3)   Load 865(spec)
1323             884:   74(fvec3)   FAdd 880 883
1324             885:    8(float)   Load 808(spotEffect)
1325             886:   74(fvec3)   VectorTimesScalar 884 885
1326             887:    8(float)   Load 818(heightAttenuation)
1327             888:   74(fvec3)   VectorTimesScalar 886 887
1328             889:    228(int)   Load 704(i)
1329             891:    729(ptr)   AccessChain 506 323 330 889 890
1330             892:   18(fvec4)   Load 891
1331             893:   74(fvec3)   VectorShuffle 892 892 0 1 2
1332             894:   74(fvec3)   FMul 888 893
1333             895:   18(fvec4)   Load 591(albedo)
1334             896:   74(fvec3)   VectorShuffle 895 895 0 1 2
1335             897:   74(fvec3)   FMul 894 896
1336             898:   74(fvec3)   Load 609(fragcolor)
1337             899:   74(fvec3)   FAdd 898 897
1338                                Store 609(fragcolor) 899
1339                                Branch 712
1340             712:               Label
1341             901:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 701
1342             902:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 702 702 16 16
1343             900:    228(int)   Load 704(i)
1344             903:    228(int)   IAdd 900 330
1345                                Store 704(i) 903
1346                                Branch 709
1347             711:             Label
1348             905:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 546
1349             906:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 907 907 16 16
1350             904:    614(ptr) AccessChain 506 323 890
1351             908:    228(int) Load 904
1352             909:   145(bool) SGreaterThan 908 323
1353                              SelectionMerge 911 None
1354                              BranchConditional 909 910 911
1355             910:               Label
1356             915:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 912
1357             916:           4   ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 917 917 16 16
1358             914:   74(fvec3)   Load 609(fragcolor)
1359                                Store 913(param) 914
1360             919:   74(fvec3)   Load 547(fragPos)
1361                                Store 918(param) 919
1362             920:   74(fvec3)   FunctionCall 82(shadow(vf3;vf3;) 913(param) 918(param)
1363                                Store 609(fragcolor) 920
1364                                Branch 911
1365             911:             Label
1366             922:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 546
1367             923:           4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 924 924 16 16
1368             921:   74(fvec3) Load 609(fragcolor)
1369             925:    8(float) CompositeExtract 921 0
1370             926:    8(float) CompositeExtract 921 1
1371             927:    8(float) CompositeExtract 921 2
1372             928:   18(fvec4) CompositeConstruct 925 926 927 116
1373                              ReturnValue 928
1374                              FunctionEnd