| spv.debuginfo.glsl.frag |
| Validation failed |
| // Module Version 10000 |
| // Generated by (magic number): 8000b |
| // Id's are bound by 881 |
| |
| Capability Shader |
| Capability ImageQuery |
| Extension "SPV_KHR_non_semantic_info" |
| 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" |
| 3: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint Fragment 14 "main" 493 546 |
| ExecutionMode 14 OriginUpperLeft |
| 2: String "spv.debuginfo.glsl.frag" |
| 8: String "uint" |
| 17: String "float" |
| 39: String "textureProj" |
| 42: String "// OpModuleProcessed auto-map-locations |
| // OpModuleProcessed auto-map-bindings |
| // OpModuleProcessed client vulkan100 |
| // OpModuleProcessed target-env vulkan1.0 |
| // OpModuleProcessed keep-uncalled |
| // OpModuleProcessed entry-point main |
| #line 1 |
| /* |
| The MIT License (MIT) |
| |
| Copyright (c) 2022 Sascha Willems |
| |
| Permission is hereby granted, free of charge, to any person obtaining a copy |
| of this software and associated documentation files (the "Software"), to deal |
| in the Software without restriction, including without limitation the rights |
| to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
| copies of the Software, and to permit persons to whom the Software is |
| furnished to do so, subject to the following conditions: |
| |
| The above copyright notice and this permission notice shall be included in all |
| copies or substantial portions of the Software. |
| |
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
| IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
| AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
| LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
| OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
| SOFTWARE. |
| */ |
| |
| #version 450 |
| |
| layout (binding = 1) uniform sampler2D samplerposition; |
| layout (binding = 2) uniform sampler2D samplerNormal; |
| layout (binding = 3) uniform sampler2D samplerAlbedo; |
| layout (binding = 5) uniform sampler2DArray samplerShadowMap; |
| |
| layout (location = 0) in vec2 inUV; |
| |
| layout (location = 0) out vec4 outFragColor; |
| |
| #define LIGHT_COUNT 3 |
| #define SHADOW_FACTOR 0.25 |
| #define AMBIENT_LIGHT 0.1 |
| #define USE_PCF |
| |
| int global_var = 0; |
| |
| struct Light |
| { |
| vec4 position; |
| vec4 target; |
| vec4 color; |
| mat4 viewMatrix; |
| }; |
| |
| layout (binding = 4) uniform UBO |
| { |
| vec4 viewPos; |
| Light lights[LIGHT_COUNT]; |
| int useShadows; |
| int debugDisplayTarget; |
| } ubo; |
| |
| float textureProj(vec4 P, float layer, vec2 offset) |
| { |
| float shadow = 1.0; |
| vec4 shadowCoord = P / P.w; |
| shadowCoord.st = shadowCoord.st * 0.5 + 0.5; |
| |
| if (shadowCoord.z > -1.0 && shadowCoord.z < 1.0) |
| { |
| float dist = texture(samplerShadowMap, vec3(shadowCoord.st + offset, layer)).r; |
| if (shadowCoord.w > 0.0 && dist < shadowCoord.z) |
| { |
| shadow = SHADOW_FACTOR; |
| } |
| } |
| return shadow; |
| } |
| |
| float filterPCF(vec4 sc, float layer) |
| { |
| ivec2 texDim = textureSize(samplerShadowMap, 0).xy; |
| float scale = 1.5; |
| float dx = scale * 1.0 / float(texDim.x); |
| float dy = scale * 1.0 / float(texDim.y); |
| |
| float shadowFactor = 0.0; |
| int count = 0; |
| int range = 1; |
| |
| for (int x = -range; x <= range; x++) |
| { |
| for (int y = -range; y <= range; y++) |
| { |
| shadowFactor += textureProj(sc, layer, vec2(dx*x, dy*y)); |
| count++; |
| } |
| |
| } |
| return shadowFactor / count; |
| } |
| |
| vec3 shadow(vec3 fragcolor, vec3 fragpos) { |
| for(int i = 0; i < LIGHT_COUNT; ++i) |
| { |
| vec4 shadowClip = ubo.lights[i].viewMatrix * vec4(fragpos, 1.0); |
| |
| float shadowFactor; |
| #ifdef USE_PCF |
| shadowFactor= filterPCF(shadowClip, i); |
| #else |
| shadowFactor = textureProj(shadowClip, i, vec2(0.0)); |
| #endif |
| |
| fragcolor *= shadowFactor; |
| } |
| return fragcolor; |
| } |
| |
| void main() |
| { |
| // Get G-Buffer values |
| vec3 fragPos = texture(samplerposition, inUV).rgb; |
| vec3 normal = texture(samplerNormal, inUV).rgb; |
| vec4 albedo = texture(samplerAlbedo, inUV); |
| |
| // Debug display |
| if (ubo.debugDisplayTarget > 0) { |
| switch (ubo.debugDisplayTarget) { |
| case 1: |
| outFragColor.rgb = shadow(vec3(1.0), fragPos).rgb; |
| break; |
| case 2: |
| outFragColor.rgb = fragPos; |
| break; |
| case 3: |
| outFragColor.rgb = normal; |
| break; |
| case 4: |
| outFragColor.rgb = albedo.rgb; |
| break; |
| case 5: |
| outFragColor.rgb = albedo.aaa; |
| break; |
| } |
| outFragColor.a = 1.0; |
| return; |
| } |
| |
| // Ambient part |
| vec3 fragcolor = albedo.rgb * AMBIENT_LIGHT; |
| |
| vec3 N = normalize(normal); |
| |
| for(int i = 0; i < LIGHT_COUNT; ++i) |
| { |
| // Vector to light |
| vec3 L = ubo.lights[i].position.xyz - fragPos; |
| // Distance from light to fragment position |
| float dist = length(L); |
| L = normalize(L); |
| |
| // Viewer to fragment |
| vec3 V = ubo.viewPos.xyz - fragPos; |
| V = normalize(V); |
| |
| float lightCosInnerAngle = cos(radians(15.0)); |
| float lightCosOuterAngle = cos(radians(25.0)); |
| float lightRange = 100.0; |
| |
| // Direction vector from source to target |
| vec3 dir = normalize(ubo.lights[i].position.xyz - ubo.lights[i].target.xyz); |
| |
| // Dual cone spot light with smooth transition between inner and outer angle |
| float cosDir = dot(L, dir); |
| float spotEffect = smoothstep(lightCosOuterAngle, lightCosInnerAngle, cosDir); |
| float heightAttenuation = smoothstep(lightRange, 0.0f, dist); |
| |
| // Diffuse lighting |
| float NdotL = max(0.0, dot(N, L)); |
| vec3 diff = vec3(NdotL); |
| |
| // Specular lighting |
| vec3 R = reflect(-L, N); |
| float NdotR = max(0.0, dot(R, V)); |
| vec3 spec = vec3(pow(NdotR, 16.0) * albedo.a * 2.5); |
| |
| fragcolor += vec3((diff + spec) * spotEffect * heightAttenuation) * ubo.lights[i].color.rgb * albedo.rgb; |
| } |
| |
| // Shadow calculations in a separate pass |
| if (ubo.useShadows > 0) |
| { |
| fragcolor = shadow(fragcolor, fragPos); |
| } |
| |
| outFragColor = vec4(fragcolor, 1.0); |
| } |
| " |
| 47: String "P" |
| 53: String "layer" |
| 56: String "offset" |
| 64: String "filterPCF" |
| 68: String "sc" |
| 83: String "shadow" |
| 87: String "fragcolor" |
| 91: String "fragpos" |
| 93: String "main" |
| 97: String "int" |
| 103: String "global_var" |
| 118: String "shadowCoord" |
| 140: String "bool" |
| 161: String "dist" |
| 168: String "type.2d.image" |
| 169: String "@type.2d.image" |
| 173: String "type.sampled.image" |
| 174: String "@type.sampled.image" |
| 179: String "samplerShadowMap" |
| 229: String "texDim" |
| 241: String "scale" |
| 248: String "dx" |
| 262: String "dy" |
| 274: String "shadowFactor" |
| 280: String "count" |
| 286: String "range" |
| 293: String "x" |
| 313: String "y" |
| 379: String "i" |
| 397: String "shadowClip" |
| 407: String "color" |
| 412: String "viewMatrix" |
| 415: String "Light" |
| 421: String "lights" |
| 424: String "debugDisplayTarget" |
| 428: String "UBO" |
| 433: String "ubo" |
| 477: String "fragPos" |
| 489: String "samplerposition" |
| 495: String "inUV" |
| 501: String "normal" |
| 507: String "samplerNormal" |
| 514: String "albedo" |
| 520: String "samplerAlbedo" |
| 548: String "outFragColor" |
| 648: String "N" |
| 672: String "L" |
| 698: String "V" |
| 713: String "lightCosInnerAngle" |
| 720: String "lightCosOuterAngle" |
| 727: String "lightRange" |
| 734: String "dir" |
| 750: String "cosDir" |
| 759: String "spotEffect" |
| 769: String "heightAttenuation" |
| 778: String "NdotL" |
| 788: String "diff" |
| 796: String "R" |
| 806: String "NdotR" |
| 816: String "spec" |
| Name 14 "main" |
| Name 37 "textureProj(vf4;f1;vf2;" |
| Name 34 "P" |
| Name 35 "layer" |
| Name 36 "offset" |
| Name 62 "filterPCF(vf4;f1;" |
| Name 60 "sc" |
| Name 61 "layer" |
| Name 81 "shadow(vf3;vf3;" |
| Name 79 "fragcolor" |
| Name 80 "fragpos" |
| Name 101 "global_var" |
| Name 110 "shadow" |
| Name 116 "shadowCoord" |
| Name 159 "dist" |
| Name 177 "samplerShadowMap" |
| Name 227 "texDim" |
| Name 239 "scale" |
| Name 246 "dx" |
| Name 260 "dy" |
| Name 272 "shadowFactor" |
| Name 278 "count" |
| Name 284 "range" |
| Name 291 "x" |
| Name 311 "y" |
| Name 344 "param" |
| Name 346 "param" |
| Name 348 "param" |
| Name 377 "i" |
| Name 395 "shadowClip" |
| Name 405 "Light" |
| MemberName 405(Light) 0 "position" |
| MemberName 405(Light) 1 "target" |
| MemberName 405(Light) 2 "color" |
| MemberName 405(Light) 3 "viewMatrix" |
| Name 418 "UBO" |
| MemberName 418(UBO) 0 "viewPos" |
| MemberName 418(UBO) 1 "lights" |
| MemberName 418(UBO) 2 "useShadows" |
| MemberName 418(UBO) 3 "debugDisplayTarget" |
| Name 431 "ubo" |
| Name 445 "shadowFactor" |
| Name 452 "param" |
| Name 454 "param" |
| Name 475 "fragPos" |
| Name 487 "samplerposition" |
| Name 493 "inUV" |
| Name 499 "normal" |
| Name 505 "samplerNormal" |
| Name 512 "albedo" |
| Name 518 "samplerAlbedo" |
| Name 546 "outFragColor" |
| Name 551 "param" |
| Name 554 "param" |
| Name 636 "fragcolor" |
| Name 646 "N" |
| Name 654 "i" |
| Name 670 "L" |
| Name 685 "dist" |
| Name 696 "V" |
| Name 711 "lightCosInnerAngle" |
| Name 718 "lightCosOuterAngle" |
| Name 725 "lightRange" |
| Name 732 "dir" |
| Name 748 "cosDir" |
| Name 757 "spotEffect" |
| Name 767 "heightAttenuation" |
| Name 776 "NdotL" |
| Name 786 "diff" |
| Name 794 "R" |
| Name 804 "NdotR" |
| Name 814 "spec" |
| Name 865 "param" |
| Name 870 "param" |
| Decorate 177(samplerShadowMap) DescriptorSet 0 |
| Decorate 177(samplerShadowMap) Binding 5 |
| MemberDecorate 405(Light) 0 Offset 0 |
| MemberDecorate 405(Light) 1 Offset 16 |
| MemberDecorate 405(Light) 2 Offset 32 |
| MemberDecorate 405(Light) 3 ColMajor |
| MemberDecorate 405(Light) 3 Offset 48 |
| MemberDecorate 405(Light) 3 MatrixStride 16 |
| Decorate 416 ArrayStride 112 |
| MemberDecorate 418(UBO) 0 Offset 0 |
| MemberDecorate 418(UBO) 1 Offset 16 |
| MemberDecorate 418(UBO) 2 Offset 352 |
| MemberDecorate 418(UBO) 3 Offset 356 |
| Decorate 418(UBO) Block |
| Decorate 431(ubo) DescriptorSet 0 |
| Decorate 431(ubo) Binding 4 |
| Decorate 487(samplerposition) DescriptorSet 0 |
| Decorate 487(samplerposition) Binding 1 |
| Decorate 493(inUV) Location 0 |
| Decorate 505(samplerNormal) DescriptorSet 0 |
| Decorate 505(samplerNormal) Binding 2 |
| Decorate 518(samplerAlbedo) DescriptorSet 0 |
| Decorate 518(samplerAlbedo) Binding 3 |
| Decorate 546(outFragColor) Location 0 |
| 4: TypeVoid |
| 5: TypeFunction 4 |
| 7: TypeInt 32 0 |
| 10: 7(int) Constant 32 |
| 11: 7(int) Constant 6 |
| 12: 7(int) Constant 0 |
| 9: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 8 10 11 12 |
| 13: 7(int) Constant 3 |
| 6: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 13 4 |
| 16: TypeFloat 32 |
| 18: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 17 10 13 12 |
| 19: TypeVector 16(float) 4 |
| 20: 7(int) Constant 4 |
| 21: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 18 20 |
| 22: TypePointer Function 19(fvec4) |
| 23: 7(int) Constant 7 |
| 24: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 21 23 12 |
| 25: TypePointer Function 16(float) |
| 26: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 18 23 12 |
| 27: TypeVector 16(float) 2 |
| 28: 7(int) Constant 2 |
| 29: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 18 28 |
| 30: TypePointer Function 27(fvec2) |
| 31: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 29 23 12 |
| 32: TypeFunction 16(float) 22(ptr) 25(ptr) 30(ptr) |
| 33: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 13 18 21 18 29 |
| 41: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 2 42 |
| 43: 7(int) Constant 59 |
| 45: 7(int) Constant 1 |
| 44: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 45 20 41 28 |
| 40: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 39 33 41 43 12 44 39 13 43 |
| 46: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 47 21 41 43 12 40 20 45 |
| 49: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression) |
| 52: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 53 18 41 43 12 40 20 28 |
| 55: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 56 29 41 43 12 40 20 13 |
| 58: TypeFunction 16(float) 22(ptr) 25(ptr) |
| 59: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 13 18 21 18 |
| 66: 7(int) Constant 76 |
| 65: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 64 59 41 66 12 44 64 13 66 |
| 67: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 68 21 41 66 12 65 20 45 |
| 71: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 53 18 41 66 12 65 20 28 |
| 73: TypeVector 16(float) 3 |
| 74: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 18 13 |
| 75: TypePointer Function 73(fvec3) |
| 76: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 74 23 12 |
| 77: TypeFunction 73(fvec3) 75(ptr) 75(ptr) |
| 78: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 13 74 74 74 |
| 85: 7(int) Constant 99 |
| 84: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 83 78 41 85 12 44 83 13 85 |
| 86: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 87 74 41 85 12 84 20 45 |
| 90: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 91 74 41 85 12 84 20 28 |
| 95: 7(int) Constant 116 |
| 94: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 93 6 41 95 12 44 93 13 95 |
| 96: TypeInt 32 1 |
| 98: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 97 10 20 12 |
| 99: TypePointer Private 96(int) |
| 100: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 98 11 12 |
| 101(global_var): 99(ptr) Variable Private |
| 104: 7(int) Constant 41 |
| 105: 7(int) Constant 8 |
| 102: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 103 98 41 104 12 44 103 101(global_var) 105 |
| 106: 96(int) Constant 0 |
| 112: 7(int) Constant 61 |
| 111: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 83 18 41 112 12 40 20 |
| 115: 16(float) Constant 1065353216 |
| 119: 7(int) Constant 62 |
| 117: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 118 21 41 119 12 40 20 |
| 129: 7(int) Constant 63 |
| 131: 16(float) Constant 1056964608 |
| 139: TypeBool |
| 141: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 140 10 28 12 |
| 144: 7(int) Constant 65 |
| 146: 16(float) Constant 3212836864 |
| 162: 7(int) Constant 67 |
| 160: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 161 18 41 162 12 40 20 |
| 166: TypeImage 16(float) 2D array sampled format:Unknown |
| 170: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone) |
| 167: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 168 12 41 162 12 44 169 170 13 |
| 171: TypeSampledImage 166 |
| 172: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 173 12 41 162 12 44 174 170 13 |
| 175: TypePointer UniformConstant 171 |
| 176: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 172 12 12 |
| 177(samplerShadowMap): 175(ptr) Variable UniformConstant |
| 178: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 179 172 41 162 12 44 179 177(samplerShadowMap) 105 |
| 193: 7(int) Constant 68 |
| 195: 16(float) Constant 0 |
| 209: 16(float) Constant 1048576000 |
| 212: 7(int) Constant 70 |
| 217: 7(int) Constant 73 |
| 223: TypeVector 96(int) 2 |
| 224: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 98 28 |
| 225: TypePointer Function 223(ivec2) |
| 226: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 224 23 12 |
| 230: 7(int) Constant 78 |
| 228: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 229 224 41 230 12 65 20 |
| 235: TypeVector 96(int) 3 |
| 236: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 98 13 |
| 242: 7(int) Constant 79 |
| 240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 241 18 41 242 12 65 20 |
| 245: 16(float) Constant 1069547520 |
| 249: 7(int) Constant 80 |
| 247: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 248 18 41 249 12 65 20 |
| 254: TypePointer Function 96(int) |
| 255: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 98 23 12 |
| 263: 7(int) Constant 81 |
| 261: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 262 18 41 263 12 65 20 |
| 275: 7(int) Constant 83 |
| 273: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 274 18 41 275 12 65 20 |
| 281: 7(int) Constant 84 |
| 279: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 280 98 41 281 12 65 20 |
| 287: 7(int) Constant 85 |
| 285: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 286 98 41 287 12 65 20 |
| 290: 96(int) Constant 1 |
| 294: 7(int) Constant 87 |
| 292: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 293 98 41 294 12 65 20 |
| 314: 7(int) Constant 89 |
| 312: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 313 98 41 314 12 65 20 |
| 335: 7(int) Constant 91 |
| 354: 7(int) Constant 92 |
| 368: 7(int) Constant 96 |
| 380: 7(int) Constant 100 |
| 378: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 379 98 41 380 12 84 20 |
| 393: 96(int) Constant 3 |
| 398: 7(int) Constant 102 |
| 396: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 397 21 41 398 12 84 20 |
| 402: TypeMatrix 19(fvec4) 4 |
| 404: 139(bool) ConstantTrue |
| 403: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 21 20 404 |
| 405(Light): TypeStruct 19(fvec4) 19(fvec4) 19(fvec4) 402 |
| 408: 7(int) Constant 47 |
| 406: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 407 21 41 408 23 12 12 13 |
| 409: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 407 21 41 408 23 12 12 13 |
| 410: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 407 21 41 408 23 12 12 13 |
| 413: 7(int) Constant 48 |
| 411: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 412 403 41 413 23 12 12 13 |
| 414: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 415 45 41 398 12 44 415 12 13 406 409 410 411 |
| 416: TypeArray 405(Light) 13 |
| 417: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 414 13 |
| 418(UBO): TypeStruct 19(fvec4) 416 96(int) 96(int) |
| 419: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 407 21 41 408 23 12 12 13 |
| 422: 7(int) Constant 54 |
| 420: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 421 417 41 422 105 12 12 13 |
| 425: 7(int) Constant 56 |
| 423: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 424 98 41 425 11 12 12 13 |
| 426: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 424 98 41 425 11 12 12 13 |
| 427: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 428 45 41 398 12 44 428 12 13 419 420 423 426 |
| 429: TypePointer Uniform 418(UBO) |
| 430: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 427 28 12 |
| 431(ubo): 429(ptr) Variable Uniform |
| 432: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 433 427 41 398 12 44 433 431(ubo) 105 |
| 435: TypePointer Uniform 402 |
| 436: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 403 28 12 |
| 447: 7(int) Constant 106 |
| 446: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 274 18 41 447 12 84 20 |
| 458: 7(int) Constant 111 |
| 468: 7(int) Constant 113 |
| 478: 7(int) Constant 119 |
| 476: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 477 74 41 478 12 94 20 |
| 481: TypeImage 16(float) 2D sampled format:Unknown |
| 482: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 168 12 41 478 12 44 169 170 13 |
| 483: TypeSampledImage 481 |
| 484: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 173 12 41 478 12 44 174 170 13 |
| 485: TypePointer UniformConstant 483 |
| 486: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 484 12 12 |
| 487(samplerposition): 485(ptr) Variable UniformConstant |
| 488: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 489 484 41 478 12 44 489 487(samplerposition) 105 |
| 491: TypePointer Input 27(fvec2) |
| 492: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 29 45 12 |
| 493(inUV): 491(ptr) Variable Input |
| 494: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 495 29 41 478 12 44 495 493(inUV) 105 |
| 502: 7(int) Constant 120 |
| 500: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 501 74 41 502 12 94 20 |
| 505(samplerNormal): 485(ptr) Variable UniformConstant |
| 506: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 507 484 41 502 12 44 507 505(samplerNormal) 105 |
| 515: 7(int) Constant 121 |
| 513: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 514 21 41 515 12 94 20 |
| 518(samplerAlbedo): 485(ptr) Variable UniformConstant |
| 519: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 520 484 41 515 12 44 520 518(samplerAlbedo) 105 |
| 524: TypePointer Uniform 96(int) |
| 525: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 98 28 12 |
| 528: 7(int) Constant 124 |
| 536: 7(int) Constant 125 |
| 544: TypePointer Output 19(fvec4) |
| 545: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 21 13 12 |
| 546(outFragColor): 544(ptr) Variable Output |
| 549: 7(int) Constant 127 |
| 547: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 548 21 41 549 12 44 548 546(outFragColor) 105 |
| 550: 73(fvec3) ConstantComposite 115 115 115 |
| 557: TypePointer Output 16(float) |
| 558: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 18 13 12 |
| 566: 7(int) Constant 128 |
| 572: 7(int) Constant 130 |
| 580: 7(int) Constant 131 |
| 586: 7(int) Constant 133 |
| 594: 7(int) Constant 134 |
| 600: 7(int) Constant 136 |
| 609: 7(int) Constant 137 |
| 615: 7(int) Constant 139 |
| 624: 7(int) Constant 140 |
| 631: 7(int) Constant 142 |
| 633: 7(int) Constant 143 |
| 638: 7(int) Constant 147 |
| 637: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 87 74 41 638 12 94 20 |
| 644: 16(float) Constant 1036831949 |
| 649: 7(int) Constant 149 |
| 647: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 648 74 41 649 12 94 20 |
| 656: 7(int) Constant 151 |
| 655: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 379 98 41 656 12 94 20 |
| 673: 7(int) Constant 154 |
| 671: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 672 74 41 673 12 94 20 |
| 678: TypePointer Uniform 19(fvec4) |
| 679: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 21 28 12 |
| 687: 7(int) Constant 156 |
| 686: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 161 18 41 687 12 94 20 |
| 694: 7(int) Constant 157 |
| 699: 7(int) Constant 160 |
| 697: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 698 74 41 699 12 94 20 |
| 709: 7(int) Constant 161 |
| 714: 7(int) Constant 163 |
| 712: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 713 18 41 714 12 94 20 |
| 717: 16(float) Constant 1064781546 |
| 721: 7(int) Constant 164 |
| 719: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 720 18 41 721 12 94 20 |
| 724: 16(float) Constant 1063781322 |
| 728: 7(int) Constant 165 |
| 726: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 727 18 41 728 12 94 20 |
| 731: 16(float) Constant 1120403456 |
| 735: 7(int) Constant 168 |
| 733: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 734 74 41 735 12 94 20 |
| 751: 7(int) Constant 171 |
| 749: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 750 18 41 751 12 94 20 |
| 760: 7(int) Constant 172 |
| 758: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 759 18 41 760 12 94 20 |
| 770: 7(int) Constant 173 |
| 768: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 769 18 41 770 12 94 20 |
| 779: 7(int) Constant 176 |
| 777: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 778 18 41 779 12 94 20 |
| 789: 7(int) Constant 177 |
| 787: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 788 74 41 789 12 94 20 |
| 797: 7(int) Constant 180 |
| 795: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 796 74 41 797 12 94 20 |
| 807: 7(int) Constant 181 |
| 805: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 806 18 41 807 12 94 20 |
| 817: 7(int) Constant 182 |
| 815: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 816 74 41 817 12 94 20 |
| 821: 16(float) Constant 1098907648 |
| 826: 16(float) Constant 1075838976 |
| 831: 7(int) Constant 184 |
| 843: 96(int) Constant 2 |
| 860: 7(int) Constant 188 |
| 869: 7(int) Constant 190 |
| 876: 7(int) Constant 193 |
| 14(main): 4 Function None 5 |
| 15: Label |
| 475(fragPos): 75(ptr) Variable Function |
| 499(normal): 75(ptr) Variable Function |
| 512(albedo): 22(ptr) Variable Function |
| 551(param): 75(ptr) Variable Function |
| 554(param): 75(ptr) Variable Function |
| 636(fragcolor): 75(ptr) Variable Function |
| 646(N): 75(ptr) Variable Function |
| 654(i): 254(ptr) Variable Function |
| 670(L): 75(ptr) Variable Function |
| 685(dist): 25(ptr) Variable Function |
| 696(V): 75(ptr) Variable Function |
| 711(lightCosInnerAngle): 25(ptr) Variable Function |
| 718(lightCosOuterAngle): 25(ptr) Variable Function |
| 725(lightRange): 25(ptr) Variable Function |
| 732(dir): 75(ptr) Variable Function |
| 748(cosDir): 25(ptr) Variable Function |
| 757(spotEffect): 25(ptr) Variable Function |
| 767(heightAttenuation): 25(ptr) Variable Function |
| 776(NdotL): 25(ptr) Variable Function |
| 786(diff): 75(ptr) Variable Function |
| 794(R): 75(ptr) Variable Function |
| 804(NdotR): 25(ptr) Variable Function |
| 814(spec): 75(ptr) Variable Function |
| 865(param): 75(ptr) Variable Function |
| 870(param): 75(ptr) Variable Function |
| 107: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 44 |
| 108: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 104 104 12 12 |
| Store 101(global_var) 106 |
| 473: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 474: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 95 95 12 12 |
| 472: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 94 14(main) |
| 480: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 478 478 12 12 |
| 479: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 476 475(fragPos) 49 |
| 490: 483 Load 487(samplerposition) |
| 496: 27(fvec2) Load 493(inUV) |
| 497: 19(fvec4) ImageSampleImplicitLod 490 496 |
| 498: 73(fvec3) VectorShuffle 497 497 0 1 2 |
| Store 475(fragPos) 498 |
| 504: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 502 502 12 12 |
| 503: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 500 499(normal) 49 |
| 508: 483 Load 505(samplerNormal) |
| 509: 27(fvec2) Load 493(inUV) |
| 510: 19(fvec4) ImageSampleImplicitLod 508 509 |
| 511: 73(fvec3) VectorShuffle 510 510 0 1 2 |
| Store 499(normal) 511 |
| 517: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 515 515 12 12 |
| 516: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 513 512(albedo) 49 |
| 521: 483 Load 518(samplerAlbedo) |
| 522: 27(fvec2) Load 493(inUV) |
| 523: 19(fvec4) ImageSampleImplicitLod 521 522 |
| Store 512(albedo) 523 |
| 527: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 528 528 12 12 |
| 526: 524(ptr) AccessChain 431(ubo) 393 |
| 529: 96(int) Load 526 |
| 530: 139(bool) SGreaterThan 529 106 |
| SelectionMerge 532 None |
| BranchConditional 530 531 532 |
| 531: Label |
| 534: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 535: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 536 536 12 12 |
| 533: 524(ptr) AccessChain 431(ubo) 393 |
| 537: 96(int) Load 533 |
| SelectionMerge 543 None |
| Switch 537 543 |
| case 1: 538 |
| case 2: 539 |
| case 3: 540 |
| case 4: 541 |
| case 5: 542 |
| 538: Label |
| 552: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 553: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 549 549 12 12 |
| Store 551(param) 550 |
| 555: 73(fvec3) Load 475(fragPos) |
| Store 554(param) 555 |
| 556: 73(fvec3) FunctionCall 81(shadow(vf3;vf3;) 551(param) 554(param) |
| 559: 557(ptr) AccessChain 546(outFragColor) 12 |
| 560: 16(float) CompositeExtract 556 0 |
| Store 559 560 |
| 561: 557(ptr) AccessChain 546(outFragColor) 45 |
| 562: 16(float) CompositeExtract 556 1 |
| Store 561 562 |
| 563: 557(ptr) AccessChain 546(outFragColor) 28 |
| 564: 16(float) CompositeExtract 556 2 |
| Store 563 564 |
| 565: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 566 566 12 12 |
| Branch 543 |
| 539: Label |
| 570: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 571: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 572 572 12 12 |
| 569: 73(fvec3) Load 475(fragPos) |
| 573: 557(ptr) AccessChain 546(outFragColor) 12 |
| 574: 16(float) CompositeExtract 569 0 |
| Store 573 574 |
| 575: 557(ptr) AccessChain 546(outFragColor) 45 |
| 576: 16(float) CompositeExtract 569 1 |
| Store 575 576 |
| 577: 557(ptr) AccessChain 546(outFragColor) 28 |
| 578: 16(float) CompositeExtract 569 2 |
| Store 577 578 |
| 579: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 580 580 12 12 |
| Branch 543 |
| 540: Label |
| 584: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 585: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 586 586 12 12 |
| 583: 73(fvec3) Load 499(normal) |
| 587: 557(ptr) AccessChain 546(outFragColor) 12 |
| 588: 16(float) CompositeExtract 583 0 |
| Store 587 588 |
| 589: 557(ptr) AccessChain 546(outFragColor) 45 |
| 590: 16(float) CompositeExtract 583 1 |
| Store 589 590 |
| 591: 557(ptr) AccessChain 546(outFragColor) 28 |
| 592: 16(float) CompositeExtract 583 2 |
| Store 591 592 |
| 593: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 594 594 12 12 |
| Branch 543 |
| 541: Label |
| 598: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 599: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 600 600 12 12 |
| 597: 19(fvec4) Load 512(albedo) |
| 601: 73(fvec3) VectorShuffle 597 597 0 1 2 |
| 602: 557(ptr) AccessChain 546(outFragColor) 12 |
| 603: 16(float) CompositeExtract 601 0 |
| Store 602 603 |
| 604: 557(ptr) AccessChain 546(outFragColor) 45 |
| 605: 16(float) CompositeExtract 601 1 |
| Store 604 605 |
| 606: 557(ptr) AccessChain 546(outFragColor) 28 |
| 607: 16(float) CompositeExtract 601 2 |
| Store 606 607 |
| 608: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 609 609 12 12 |
| Branch 543 |
| 542: Label |
| 613: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 614: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 615 615 12 12 |
| 612: 19(fvec4) Load 512(albedo) |
| 616: 73(fvec3) VectorShuffle 612 612 3 3 3 |
| 617: 557(ptr) AccessChain 546(outFragColor) 12 |
| 618: 16(float) CompositeExtract 616 0 |
| Store 617 618 |
| 619: 557(ptr) AccessChain 546(outFragColor) 45 |
| 620: 16(float) CompositeExtract 616 1 |
| Store 619 620 |
| 621: 557(ptr) AccessChain 546(outFragColor) 28 |
| 622: 16(float) CompositeExtract 616 2 |
| Store 621 622 |
| 623: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 624 624 12 12 |
| Branch 543 |
| 543: Label |
| 629: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 630: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 631 631 12 12 |
| 628: 557(ptr) AccessChain 546(outFragColor) 13 |
| Store 628 115 |
| 632: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 633 633 12 12 |
| Return |
| 532: Label |
| 640: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 641: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 638 638 12 12 |
| 639: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 637 636(fragcolor) 49 |
| 642: 19(fvec4) Load 512(albedo) |
| 643: 73(fvec3) VectorShuffle 642 642 0 1 2 |
| 645: 73(fvec3) VectorTimesScalar 643 644 |
| Store 636(fragcolor) 645 |
| 651: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 649 649 12 12 |
| 650: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 647 646(N) 49 |
| 652: 73(fvec3) Load 499(normal) |
| 653: 73(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 652 |
| Store 646(N) 653 |
| 658: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 656 656 12 12 |
| 657: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 655 654(i) 49 |
| Store 654(i) 106 |
| Branch 659 |
| 659: Label |
| 663: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 664: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 656 656 12 12 |
| LoopMerge 661 662 None |
| Branch 665 |
| 665: Label |
| 667: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 668: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 656 656 12 12 |
| 666: 96(int) Load 654(i) |
| 669: 139(bool) SLessThan 666 393 |
| BranchConditional 669 660 661 |
| 660: Label |
| 675: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 676: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 673 673 12 12 |
| 674: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 671 670(L) 49 |
| 677: 96(int) Load 654(i) |
| 680: 678(ptr) AccessChain 431(ubo) 290 677 106 |
| 681: 19(fvec4) Load 680 |
| 682: 73(fvec3) VectorShuffle 681 681 0 1 2 |
| 683: 73(fvec3) Load 475(fragPos) |
| 684: 73(fvec3) FSub 682 683 |
| Store 670(L) 684 |
| 689: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 687 687 12 12 |
| 688: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 686 685(dist) 49 |
| 690: 73(fvec3) Load 670(L) |
| 691: 16(float) ExtInst 3(GLSL.std.450) 66(Length) 690 |
| Store 685(dist) 691 |
| 693: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 694 694 12 12 |
| 692: 73(fvec3) Load 670(L) |
| 695: 73(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 692 |
| Store 670(L) 695 |
| 701: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 699 699 12 12 |
| 700: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 697 696(V) 49 |
| 702: 678(ptr) AccessChain 431(ubo) 106 |
| 703: 19(fvec4) Load 702 |
| 704: 73(fvec3) VectorShuffle 703 703 0 1 2 |
| 705: 73(fvec3) Load 475(fragPos) |
| 706: 73(fvec3) FSub 704 705 |
| Store 696(V) 706 |
| 708: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 709 709 12 12 |
| 707: 73(fvec3) Load 696(V) |
| 710: 73(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 707 |
| Store 696(V) 710 |
| 716: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 714 714 12 12 |
| 715: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 712 711(lightCosInnerAngle) 49 |
| Store 711(lightCosInnerAngle) 717 |
| 723: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 721 721 12 12 |
| 722: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 719 718(lightCosOuterAngle) 49 |
| Store 718(lightCosOuterAngle) 724 |
| 730: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 728 728 12 12 |
| 729: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 726 725(lightRange) 49 |
| Store 725(lightRange) 731 |
| 737: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 735 735 12 12 |
| 736: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 733 732(dir) 49 |
| 738: 96(int) Load 654(i) |
| 739: 678(ptr) AccessChain 431(ubo) 290 738 106 |
| 740: 19(fvec4) Load 739 |
| 741: 73(fvec3) VectorShuffle 740 740 0 1 2 |
| 742: 96(int) Load 654(i) |
| 743: 678(ptr) AccessChain 431(ubo) 290 742 290 |
| 744: 19(fvec4) Load 743 |
| 745: 73(fvec3) VectorShuffle 744 744 0 1 2 |
| 746: 73(fvec3) FSub 741 745 |
| 747: 73(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 746 |
| Store 732(dir) 747 |
| 753: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 751 751 12 12 |
| 752: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 749 748(cosDir) 49 |
| 754: 73(fvec3) Load 670(L) |
| 755: 73(fvec3) Load 732(dir) |
| 756: 16(float) Dot 754 755 |
| Store 748(cosDir) 756 |
| 762: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 760 760 12 12 |
| 761: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 758 757(spotEffect) 49 |
| 763: 16(float) Load 718(lightCosOuterAngle) |
| 764: 16(float) Load 711(lightCosInnerAngle) |
| 765: 16(float) Load 748(cosDir) |
| 766: 16(float) ExtInst 3(GLSL.std.450) 49(SmoothStep) 763 764 765 |
| Store 757(spotEffect) 766 |
| 772: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 770 770 12 12 |
| 771: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 768 767(heightAttenuation) 49 |
| 773: 16(float) Load 725(lightRange) |
| 774: 16(float) Load 685(dist) |
| 775: 16(float) ExtInst 3(GLSL.std.450) 49(SmoothStep) 773 195 774 |
| Store 767(heightAttenuation) 775 |
| 781: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 779 779 12 12 |
| 780: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 777 776(NdotL) 49 |
| 782: 73(fvec3) Load 646(N) |
| 783: 73(fvec3) Load 670(L) |
| 784: 16(float) Dot 782 783 |
| 785: 16(float) ExtInst 3(GLSL.std.450) 40(FMax) 195 784 |
| Store 776(NdotL) 785 |
| 791: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 789 789 12 12 |
| 790: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 787 786(diff) 49 |
| 792: 16(float) Load 776(NdotL) |
| 793: 73(fvec3) CompositeConstruct 792 792 792 |
| Store 786(diff) 793 |
| 799: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 797 797 12 12 |
| 798: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 795 794(R) 49 |
| 800: 73(fvec3) Load 670(L) |
| 801: 73(fvec3) FNegate 800 |
| 802: 73(fvec3) Load 646(N) |
| 803: 73(fvec3) ExtInst 3(GLSL.std.450) 71(Reflect) 801 802 |
| Store 794(R) 803 |
| 809: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 807 807 12 12 |
| 808: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 805 804(NdotR) 49 |
| 810: 73(fvec3) Load 794(R) |
| 811: 73(fvec3) Load 696(V) |
| 812: 16(float) Dot 810 811 |
| 813: 16(float) ExtInst 3(GLSL.std.450) 40(FMax) 195 812 |
| Store 804(NdotR) 813 |
| 819: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 817 817 12 12 |
| 818: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 815 814(spec) 49 |
| 820: 16(float) Load 804(NdotR) |
| 822: 16(float) ExtInst 3(GLSL.std.450) 26(Pow) 820 821 |
| 823: 25(ptr) AccessChain 512(albedo) 13 |
| 824: 16(float) Load 823 |
| 825: 16(float) FMul 822 824 |
| 827: 16(float) FMul 825 826 |
| 828: 73(fvec3) CompositeConstruct 827 827 827 |
| Store 814(spec) 828 |
| 830: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 831 831 12 12 |
| 829: 73(fvec3) Load 786(diff) |
| 832: 73(fvec3) Load 814(spec) |
| 833: 73(fvec3) FAdd 829 832 |
| 834: 16(float) Load 757(spotEffect) |
| 835: 73(fvec3) VectorTimesScalar 833 834 |
| 836: 16(float) Load 767(heightAttenuation) |
| 837: 73(fvec3) VectorTimesScalar 835 836 |
| 838: 16(float) CompositeExtract 837 0 |
| 839: 16(float) CompositeExtract 837 1 |
| 840: 16(float) CompositeExtract 837 2 |
| 841: 73(fvec3) CompositeConstruct 838 839 840 |
| 842: 96(int) Load 654(i) |
| 844: 678(ptr) AccessChain 431(ubo) 290 842 843 |
| 845: 19(fvec4) Load 844 |
| 846: 73(fvec3) VectorShuffle 845 845 0 1 2 |
| 847: 73(fvec3) FMul 841 846 |
| 848: 19(fvec4) Load 512(albedo) |
| 849: 73(fvec3) VectorShuffle 848 848 0 1 2 |
| 850: 73(fvec3) FMul 847 849 |
| 851: 73(fvec3) Load 636(fragcolor) |
| 852: 73(fvec3) FAdd 851 850 |
| Store 636(fragcolor) 852 |
| Branch 662 |
| 662: Label |
| 854: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 855: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 656 656 12 12 |
| 853: 96(int) Load 654(i) |
| 856: 96(int) IAdd 853 290 |
| Store 654(i) 856 |
| Branch 659 |
| 661: Label |
| 858: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 859: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 860 860 12 12 |
| 857: 524(ptr) AccessChain 431(ubo) 843 |
| 861: 96(int) Load 857 |
| 862: 139(bool) SGreaterThan 861 106 |
| SelectionMerge 864 None |
| BranchConditional 862 863 864 |
| 863: Label |
| 867: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 868: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 869 869 12 12 |
| 866: 73(fvec3) Load 636(fragcolor) |
| Store 865(param) 866 |
| 871: 73(fvec3) Load 475(fragPos) |
| Store 870(param) 871 |
| 872: 73(fvec3) FunctionCall 81(shadow(vf3;vf3;) 865(param) 870(param) |
| Store 636(fragcolor) 872 |
| Branch 864 |
| 864: Label |
| 874: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 94 |
| 875: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 876 876 12 12 |
| 873: 73(fvec3) Load 636(fragcolor) |
| 877: 16(float) CompositeExtract 873 0 |
| 878: 16(float) CompositeExtract 873 1 |
| 879: 16(float) CompositeExtract 873 2 |
| 880: 19(fvec4) CompositeConstruct 877 878 879 115 |
| Store 546(outFragColor) 880 |
| Return |
| FunctionEnd |
| 37(textureProj(vf4;f1;vf2;): 16(float) Function None 32 |
| 34(P): 22(ptr) FunctionParameter |
| 35(layer): 25(ptr) FunctionParameter |
| 36(offset): 30(ptr) FunctionParameter |
| 38: Label |
| 110(shadow): 25(ptr) Variable Function |
| 116(shadowCoord): 22(ptr) Variable Function |
| 159(dist): 25(ptr) Variable Function |
| 50: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 |
| 51: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 43 43 12 12 |
| 48: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 46 34(P) 49 |
| 54: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 52 35(layer) 49 |
| 57: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 55 36(offset) 49 |
| 109: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 40 37(textureProj(vf4;f1;vf2;) |
| 114: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 112 112 12 12 |
| 113: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 111 110(shadow) 49 |
| Store 110(shadow) 115 |
| 121: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 119 119 12 12 |
| 120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 117 116(shadowCoord) 49 |
| 122: 19(fvec4) Load 34(P) |
| 123: 25(ptr) AccessChain 34(P) 13 |
| 124: 16(float) Load 123 |
| 125: 19(fvec4) CompositeConstruct 124 124 124 124 |
| 126: 19(fvec4) FDiv 122 125 |
| Store 116(shadowCoord) 126 |
| 128: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 129 129 12 12 |
| 127: 19(fvec4) Load 116(shadowCoord) |
| 130: 27(fvec2) VectorShuffle 127 127 0 1 |
| 132: 27(fvec2) VectorTimesScalar 130 131 |
| 133: 27(fvec2) CompositeConstruct 131 131 |
| 134: 27(fvec2) FAdd 132 133 |
| 135: 25(ptr) AccessChain 116(shadowCoord) 12 |
| 136: 16(float) CompositeExtract 134 0 |
| Store 135 136 |
| 137: 25(ptr) AccessChain 116(shadowCoord) 45 |
| 138: 16(float) CompositeExtract 134 1 |
| Store 137 138 |
| 143: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 144 144 12 12 |
| 142: 25(ptr) AccessChain 116(shadowCoord) 28 |
| 145: 16(float) Load 142 |
| 147: 139(bool) FOrdGreaterThan 145 146 |
| SelectionMerge 149 None |
| BranchConditional 147 148 149 |
| 148: Label |
| 151: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 |
| 152: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 144 144 12 12 |
| 150: 25(ptr) AccessChain 116(shadowCoord) 28 |
| 153: 16(float) Load 150 |
| 154: 139(bool) FOrdLessThan 153 115 |
| Branch 149 |
| 149: Label |
| 156: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 |
| 155: 139(bool) Phi 147 38 154 148 |
| SelectionMerge 158 None |
| BranchConditional 155 157 158 |
| 157: Label |
| 164: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 |
| 165: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 162 162 12 12 |
| 163: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 160 159(dist) 49 |
| 180: 171 Load 177(samplerShadowMap) |
| 181: 19(fvec4) Load 116(shadowCoord) |
| 182: 27(fvec2) VectorShuffle 181 181 0 1 |
| 183: 27(fvec2) Load 36(offset) |
| 184: 27(fvec2) FAdd 182 183 |
| 185: 16(float) Load 35(layer) |
| 186: 16(float) CompositeExtract 184 0 |
| 187: 16(float) CompositeExtract 184 1 |
| 188: 73(fvec3) CompositeConstruct 186 187 185 |
| 189: 19(fvec4) ImageSampleImplicitLod 180 188 |
| 190: 16(float) CompositeExtract 189 0 |
| Store 159(dist) 190 |
| 192: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 193 193 12 12 |
| 191: 25(ptr) AccessChain 116(shadowCoord) 13 |
| 194: 16(float) Load 191 |
| 196: 139(bool) FOrdGreaterThan 194 195 |
| SelectionMerge 198 None |
| BranchConditional 196 197 198 |
| 197: Label |
| 200: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 |
| 201: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 193 193 12 12 |
| 199: 16(float) Load 159(dist) |
| 202: 25(ptr) AccessChain 116(shadowCoord) 28 |
| 203: 16(float) Load 202 |
| 204: 139(bool) FOrdLessThan 199 203 |
| Branch 198 |
| 198: Label |
| 206: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 |
| 205: 139(bool) Phi 196 157 204 197 |
| SelectionMerge 208 None |
| BranchConditional 205 207 208 |
| 207: Label |
| 210: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 |
| 211: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 212 212 12 12 |
| Store 110(shadow) 209 |
| Branch 208 |
| 208: Label |
| 213: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 |
| Branch 158 |
| 158: Label |
| 215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 |
| 216: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 217 217 12 12 |
| 214: 16(float) Load 110(shadow) |
| ReturnValue 214 |
| FunctionEnd |
| 62(filterPCF(vf4;f1;): 16(float) Function None 58 |
| 60(sc): 22(ptr) FunctionParameter |
| 61(layer): 25(ptr) FunctionParameter |
| 63: Label |
| 227(texDim): 225(ptr) Variable Function |
| 239(scale): 25(ptr) Variable Function |
| 246(dx): 25(ptr) Variable Function |
| 260(dy): 25(ptr) Variable Function |
| 272(shadowFactor): 25(ptr) Variable Function |
| 278(count): 254(ptr) Variable Function |
| 284(range): 254(ptr) Variable Function |
| 291(x): 254(ptr) Variable Function |
| 311(y): 254(ptr) Variable Function |
| 344(param): 22(ptr) Variable Function |
| 346(param): 25(ptr) Variable Function |
| 348(param): 30(ptr) Variable Function |
| 70: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 |
| 69: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 67 60(sc) 49 |
| 72: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 71 61(layer) 49 |
| 222: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 66 66 12 12 |
| 221: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 65 62(filterPCF(vf4;f1;) |
| 232: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 230 230 12 12 |
| 231: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 228 227(texDim) 49 |
| 233: 171 Load 177(samplerShadowMap) |
| 234: 166 Image 233 |
| 237: 235(ivec3) ImageQuerySizeLod 234 106 |
| 238: 223(ivec2) VectorShuffle 237 237 0 1 |
| Store 227(texDim) 238 |
| 244: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 242 242 12 12 |
| 243: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 240 239(scale) 49 |
| Store 239(scale) 245 |
| 251: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 249 249 12 12 |
| 250: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 247 246(dx) 49 |
| 252: 16(float) Load 239(scale) |
| 253: 16(float) FMul 252 115 |
| 256: 254(ptr) AccessChain 227(texDim) 12 |
| 257: 96(int) Load 256 |
| 258: 16(float) ConvertSToF 257 |
| 259: 16(float) FDiv 253 258 |
| Store 246(dx) 259 |
| 265: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 263 263 12 12 |
| 264: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 261 260(dy) 49 |
| 266: 16(float) Load 239(scale) |
| 267: 16(float) FMul 266 115 |
| 268: 254(ptr) AccessChain 227(texDim) 45 |
| 269: 96(int) Load 268 |
| 270: 16(float) ConvertSToF 269 |
| 271: 16(float) FDiv 267 270 |
| Store 260(dy) 271 |
| 277: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 275 275 12 12 |
| 276: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 273 272(shadowFactor) 49 |
| Store 272(shadowFactor) 195 |
| 283: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 281 281 12 12 |
| 282: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 279 278(count) 49 |
| Store 278(count) 106 |
| 289: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 287 287 12 12 |
| 288: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 285 284(range) 49 |
| Store 284(range) 290 |
| 296: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 294 294 12 12 |
| 295: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 292 291(x) 49 |
| 297: 96(int) Load 284(range) |
| 298: 96(int) SNegate 297 |
| Store 291(x) 298 |
| Branch 299 |
| 299: Label |
| 303: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 |
| 304: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 294 294 12 12 |
| LoopMerge 301 302 None |
| Branch 305 |
| 305: Label |
| 307: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 |
| 308: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 294 294 12 12 |
| 306: 96(int) Load 291(x) |
| 309: 96(int) Load 284(range) |
| 310: 139(bool) SLessThanEqual 306 309 |
| BranchConditional 310 300 301 |
| 300: Label |
| 316: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 |
| 317: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 314 314 12 12 |
| 315: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 312 311(y) 49 |
| 318: 96(int) Load 284(range) |
| 319: 96(int) SNegate 318 |
| Store 311(y) 319 |
| Branch 320 |
| 320: Label |
| 324: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 |
| 325: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 314 314 12 12 |
| LoopMerge 322 323 None |
| Branch 326 |
| 326: Label |
| 328: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 |
| 329: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 314 314 12 12 |
| 327: 96(int) Load 311(y) |
| 330: 96(int) Load 284(range) |
| 331: 139(bool) SLessThanEqual 327 330 |
| BranchConditional 331 321 322 |
| 321: Label |
| 333: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 |
| 334: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 335 335 12 12 |
| 332: 16(float) Load 246(dx) |
| 336: 96(int) Load 291(x) |
| 337: 16(float) ConvertSToF 336 |
| 338: 16(float) FMul 332 337 |
| 339: 16(float) Load 260(dy) |
| 340: 96(int) Load 311(y) |
| 341: 16(float) ConvertSToF 340 |
| 342: 16(float) FMul 339 341 |
| 343: 27(fvec2) CompositeConstruct 338 342 |
| 345: 19(fvec4) Load 60(sc) |
| Store 344(param) 345 |
| 347: 16(float) Load 61(layer) |
| Store 346(param) 347 |
| Store 348(param) 343 |
| 349: 16(float) FunctionCall 37(textureProj(vf4;f1;vf2;) 344(param) 346(param) 348(param) |
| 350: 16(float) Load 272(shadowFactor) |
| 351: 16(float) FAdd 350 349 |
| Store 272(shadowFactor) 351 |
| 353: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 354 354 12 12 |
| 352: 96(int) Load 278(count) |
| 355: 96(int) IAdd 352 290 |
| Store 278(count) 355 |
| Branch 323 |
| 323: Label |
| 357: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 |
| 358: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 314 314 12 12 |
| 356: 96(int) Load 311(y) |
| 359: 96(int) IAdd 356 290 |
| Store 311(y) 359 |
| Branch 320 |
| 322: Label |
| 360: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 |
| Branch 302 |
| 302: Label |
| 362: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 |
| 363: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 294 294 12 12 |
| 361: 96(int) Load 291(x) |
| 364: 96(int) IAdd 361 290 |
| Store 291(x) 364 |
| Branch 299 |
| 301: Label |
| 366: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 |
| 367: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 368 368 12 12 |
| 365: 16(float) Load 272(shadowFactor) |
| 369: 96(int) Load 278(count) |
| 370: 16(float) ConvertSToF 369 |
| 371: 16(float) FDiv 365 370 |
| ReturnValue 371 |
| FunctionEnd |
| 81(shadow(vf3;vf3;): 73(fvec3) Function None 77 |
| 79(fragcolor): 75(ptr) FunctionParameter |
| 80(fragpos): 75(ptr) FunctionParameter |
| 82: Label |
| 377(i): 254(ptr) Variable Function |
| 395(shadowClip): 22(ptr) Variable Function |
| 445(shadowFactor): 25(ptr) Variable Function |
| 452(param): 22(ptr) Variable Function |
| 454(param): 25(ptr) Variable Function |
| 89: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 84 |
| 88: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 86 79(fragcolor) 49 |
| 92: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 90 80(fragpos) 49 |
| 376: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 85 85 12 12 |
| 375: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 84 81(shadow(vf3;vf3;) |
| 382: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 380 380 12 12 |
| 381: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 378 377(i) 49 |
| Store 377(i) 106 |
| Branch 383 |
| 383: Label |
| 387: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 84 |
| 388: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 380 380 12 12 |
| LoopMerge 385 386 None |
| Branch 389 |
| 389: Label |
| 391: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 84 |
| 392: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 380 380 12 12 |
| 390: 96(int) Load 377(i) |
| 394: 139(bool) SLessThan 390 393 |
| BranchConditional 394 384 385 |
| 384: Label |
| 400: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 84 |
| 401: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 398 398 12 12 |
| 399: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 396 395(shadowClip) 49 |
| 434: 96(int) Load 377(i) |
| 437: 435(ptr) AccessChain 431(ubo) 290 434 393 |
| 438: 402 Load 437 |
| 439: 73(fvec3) Load 80(fragpos) |
| 440: 16(float) CompositeExtract 439 0 |
| 441: 16(float) CompositeExtract 439 1 |
| 442: 16(float) CompositeExtract 439 2 |
| 443: 19(fvec4) CompositeConstruct 440 441 442 115 |
| 444: 19(fvec4) MatrixTimesVector 438 443 |
| Store 395(shadowClip) 444 |
| 449: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 447 447 12 12 |
| 448: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 446 445(shadowFactor) 49 |
| 450: 96(int) Load 377(i) |
| 451: 16(float) ConvertSToF 450 |
| 453: 19(fvec4) Load 395(shadowClip) |
| Store 452(param) 453 |
| Store 454(param) 451 |
| 455: 16(float) FunctionCall 62(filterPCF(vf4;f1;) 452(param) 454(param) |
| Store 445(shadowFactor) 455 |
| 457: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 458 458 12 12 |
| 456: 16(float) Load 445(shadowFactor) |
| 459: 73(fvec3) Load 79(fragcolor) |
| 460: 73(fvec3) VectorTimesScalar 459 456 |
| Store 79(fragcolor) 460 |
| Branch 386 |
| 386: Label |
| 462: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 84 |
| 463: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 380 380 12 12 |
| 461: 96(int) Load 377(i) |
| 464: 96(int) IAdd 461 290 |
| Store 377(i) 464 |
| Branch 383 |
| 385: Label |
| 466: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 84 |
| 467: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 468 468 12 12 |
| 465: 73(fvec3) Load 79(fragcolor) |
| ReturnValue 465 |
| FunctionEnd |