From f69d2768e534132e8626c4817c80e95464dcda8e Mon Sep 17 00:00:00 2001 From: Sajjad Mirza <90873047+sajjadmirzanv@users.noreply.github.com> Date: Fri, 4 Oct 2024 11:11:27 -0700 Subject: [PATCH] Use line and column from node on DebugLexicalBlock. * Fix bug in TestFixture.h, debug info gets enabled when nonsemantic debug info is requested. --- SPIRV/GlslangToSpv.cpp | 6 +- SPIRV/SpvBuilder.cpp | 16 +- SPIRV/SpvBuilder.h | 4 +- Test/baseResults/hlsl.pp.line2.frag.out | 108 +- Test/baseResults/hlsl.pp.line4.frag.out | 62 +- Test/baseResults/hlsl.round.dx9.frag.out | 4 +- Test/baseResults/hlsl.sample.dx9.frag.out | 274 +- Test/baseResults/hlsl.sample.dx9.vert.out | 112 +- Test/baseResults/spv.debuginfo.glsl.comp.out | 1864 ++++++------- Test/baseResults/spv.debuginfo.glsl.frag.out | 1799 ++++++------ Test/baseResults/spv.debuginfo.glsl.tesc.out | 590 ++-- Test/baseResults/spv.debuginfo.hlsl.comp.out | 2436 +++++++++-------- Test/baseResults/spv.debuginfo.hlsl.frag.out | 2221 ++++++++------- Test/baseResults/spv.debuginfo.hlsl.geom.out | 826 +++--- Test/baseResults/spv.debuginfo.hlsl.tesc.out | 1600 ++++++----- Test/baseResults/spv.debuginfo.hlsl.tese.out | 1047 +++---- Test/baseResults/spv.debuginfo.hlsl.vert.out | 1179 ++++---- .../spv.debuginfo.implicit_br.glsl.frag.out | 322 +-- .../spv.debuginfo.rt_types.glsl.rgen.out | 16 +- gtests/Hlsl.FromFile.cpp | 2 +- gtests/TestFixture.h | 8 + 21 files changed, 7746 insertions(+), 6750 deletions(-) diff --git a/SPIRV/GlslangToSpv.cpp b/SPIRV/GlslangToSpv.cpp index 0861013c..4348fdf8 100644 --- a/SPIRV/GlslangToSpv.cpp +++ b/SPIRV/GlslangToSpv.cpp @@ -2924,8 +2924,10 @@ bool TGlslangToSpvTraverser::visitAggregate(glslang::TVisit visit, glslang::TInt return false; } else { - if (node->getOp() == glslang::EOpScope) - builder.enterLexicalBlock(0); + if (node->getOp() == glslang::EOpScope) { + auto loc = node->getLoc(); + builder.enterLexicalBlock(loc.line, loc.column); + } } } else { if (sequenceDepth > 1 && node->getOp() == glslang::EOpScope) diff --git a/SPIRV/SpvBuilder.cpp b/SPIRV/SpvBuilder.cpp index e4d81f95..500c78f9 100644 --- a/SPIRV/SpvBuilder.cpp +++ b/SPIRV/SpvBuilder.cpp @@ -2361,7 +2361,7 @@ Id Builder::makeDebugFunction([[maybe_unused]] Function* function, Id nameId, Id return funcId; } -Id Builder::makeDebugLexicalBlock(uint32_t line) { +Id Builder::makeDebugLexicalBlock(uint32_t line, uint32_t column) { assert(!currentDebugScopeId.empty()); Id lexId = getUniqueId(); @@ -2371,7 +2371,7 @@ Id Builder::makeDebugLexicalBlock(uint32_t line) { lex->addImmediateOperand(NonSemanticShaderDebugInfo100DebugLexicalBlock); lex->addIdOperand(makeDebugSource(currentFileId)); lex->addIdOperand(makeUintConstant(line)); - lex->addIdOperand(makeUintConstant(0)); // column + lex->addIdOperand(makeUintConstant(column)); // column lex->addIdOperand(currentDebugScopeId.top()); // scope constantsTypesGlobals.push_back(std::unique_ptr(lex)); module.mapInstruction(lex); @@ -2404,10 +2404,14 @@ void Builder::makeReturn(bool implicit, Id retVal) } // Comments in header -void Builder::enterLexicalBlock(uint32_t line) +void Builder::enterLexicalBlock(uint32_t line, uint32_t column) { + if (!emitNonSemanticShaderDebugInfo) { + return; + } + // Generate new lexical scope debug instruction - Id lexId = makeDebugLexicalBlock(line); + Id lexId = makeDebugLexicalBlock(line, column); currentDebugScopeId.push(lexId); dirtyScopeTracker = true; } @@ -2415,6 +2419,10 @@ void Builder::enterLexicalBlock(uint32_t line) // Comments in header void Builder::leaveLexicalBlock() { + if (!emitNonSemanticShaderDebugInfo) { + return; + } + // Pop current scope from stack and clear current scope currentDebugScopeId.pop(); dirtyScopeTracker = true; diff --git a/SPIRV/SpvBuilder.h b/SPIRV/SpvBuilder.h index 887eaf1d..4bae1d5c 100644 --- a/SPIRV/SpvBuilder.h +++ b/SPIRV/SpvBuilder.h @@ -247,7 +247,7 @@ public: Id makeDebugValue(Id const debugLocalVariable, Id const value); Id makeDebugFunctionType(Id returnType, const std::vector& paramTypes); Id makeDebugFunction(Function* function, Id nameId, Id funcTypeId); - Id makeDebugLexicalBlock(uint32_t line); + Id makeDebugLexicalBlock(uint32_t line, uint32_t column); std::string unmangleFunctionName(std::string const& name) const; // Initialize non-semantic debug information for a function, including those of: @@ -451,7 +451,7 @@ public: void makeReturn(bool implicit, Id retVal = 0); // Initialize state and generate instructions for new lexical scope - void enterLexicalBlock(uint32_t line); + void enterLexicalBlock(uint32_t line, uint32_t column); // Set state and generate instructions to exit current lexical scope void leaveLexicalBlock(); diff --git a/Test/baseResults/hlsl.pp.line2.frag.out b/Test/baseResults/hlsl.pp.line2.frag.out index 0d8131ca..81b8d470 100644 --- a/Test/baseResults/hlsl.pp.line2.frag.out +++ b/Test/baseResults/hlsl.pp.line2.frag.out @@ -10,8 +10,8 @@ hlsl.pp.line2.frag ExecutionMode 5 OriginUpperLeft 1: String "hlsl.pp.line2.frag" 7: String "foo.frag" - 32: String "foo.h" - 42: String "foo2.h" + 36: String "foo.h" + 44: String "foo2.h" Source HLSL 500 1 "// OpModuleProcessed auto-map-locations // OpModuleProcessed auto-map-bindings // OpModuleProcessed entry-point MainPs @@ -68,23 +68,23 @@ PS_OUTPUT MainPs ( PS_INPUT i ) MemberName 13(PS_OUTPUT) 0 "vColor" Name 16 "@MainPs(struct-PS_INPUT-vf21;" Name 15 "i" - Name 19 "PerViewConstantBuffer_t" - MemberName 19(PerViewConstantBuffer_t) 0 "g_nDataIdx" - MemberName 19(PerViewConstantBuffer_t) 1 "g_nDataIdx2" - MemberName 19(PerViewConstantBuffer_t) 2 "g_B" - Name 21 "" - Name 34 "u" - Name 44 "ps_output" + Name 19 "ps_output" + Name 22 "u" + Name 23 "PerViewConstantBuffer_t" + MemberName 23(PerViewConstantBuffer_t) 0 "g_nDataIdx" + MemberName 23(PerViewConstantBuffer_t) 1 "g_nDataIdx2" + MemberName 23(PerViewConstantBuffer_t) 2 "g_B" + Name 25 "" Name 49 "g_tColor" Name 56 "g_sAniso" Name 69 "i" Name 71 "i.vTextureCoords" Name 75 "@entryPointOutput.vColor" Name 76 "param" - Decorate 19(PerViewConstantBuffer_t) Block - MemberDecorate 19(PerViewConstantBuffer_t) 0 Offset 0 - MemberDecorate 19(PerViewConstantBuffer_t) 1 Offset 4 - MemberDecorate 19(PerViewConstantBuffer_t) 2 Offset 8 + Decorate 23(PerViewConstantBuffer_t) Block + MemberDecorate 23(PerViewConstantBuffer_t) 0 Offset 0 + MemberDecorate 23(PerViewConstantBuffer_t) 1 Offset 4 + MemberDecorate 23(PerViewConstantBuffer_t) 2 Offset 8 Decorate 49(g_tColor) Binding 0 Decorate 49(g_tColor) DescriptorSet 0 Decorate 56(g_sAniso) Binding 1 @@ -100,21 +100,21 @@ PS_OUTPUT MainPs ( PS_INPUT i ) 12: TypeVector 8(float) 4 13(PS_OUTPUT): TypeStruct 12(fvec4) 14: TypeFunction 13(PS_OUTPUT) 11(ptr) - 18: TypeInt 32 0 -19(PerViewConstantBuffer_t): TypeStruct 18(int) 18(int) 18(int) - 20: TypePointer PushConstant 19(PerViewConstantBuffer_t) - 21: 20(ptr) Variable PushConstant - 22: TypeInt 32 1 - 23: 22(int) Constant 2 - 24: TypePointer PushConstant 18(int) - 27: TypeBool - 28: 18(int) Constant 0 - 33: TypePointer Function 18(int) - 35: 22(int) Constant 0 - 39: 22(int) Constant 1 - 43: TypePointer Function 13(PS_OUTPUT) + 18: TypePointer Function 13(PS_OUTPUT) + 20: TypeInt 32 0 + 21: TypePointer Function 20(int) +23(PerViewConstantBuffer_t): TypeStruct 20(int) 20(int) 20(int) + 24: TypePointer PushConstant 23(PerViewConstantBuffer_t) + 25: 24(ptr) Variable PushConstant + 26: TypeInt 32 1 + 27: 26(int) Constant 2 + 28: TypePointer PushConstant 20(int) + 31: TypeBool + 32: 20(int) Constant 0 + 37: 26(int) Constant 0 + 41: 26(int) Constant 1 45: TypeImage 8(float) 2D sampled format:Unknown - 46: 18(int) Constant 128 + 46: 20(int) Constant 128 47: TypeArray 45 46 48: TypePointer UniformConstant 47 49(g_tColor): 48(ptr) Variable UniformConstant @@ -136,7 +136,7 @@ PS_OUTPUT MainPs ( PS_INPUT i ) 76(param): 11(ptr) Variable Function Line 7 23 0 72: 9(fvec2) Load 71(i.vTextureCoords) - 73: 60(ptr) AccessChain 69(i) 35 + 73: 60(ptr) AccessChain 69(i) 37 Store 73 72 77:10(PS_INPUT) Load 69(i) Store 76(param) 77 @@ -149,39 +149,39 @@ PS_OUTPUT MainPs ( PS_INPUT i ) 16(@MainPs(struct-PS_INPUT-vf21;):13(PS_OUTPUT) Function None 14 15(i): 11(ptr) FunctionParameter 17: Label - 34(u): 33(ptr) Variable Function - 44(ps_output): 43(ptr) Variable Function + 19(ps_output): 18(ptr) Variable Function + 22(u): 21(ptr) Variable Function Line 7 47 0 - 25: 24(ptr) AccessChain 21 23 - 26: 18(int) Load 25 - 29: 27(bool) INotEqual 26 28 - SelectionMerge 31 None - BranchConditional 29 30 38 - 30: Label - Line 32 3 0 - 36: 24(ptr) AccessChain 21 35 - 37: 18(int) Load 36 - Store 34(u) 37 - Branch 31 - 38: Label - Line 32 67 0 - 40: 24(ptr) AccessChain 21 39 - 41: 18(int) Load 40 - Store 34(u) 41 - Branch 31 - 31: Label - Line 42 7 0 - 50: 18(int) Load 34(u) + 29: 28(ptr) AccessChain 25 27 + 30: 20(int) Load 29 + 33: 31(bool) INotEqual 30 32 + SelectionMerge 35 None + BranchConditional 33 34 40 + 34: Label + Line 36 3 0 + 38: 28(ptr) AccessChain 25 37 + 39: 20(int) Load 38 + Store 22(u) 39 + Branch 35 + 40: Label + Line 36 67 0 + 42: 28(ptr) AccessChain 25 41 + 43: 20(int) Load 42 + Store 22(u) 43 + Branch 35 + 35: Label + Line 44 7 0 + 50: 20(int) Load 22(u) 52: 51(ptr) AccessChain 49(g_tColor) 50 53: 45 Load 52 57: 54 Load 56(g_sAniso) 59: 58 SampledImage 53 57 - 61: 60(ptr) AccessChain 15(i) 35 + 61: 60(ptr) AccessChain 15(i) 37 62: 9(fvec2) Load 61 63: 12(fvec4) ImageSampleImplicitLod 59 62 - 65: 64(ptr) AccessChain 44(ps_output) 35 + 65: 64(ptr) AccessChain 19(ps_output) 37 Store 65 63 - Line 42 105 0 - 66:13(PS_OUTPUT) Load 44(ps_output) + Line 44 105 0 + 66:13(PS_OUTPUT) Load 19(ps_output) ReturnValue 66 FunctionEnd diff --git a/Test/baseResults/hlsl.pp.line4.frag.out b/Test/baseResults/hlsl.pp.line4.frag.out index aeca142a..a7dfd504 100644 --- a/Test/baseResults/hlsl.pp.line4.frag.out +++ b/Test/baseResults/hlsl.pp.line4.frag.out @@ -10,7 +10,7 @@ hlsl.pp.line4.frag ExecutionMode 5 OriginUpperLeft 1: String "hlsl.pp.line4.frag" 7: String "C:\\Users\\Greg\\shaders\\line\\foo4.frag" - 32: String "C:\\Users\\Greg\\shaders\\line\\u1.h" + 36: String "C:\\Users\\Greg\\shaders\\line\\u1.h" Source HLSL 500 1 "// OpModuleProcessed auto-map-locations // OpModuleProcessed auto-map-bindings // OpModuleProcessed entry-point MainPs @@ -63,19 +63,19 @@ PS_OUTPUT MainPs ( PS_INPUT i ) " Name 5 "MainPs" - Name 19 "PerViewConstantBuffer_t" - MemberName 19(PerViewConstantBuffer_t) 0 "g_nDataIdx" - MemberName 19(PerViewConstantBuffer_t) 1 "g_nDataIdx2" - MemberName 19(PerViewConstantBuffer_t) 2 "g_B" - Name 21 "" + Name 23 "PerViewConstantBuffer_t" + MemberName 23(PerViewConstantBuffer_t) 0 "g_nDataIdx" + MemberName 23(PerViewConstantBuffer_t) 1 "g_nDataIdx2" + MemberName 23(PerViewConstantBuffer_t) 2 "g_B" + Name 25 "" Name 48 "g_tColor" Name 55 "g_sAniso" Name 70 "i.vTextureCoords" Name 74 "@entryPointOutput.vColor" - Decorate 19(PerViewConstantBuffer_t) Block - MemberDecorate 19(PerViewConstantBuffer_t) 0 Offset 0 - MemberDecorate 19(PerViewConstantBuffer_t) 1 Offset 4 - MemberDecorate 19(PerViewConstantBuffer_t) 2 Offset 8 + Decorate 23(PerViewConstantBuffer_t) Block + MemberDecorate 23(PerViewConstantBuffer_t) 0 Offset 0 + MemberDecorate 23(PerViewConstantBuffer_t) 1 Offset 4 + MemberDecorate 23(PerViewConstantBuffer_t) 2 Offset 8 Decorate 48(g_tColor) Binding 0 Decorate 48(g_tColor) DescriptorSet 0 Decorate 55(g_sAniso) Binding 1 @@ -87,19 +87,19 @@ PS_OUTPUT MainPs ( PS_INPUT i ) 8: TypeFloat 32 9: TypeVector 8(float) 2 12: TypeVector 8(float) 4 - 18: TypeInt 32 0 -19(PerViewConstantBuffer_t): TypeStruct 18(int) 18(int) 18(int) - 20: TypePointer PushConstant 19(PerViewConstantBuffer_t) - 21: 20(ptr) Variable PushConstant - 22: TypeInt 32 1 - 23: 22(int) Constant 2 - 24: TypePointer PushConstant 18(int) - 27: TypeBool - 28: 18(int) Constant 0 - 35: 22(int) Constant 0 - 39: 22(int) Constant 1 + 20: TypeInt 32 0 +23(PerViewConstantBuffer_t): TypeStruct 20(int) 20(int) 20(int) + 24: TypePointer PushConstant 23(PerViewConstantBuffer_t) + 25: 24(ptr) Variable PushConstant + 26: TypeInt 32 1 + 27: 26(int) Constant 2 + 28: TypePointer PushConstant 20(int) + 31: TypeBool + 32: 20(int) Constant 0 + 37: 26(int) Constant 0 + 41: 26(int) Constant 1 44: TypeImage 8(float) 2D sampled format:Unknown - 45: 18(int) Constant 128 + 45: 20(int) Constant 128 46: TypeArray 44 45 47: TypePointer UniformConstant 46 48(g_tColor): 47(ptr) Variable UniformConstant @@ -119,23 +119,23 @@ PS_OUTPUT MainPs ( PS_INPUT i ) Line 7 25 0 71: 9(fvec2) Load 70(i.vTextureCoords) Line 7 29 0 - 83: 24(ptr) AccessChain 21 23 - 84: 18(int) Load 83 - 85: 27(bool) INotEqual 84 28 + 83: 28(ptr) AccessChain 25 27 + 84: 20(int) Load 83 + 85: 31(bool) INotEqual 84 32 SelectionMerge 92 None BranchConditional 85 86 89 86: Label - Line 32 1 0 - 87: 24(ptr) AccessChain 21 35 - 88: 18(int) Load 87 + Line 36 1 0 + 87: 28(ptr) AccessChain 25 37 + 88: 20(int) Load 87 Branch 92 89: Label Line 7 32 0 - 90: 24(ptr) AccessChain 21 39 - 91: 18(int) Load 90 + 90: 28(ptr) AccessChain 25 41 + 91: 20(int) Load 90 Branch 92 92: Label - 115: 18(int) Phi 88 86 91 89 + 115: 20(int) Phi 88 86 91 89 Line 7 33 0 94: 50(ptr) AccessChain 48(g_tColor) 115 95: 44 Load 94 diff --git a/Test/baseResults/hlsl.round.dx9.frag.out b/Test/baseResults/hlsl.round.dx9.frag.out index 5f539bb8..4e0a7918 100644 --- a/Test/baseResults/hlsl.round.dx9.frag.out +++ b/Test/baseResults/hlsl.round.dx9.frag.out @@ -5,7 +5,7 @@ gl_FragCoord origin is upper left 0:2 Function Definition: PixelShaderFunction(vf4; ( temp 4-component vector of float) 0:2 Function Parameters: 0:2 'input' ( in 4-component vector of float) -0:? Sequence +0:? Scope 0:3 Branch: Return with expression 0:3 round ( temp 4-component vector of float) 0:3 'input' ( in 4-component vector of float) @@ -22,7 +22,7 @@ gl_FragCoord origin is upper left 0:2 Function Definition: PixelShaderFunction(vf4; ( temp 4-component vector of float) 0:2 Function Parameters: 0:2 'input' ( in 4-component vector of float) -0:? Sequence +0:? Scope 0:3 Branch: Return with expression 0:3 round ( temp 4-component vector of float) 0:3 'input' ( in 4-component vector of float) diff --git a/Test/baseResults/hlsl.sample.dx9.frag.out b/Test/baseResults/hlsl.sample.dx9.frag.out index f1a6e0ae..1d1924cc 100644 --- a/Test/baseResults/hlsl.sample.dx9.frag.out +++ b/Test/baseResults/hlsl.sample.dx9.frag.out @@ -5,7 +5,10 @@ using depth_any 0:? Sequence 0:15 Function Definition: @main( ( temp structure{ temp 4-component vector of float Color, temp float Depth}) 0:15 Function Parameters: -0:? Sequence +0:? Scope +0:16 Sequence +0:16 Declare ( temp void) +0:16 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth}) 0:18 Sequence 0:18 move second child to first child ( temp 4-component vector of float) 0:18 'ColorOut' ( temp 4-component vector of float) @@ -196,7 +199,10 @@ using depth_any 0:? Sequence 0:15 Function Definition: @main( ( temp structure{ temp 4-component vector of float Color, temp float Depth}) 0:15 Function Parameters: -0:? Sequence +0:? Scope +0:16 Sequence +0:16 Declare ( temp void) +0:16 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth}) 0:18 Sequence 0:18 move second child to first child ( temp 4-component vector of float) 0:18 'ColorOut' ( temp 4-component vector of float) @@ -403,26 +409,26 @@ using depth_any MemberName 9(PS_OUTPUT) 0 "Color" MemberName 9(PS_OUTPUT) 1 "Depth" Name 11 "@main(" - Name 14 "ColorOut" - Name 20 "g_sam" - Name 32 "g_sam1D" - Name 38 "g_sam2D" - Name 48 "g_sam3D" - Name 58 "g_samCube" - Name 110 "psout" + Name 14 "psout" + Name 16 "ColorOut" + Name 22 "g_sam" + Name 34 "g_sam1D" + Name 40 "g_sam2D" + Name 50 "g_sam3D" + Name 60 "g_samCube" Name 125 "flattenTemp" Name 128 "@entryPointOutput.Color" Name 132 "@entryPointOutput.Depth" - Decorate 20(g_sam) Binding 0 - Decorate 20(g_sam) DescriptorSet 0 - Decorate 32(g_sam1D) Binding 1 - Decorate 32(g_sam1D) DescriptorSet 0 - Decorate 38(g_sam2D) Binding 2 - Decorate 38(g_sam2D) DescriptorSet 0 - Decorate 48(g_sam3D) Binding 3 - Decorate 48(g_sam3D) DescriptorSet 0 - Decorate 58(g_samCube) Binding 4 - Decorate 58(g_samCube) DescriptorSet 0 + Decorate 22(g_sam) Binding 0 + Decorate 22(g_sam) DescriptorSet 0 + Decorate 34(g_sam1D) Binding 1 + Decorate 34(g_sam1D) DescriptorSet 0 + Decorate 40(g_sam2D) Binding 2 + Decorate 40(g_sam2D) DescriptorSet 0 + Decorate 50(g_sam3D) Binding 3 + Decorate 50(g_sam3D) DescriptorSet 0 + Decorate 60(g_samCube) Binding 4 + Decorate 60(g_samCube) DescriptorSet 0 Decorate 128(@entryPointOutput.Color) Location 0 Decorate 132(@entryPointOutput.Depth) BuiltIn FragDepth 3: TypeVoid @@ -431,42 +437,42 @@ using depth_any 8: TypeVector 7(float) 4 9(PS_OUTPUT): TypeStruct 8(fvec4) 7(float) 10: TypeFunction 9(PS_OUTPUT) - 13: TypePointer Function 8(fvec4) - 15: 7(float) Constant 0 - 16: 8(fvec4) ConstantComposite 15 15 15 15 - 17: TypeImage 7(float) 2D sampled format:Unknown - 18: TypeSampledImage 17 - 19: TypePointer UniformConstant 18 - 20(g_sam): 19(ptr) Variable UniformConstant - 22: TypeVector 7(float) 2 - 23: 7(float) Constant 1053609165 - 24: 7(float) Constant 1050253722 - 25: 22(fvec2) ConstantComposite 23 24 - 29: TypeImage 7(float) 1D sampled format:Unknown - 30: TypeSampledImage 29 - 31: TypePointer UniformConstant 30 - 32(g_sam1D): 31(ptr) Variable UniformConstant - 34: 7(float) Constant 1056964608 - 38(g_sam2D): 19(ptr) Variable UniformConstant - 40: 7(float) Constant 1058642330 - 41: 22(fvec2) ConstantComposite 34 40 - 45: TypeImage 7(float) 3D sampled format:Unknown - 46: TypeSampledImage 45 - 47: TypePointer UniformConstant 46 - 48(g_sam3D): 47(ptr) Variable UniformConstant - 50: TypeVector 7(float) 3 - 51: 50(fvec3) ConstantComposite 34 40 23 - 55: TypeImage 7(float) Cube sampled format:Unknown - 56: TypeSampledImage 55 - 57: TypePointer UniformConstant 56 - 58(g_samCube): 57(ptr) Variable UniformConstant - 64: 8(fvec4) ConstantComposite 23 24 15 15 - 68: TypeInt 32 0 - 69: 68(int) Constant 3 - 75: 8(fvec4) ConstantComposite 34 15 15 15 - 82: 8(fvec4) ConstantComposite 34 40 15 15 - 91: 8(fvec4) ConstantComposite 34 40 23 15 - 109: TypePointer Function 9(PS_OUTPUT) + 13: TypePointer Function 9(PS_OUTPUT) + 15: TypePointer Function 8(fvec4) + 17: 7(float) Constant 0 + 18: 8(fvec4) ConstantComposite 17 17 17 17 + 19: TypeImage 7(float) 2D sampled format:Unknown + 20: TypeSampledImage 19 + 21: TypePointer UniformConstant 20 + 22(g_sam): 21(ptr) Variable UniformConstant + 24: TypeVector 7(float) 2 + 25: 7(float) Constant 1053609165 + 26: 7(float) Constant 1050253722 + 27: 24(fvec2) ConstantComposite 25 26 + 31: TypeImage 7(float) 1D sampled format:Unknown + 32: TypeSampledImage 31 + 33: TypePointer UniformConstant 32 + 34(g_sam1D): 33(ptr) Variable UniformConstant + 36: 7(float) Constant 1056964608 + 40(g_sam2D): 21(ptr) Variable UniformConstant + 42: 7(float) Constant 1058642330 + 43: 24(fvec2) ConstantComposite 36 42 + 47: TypeImage 7(float) 3D sampled format:Unknown + 48: TypeSampledImage 47 + 49: TypePointer UniformConstant 48 + 50(g_sam3D): 49(ptr) Variable UniformConstant + 52: TypeVector 7(float) 3 + 53: 52(fvec3) ConstantComposite 36 42 25 + 57: TypeImage 7(float) Cube sampled format:Unknown + 58: TypeSampledImage 57 + 59: TypePointer UniformConstant 58 + 60(g_samCube): 59(ptr) Variable UniformConstant + 66: 8(fvec4) ConstantComposite 25 26 17 17 + 70: TypeInt 32 0 + 71: 70(int) Constant 3 + 77: 8(fvec4) ConstantComposite 36 17 17 17 + 84: 8(fvec4) ConstantComposite 36 42 17 17 + 93: 8(fvec4) ConstantComposite 36 42 25 17 111: TypeInt 32 1 112: 111(int) Constant 0 114: 7(float) Constant 1092616192 @@ -480,11 +486,11 @@ using depth_any Line 1 15 1 5(main): 3 Function None 4 6: Label -125(flattenTemp): 109(ptr) Variable Function +125(flattenTemp): 13(ptr) Variable Function Line 1 15 0 126:9(PS_OUTPUT) FunctionCall 11(@main() Store 125(flattenTemp) 126 - 129: 13(ptr) AccessChain 125(flattenTemp) 112 + 129: 15(ptr) AccessChain 125(flattenTemp) 112 130: 8(fvec4) Load 129 Store 128(@entryPointOutput.Color) 130 133: 120(ptr) AccessChain 125(flattenTemp) 118 @@ -495,100 +501,100 @@ using depth_any Line 1 15 1 11(@main():9(PS_OUTPUT) Function None 10 12: Label - 14(ColorOut): 13(ptr) Variable Function - 110(psout): 109(ptr) Variable Function + 14(psout): 13(ptr) Variable Function + 16(ColorOut): 15(ptr) Variable Function Line 1 18 0 - Store 14(ColorOut) 16 + Store 16(ColorOut) 18 Line 1 20 0 - 21: 18 Load 20(g_sam) - 26: 8(fvec4) ImageSampleImplicitLod 21 25 - 27: 8(fvec4) Load 14(ColorOut) - 28: 8(fvec4) FAdd 27 26 - Store 14(ColorOut) 28 + 23: 20 Load 22(g_sam) + 28: 8(fvec4) ImageSampleImplicitLod 23 27 + 29: 8(fvec4) Load 16(ColorOut) + 30: 8(fvec4) FAdd 29 28 + Store 16(ColorOut) 30 Line 1 21 0 - 33: 30 Load 32(g_sam1D) - 35: 8(fvec4) ImageSampleImplicitLod 33 34 - 36: 8(fvec4) Load 14(ColorOut) - 37: 8(fvec4) FAdd 36 35 - Store 14(ColorOut) 37 + 35: 32 Load 34(g_sam1D) + 37: 8(fvec4) ImageSampleImplicitLod 35 36 + 38: 8(fvec4) Load 16(ColorOut) + 39: 8(fvec4) FAdd 38 37 + Store 16(ColorOut) 39 Line 1 22 0 - 39: 18 Load 38(g_sam2D) - 42: 8(fvec4) ImageSampleImplicitLod 39 41 - 43: 8(fvec4) Load 14(ColorOut) - 44: 8(fvec4) FAdd 43 42 - Store 14(ColorOut) 44 + 41: 20 Load 40(g_sam2D) + 44: 8(fvec4) ImageSampleImplicitLod 41 43 + 45: 8(fvec4) Load 16(ColorOut) + 46: 8(fvec4) FAdd 45 44 + Store 16(ColorOut) 46 Line 1 23 0 - 49: 46 Load 48(g_sam3D) - 52: 8(fvec4) ImageSampleImplicitLod 49 51 - 53: 8(fvec4) Load 14(ColorOut) - 54: 8(fvec4) FAdd 53 52 - Store 14(ColorOut) 54 + 51: 48 Load 50(g_sam3D) + 54: 8(fvec4) ImageSampleImplicitLod 51 53 + 55: 8(fvec4) Load 16(ColorOut) + 56: 8(fvec4) FAdd 55 54 + Store 16(ColorOut) 56 Line 1 24 0 - 59: 56 Load 58(g_samCube) - 60: 8(fvec4) ImageSampleImplicitLod 59 51 - 61: 8(fvec4) Load 14(ColorOut) - 62: 8(fvec4) FAdd 61 60 - Store 14(ColorOut) 62 + 61: 58 Load 60(g_samCube) + 62: 8(fvec4) ImageSampleImplicitLod 61 53 + 63: 8(fvec4) Load 16(ColorOut) + 64: 8(fvec4) FAdd 63 62 + Store 16(ColorOut) 64 Line 1 26 0 - 63: 18 Load 20(g_sam) - 65: 7(float) CompositeExtract 64 0 - 66: 7(float) CompositeExtract 64 1 - 67: 22(fvec2) CompositeConstruct 65 66 - 70: 7(float) CompositeExtract 64 3 - 71: 8(fvec4) ImageSampleExplicitLod 63 67 Lod 70 - 72: 8(fvec4) Load 14(ColorOut) - 73: 8(fvec4) FAdd 72 71 - Store 14(ColorOut) 73 + 65: 20 Load 22(g_sam) + 67: 7(float) CompositeExtract 66 0 + 68: 7(float) CompositeExtract 66 1 + 69: 24(fvec2) CompositeConstruct 67 68 + 72: 7(float) CompositeExtract 66 3 + 73: 8(fvec4) ImageSampleExplicitLod 65 69 Lod 72 + 74: 8(fvec4) Load 16(ColorOut) + 75: 8(fvec4) FAdd 74 73 + Store 16(ColorOut) 75 Line 1 27 0 - 74: 30 Load 32(g_sam1D) - 76: 7(float) CompositeExtract 75 0 - 77: 7(float) CompositeExtract 75 3 - 78: 8(fvec4) ImageSampleExplicitLod 74 76 Lod 77 - 79: 8(fvec4) Load 14(ColorOut) - 80: 8(fvec4) FAdd 79 78 - Store 14(ColorOut) 80 + 76: 32 Load 34(g_sam1D) + 78: 7(float) CompositeExtract 77 0 + 79: 7(float) CompositeExtract 77 3 + 80: 8(fvec4) ImageSampleExplicitLod 76 78 Lod 79 + 81: 8(fvec4) Load 16(ColorOut) + 82: 8(fvec4) FAdd 81 80 + Store 16(ColorOut) 82 Line 1 28 0 - 81: 18 Load 38(g_sam2D) - 83: 7(float) CompositeExtract 82 0 - 84: 7(float) CompositeExtract 82 1 - 85: 22(fvec2) CompositeConstruct 83 84 - 86: 7(float) CompositeExtract 82 3 - 87: 8(fvec4) ImageSampleExplicitLod 81 85 Lod 86 - 88: 8(fvec4) Load 14(ColorOut) - 89: 8(fvec4) FAdd 88 87 - Store 14(ColorOut) 89 + 83: 20 Load 40(g_sam2D) + 85: 7(float) CompositeExtract 84 0 + 86: 7(float) CompositeExtract 84 1 + 87: 24(fvec2) CompositeConstruct 85 86 + 88: 7(float) CompositeExtract 84 3 + 89: 8(fvec4) ImageSampleExplicitLod 83 87 Lod 88 + 90: 8(fvec4) Load 16(ColorOut) + 91: 8(fvec4) FAdd 90 89 + Store 16(ColorOut) 91 Line 1 29 0 - 90: 46 Load 48(g_sam3D) - 92: 7(float) CompositeExtract 91 0 - 93: 7(float) CompositeExtract 91 1 - 94: 7(float) CompositeExtract 91 2 - 95: 50(fvec3) CompositeConstruct 92 93 94 - 96: 7(float) CompositeExtract 91 3 - 97: 8(fvec4) ImageSampleExplicitLod 90 95 Lod 96 - 98: 8(fvec4) Load 14(ColorOut) - 99: 8(fvec4) FAdd 98 97 - Store 14(ColorOut) 99 + 92: 48 Load 50(g_sam3D) + 94: 7(float) CompositeExtract 93 0 + 95: 7(float) CompositeExtract 93 1 + 96: 7(float) CompositeExtract 93 2 + 97: 52(fvec3) CompositeConstruct 94 95 96 + 98: 7(float) CompositeExtract 93 3 + 99: 8(fvec4) ImageSampleExplicitLod 92 97 Lod 98 + 100: 8(fvec4) Load 16(ColorOut) + 101: 8(fvec4) FAdd 100 99 + Store 16(ColorOut) 101 Line 1 30 0 - 100: 56 Load 58(g_samCube) - 101: 7(float) CompositeExtract 91 0 - 102: 7(float) CompositeExtract 91 1 - 103: 7(float) CompositeExtract 91 2 - 104: 50(fvec3) CompositeConstruct 101 102 103 - 105: 7(float) CompositeExtract 91 3 - 106: 8(fvec4) ImageSampleExplicitLod 100 104 Lod 105 - 107: 8(fvec4) Load 14(ColorOut) - 108: 8(fvec4) FAdd 107 106 - Store 14(ColorOut) 108 + 102: 58 Load 60(g_samCube) + 103: 7(float) CompositeExtract 93 0 + 104: 7(float) CompositeExtract 93 1 + 105: 7(float) CompositeExtract 93 2 + 106: 52(fvec3) CompositeConstruct 103 104 105 + 107: 7(float) CompositeExtract 93 3 + 108: 8(fvec4) ImageSampleExplicitLod 102 106 Lod 107 + 109: 8(fvec4) Load 16(ColorOut) + 110: 8(fvec4) FAdd 109 108 + Store 16(ColorOut) 110 Line 1 32 0 - 113: 8(fvec4) Load 14(ColorOut) + 113: 8(fvec4) Load 16(ColorOut) 115: 8(fvec4) CompositeConstruct 114 114 114 114 116: 8(fvec4) FDiv 113 115 - 117: 13(ptr) AccessChain 110(psout) 112 + 117: 15(ptr) AccessChain 14(psout) 112 Store 117 116 Line 1 33 0 - 121: 120(ptr) AccessChain 110(psout) 118 + 121: 120(ptr) AccessChain 14(psout) 118 Store 121 119 Line 1 35 0 - 122:9(PS_OUTPUT) Load 110(psout) + 122:9(PS_OUTPUT) Load 14(psout) ReturnValue 122 FunctionEnd diff --git a/Test/baseResults/hlsl.sample.dx9.vert.out b/Test/baseResults/hlsl.sample.dx9.vert.out index 2b6520a0..96e7143f 100644 --- a/Test/baseResults/hlsl.sample.dx9.vert.out +++ b/Test/baseResults/hlsl.sample.dx9.vert.out @@ -3,7 +3,10 @@ Shader version: 500 0:? Sequence 0:11 Function Definition: @main( ( temp structure{ temp 4-component vector of float Pos}) 0:11 Function Parameters: -0:? Sequence +0:? Scope +0:12 Sequence +0:12 Declare ( temp void) +0:12 'vsout' ( temp structure{ temp 4-component vector of float Pos}) 0:14 Sequence 0:14 move second child to first child ( temp 4-component vector of float) 0:14 'PosOut' ( temp 4-component vector of float) @@ -82,7 +85,10 @@ Shader version: 500 0:? Sequence 0:11 Function Definition: @main( ( temp structure{ temp 4-component vector of float Pos}) 0:11 Function Parameters: -0:? Sequence +0:? Scope +0:12 Sequence +0:12 Declare ( temp void) +0:12 'vsout' ( temp structure{ temp 4-component vector of float Pos}) 0:14 Sequence 0:14 move second child to first child ( temp 4-component vector of float) 0:14 'PosOut' ( temp 4-component vector of float) @@ -175,15 +181,15 @@ Shader version: 500 Name 9 "VS_OUTPUT" MemberName 9(VS_OUTPUT) 0 "Pos" Name 11 "@main(" - Name 14 "PosOut" - Name 20 "g_sam" - Name 36 "g_sam2D" - Name 49 "vsout" + Name 14 "vsout" + Name 16 "PosOut" + Name 22 "g_sam" + Name 38 "g_sam2D" Name 61 "@entryPointOutput.Pos" - Decorate 20(g_sam) Binding 0 - Decorate 20(g_sam) DescriptorSet 0 - Decorate 36(g_sam2D) Binding 1 - Decorate 36(g_sam2D) DescriptorSet 0 + Decorate 22(g_sam) Binding 0 + Decorate 22(g_sam) DescriptorSet 0 + Decorate 38(g_sam2D) Binding 1 + Decorate 38(g_sam2D) DescriptorSet 0 Decorate 61(@entryPointOutput.Pos) BuiltIn Position 3: TypeVoid 4: TypeFunction 3 @@ -191,25 +197,25 @@ Shader version: 500 8: TypeVector 7(float) 4 9(VS_OUTPUT): TypeStruct 8(fvec4) 10: TypeFunction 9(VS_OUTPUT) - 13: TypePointer Function 8(fvec4) - 15: 7(float) Constant 0 - 16: 8(fvec4) ConstantComposite 15 15 15 15 - 17: TypeImage 7(float) 2D sampled format:Unknown - 18: TypeSampledImage 17 - 19: TypePointer UniformConstant 18 - 20(g_sam): 19(ptr) Variable UniformConstant - 22: 7(float) Constant 1050253722 - 23: 7(float) Constant 1053609165 - 24: 7(float) Constant 1065353216 - 25: 8(fvec4) ConstantComposite 22 23 15 24 - 26: TypeVector 7(float) 2 - 30: TypeInt 32 0 - 31: 30(int) Constant 3 - 36(g_sam2D): 19(ptr) Variable UniformConstant - 38: 7(float) Constant 1056964608 - 39: 7(float) Constant 1058642330 - 40: 8(fvec4) ConstantComposite 38 39 15 24 - 48: TypePointer Function 9(VS_OUTPUT) + 13: TypePointer Function 9(VS_OUTPUT) + 15: TypePointer Function 8(fvec4) + 17: 7(float) Constant 0 + 18: 8(fvec4) ConstantComposite 17 17 17 17 + 19: TypeImage 7(float) 2D sampled format:Unknown + 20: TypeSampledImage 19 + 21: TypePointer UniformConstant 20 + 22(g_sam): 21(ptr) Variable UniformConstant + 24: 7(float) Constant 1050253722 + 25: 7(float) Constant 1053609165 + 26: 7(float) Constant 1065353216 + 27: 8(fvec4) ConstantComposite 24 25 17 26 + 28: TypeVector 7(float) 2 + 32: TypeInt 32 0 + 33: 32(int) Constant 3 + 38(g_sam2D): 21(ptr) Variable UniformConstant + 40: 7(float) Constant 1056964608 + 41: 7(float) Constant 1058642330 + 42: 8(fvec4) ConstantComposite 40 41 17 26 50: TypeInt 32 1 51: 50(int) Constant 0 53: 7(float) Constant 1073741824 @@ -227,37 +233,37 @@ Shader version: 500 Line 1 11 1 11(@main():9(VS_OUTPUT) Function None 10 12: Label - 14(PosOut): 13(ptr) Variable Function - 49(vsout): 48(ptr) Variable Function + 14(vsout): 13(ptr) Variable Function + 16(PosOut): 15(ptr) Variable Function Line 1 14 0 - Store 14(PosOut) 16 + Store 16(PosOut) 18 Line 1 16 0 - 21: 18 Load 20(g_sam) - 27: 7(float) CompositeExtract 25 0 - 28: 7(float) CompositeExtract 25 1 - 29: 26(fvec2) CompositeConstruct 27 28 - 32: 7(float) CompositeExtract 25 3 - 33: 8(fvec4) ImageSampleExplicitLod 21 29 Lod 32 - 34: 8(fvec4) Load 14(PosOut) - 35: 8(fvec4) FAdd 34 33 - Store 14(PosOut) 35 + 23: 20 Load 22(g_sam) + 29: 7(float) CompositeExtract 27 0 + 30: 7(float) CompositeExtract 27 1 + 31: 28(fvec2) CompositeConstruct 29 30 + 34: 7(float) CompositeExtract 27 3 + 35: 8(fvec4) ImageSampleExplicitLod 23 31 Lod 34 + 36: 8(fvec4) Load 16(PosOut) + 37: 8(fvec4) FAdd 36 35 + Store 16(PosOut) 37 Line 1 17 0 - 37: 18 Load 36(g_sam2D) - 41: 7(float) CompositeExtract 40 0 - 42: 7(float) CompositeExtract 40 1 - 43: 26(fvec2) CompositeConstruct 41 42 - 44: 7(float) CompositeExtract 40 3 - 45: 8(fvec4) ImageSampleExplicitLod 37 43 Lod 44 - 46: 8(fvec4) Load 14(PosOut) - 47: 8(fvec4) FAdd 46 45 - Store 14(PosOut) 47 + 39: 20 Load 38(g_sam2D) + 43: 7(float) CompositeExtract 42 0 + 44: 7(float) CompositeExtract 42 1 + 45: 28(fvec2) CompositeConstruct 43 44 + 46: 7(float) CompositeExtract 42 3 + 47: 8(fvec4) ImageSampleExplicitLod 39 45 Lod 46 + 48: 8(fvec4) Load 16(PosOut) + 49: 8(fvec4) FAdd 48 47 + Store 16(PosOut) 49 Line 1 19 0 - 52: 8(fvec4) Load 14(PosOut) + 52: 8(fvec4) Load 16(PosOut) 54: 8(fvec4) CompositeConstruct 53 53 53 53 55: 8(fvec4) FDiv 52 54 - 56: 13(ptr) AccessChain 49(vsout) 51 + 56: 15(ptr) AccessChain 14(vsout) 51 Store 56 55 Line 1 21 0 - 57:9(VS_OUTPUT) Load 49(vsout) + 57:9(VS_OUTPUT) Load 14(vsout) ReturnValue 57 FunctionEnd diff --git a/Test/baseResults/spv.debuginfo.glsl.comp.out b/Test/baseResults/spv.debuginfo.glsl.comp.out index af043304..bcd29ecb 100644 --- a/Test/baseResults/spv.debuginfo.glsl.comp.out +++ b/Test/baseResults/spv.debuginfo.glsl.comp.out @@ -1,7 +1,7 @@ spv.debuginfo.glsl.comp // Module Version 10000 // Generated by (magic number): 8000b -// Id's are bound by 979 +// Id's are bound by 999 Capability Shader Extension "SPV_KHR_non_semantic_info" @@ -220,19 +220,19 @@ void main() 194: String "particleIn" 198: String "ParticleIn" 203: String "" - 219: String "particleOut" - 222: String "ParticleOut" - 249: String "force" - 263: String "pos" - 273: String "vel" - 581: String "f" - 630: String "sphereDist" - 681: String "calculateNormals" - 684: String "PushConsts" - 691: String "pushConsts" - 725: String "a" - 739: String "b" - 756: String "c" + 222: String "particleOut" + 225: String "ParticleOut" + 251: String "force" + 265: String "pos" + 275: String "vel" + 592: String "f" + 641: String "sphereDist" + 694: String "calculateNormals" + 697: String "PushConsts" + 703: String "pushConsts" + 742: String "a" + 755: String "b" + 772: String "c" Name 14 "main" Name 31 "springForce(vf3;vf3;f1;" Name 28 "p0" @@ -264,45 +264,45 @@ void main() Name 192 "ParticleIn" MemberName 192(ParticleIn) 0 "particleIn" Name 201 "" - Name 217 "ParticleOut" - MemberName 217(ParticleOut) 0 "particleOut" - Name 226 "" - Name 247 "force" - Name 261 "pos" - Name 271 "vel" - Name 293 "param" + Name 220 "ParticleOut" + MemberName 220(ParticleOut) 0 "particleOut" + Name 228 "" + Name 249 "force" + Name 263 "pos" + Name 273 "vel" Name 297 "param" - Name 299 "param" - Name 322 "param" - Name 326 "param" - Name 328 "param" - Name 355 "param" - Name 359 "param" + Name 301 "param" + Name 303 "param" + Name 327 "param" + Name 331 "param" + Name 333 "param" Name 361 "param" - Name 383 "param" - Name 387 "param" - Name 389 "param" - Name 427 "param" - Name 431 "param" - Name 433 "param" - Name 466 "param" - Name 470 "param" - Name 472 "param" - Name 513 "param" - Name 517 "param" - Name 519 "param" - Name 556 "param" - Name 560 "param" - Name 562 "param" - Name 579 "f" - Name 628 "sphereDist" - Name 679 "PushConsts" - MemberName 679(PushConsts) 0 "calculateNormals" - Name 689 "pushConsts" - Name 701 "normal" - Name 723 "a" - Name 737 "b" - Name 754 "c" + Name 365 "param" + Name 367 "param" + Name 390 "param" + Name 394 "param" + Name 396 "param" + Name 435 "param" + Name 439 "param" + Name 441 "param" + Name 475 "param" + Name 479 "param" + Name 481 "param" + Name 523 "param" + Name 527 "param" + Name 529 "param" + Name 567 "param" + Name 571 "param" + Name 573 "param" + Name 590 "f" + Name 639 "sphereDist" + Name 692 "PushConsts" + MemberName 692(PushConsts) 0 "calculateNormals" + Name 701 "pushConsts" + Name 716 "normal" + Name 740 "a" + Name 753 "b" + Name 770 "c" Decorate 78(UBO) Block MemberDecorate 78(UBO) 0 Offset 0 MemberDecorate 78(UBO) 1 Offset 4 @@ -328,14 +328,14 @@ void main() MemberDecorate 192(ParticleIn) 0 Offset 0 Decorate 201 Binding 0 Decorate 201 DescriptorSet 0 - Decorate 215 ArrayStride 80 - Decorate 217(ParticleOut) BufferBlock - MemberDecorate 217(ParticleOut) 0 Offset 0 - Decorate 226 Binding 1 - Decorate 226 DescriptorSet 0 - Decorate 679(PushConsts) Block - MemberDecorate 679(PushConsts) 0 Offset 0 - Decorate 978 BuiltIn WorkgroupSize + Decorate 218 ArrayStride 80 + Decorate 220(ParticleOut) BufferBlock + MemberDecorate 220(ParticleOut) 0 Offset 0 + Decorate 228 Binding 1 + Decorate 228 DescriptorSet 0 + Decorate 692(PushConsts) Block + MemberDecorate 692(PushConsts) 0 Offset 0 + Decorate 998 BuiltIn WorkgroupSize 4: TypeVoid 5: TypeFunction 4 7: TypeInt 32 0 @@ -447,145 +447,165 @@ void main() 204: 73(int) Constant 0 208: 73(int) Constant 4 211: 16(float) Constant 1065353216 - 215: TypeRuntimeArray 178(Particle) - 216: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 187 12 -217(ParticleOut): TypeStruct 215 - 220: 7(int) Constant 40 - 218: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 219 216 35 220 196 12 12 13 - 223: 7(int) Constant 82 - 221: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 222 39 35 223 12 38 222 12 13 218 - 224: TypePointer Uniform 217(ParticleOut) - 225: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 221 41 12 - 226: 224(ptr) Variable Uniform - 227: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 203 221 35 223 12 38 203 226 82 - 232: TypePointer Uniform 71(fvec4) - 233: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 72 41 12 - 239: 7(int) Constant 83 - 240: 73(int) Constant 1 - 241: 16(float) Constant 0 - 242: 71(fvec4) ConstantComposite 241 241 241 241 - 245: 7(int) Constant 84 - 250: 7(int) Constant 88 - 248: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 249 20 35 250 12 55 40 - 254: 73(int) Constant 9 - 264: 7(int) Constant 90 - 262: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 263 20 35 264 12 55 40 - 274: 7(int) Constant 91 - 272: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 273 20 35 274 12 55 40 - 283: 7(int) Constant 95 + 216: 7(int) Constant 82 + 217: 7(int) Constant 26 + 215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 216 217 55 + 218: TypeRuntimeArray 178(Particle) + 219: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 187 12 +220(ParticleOut): TypeStruct 218 + 223: 7(int) Constant 40 + 221: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 222 219 35 223 196 12 12 13 + 224: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 225 39 35 216 12 38 225 12 13 221 + 226: TypePointer Uniform 220(ParticleOut) + 227: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 224 41 12 + 228: 226(ptr) Variable Uniform + 229: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 203 224 35 216 12 38 203 228 82 + 234: TypePointer Uniform 71(fvec4) + 235: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 72 41 12 + 241: 7(int) Constant 83 + 242: 73(int) Constant 1 + 243: 16(float) Constant 0 + 244: 71(fvec4) ConstantComposite 243 243 243 243 + 247: 7(int) Constant 84 + 252: 7(int) Constant 88 + 250: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 251 20 35 252 12 55 40 + 256: 73(int) Constant 9 + 266: 7(int) Constant 90 + 264: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 265 20 35 266 12 55 40 + 276: 7(int) Constant 91 + 274: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 275 20 35 276 12 55 40 + 285: 7(int) Constant 95 291: 7(int) Constant 96 - 308: 7(int) Constant 99 - 320: 7(int) Constant 100 - 337: 7(int) Constant 103 - 349: 7(int) Constant 104 - 354: 73(int) Constant 5 - 370: 7(int) Constant 107 - 378: 7(int) Constant 108 - 398: 7(int) Constant 111 - 420: 7(int) Constant 112 - 426: 73(int) Constant 6 - 442: 7(int) Constant 115 - 460: 7(int) Constant 116 - 481: 7(int) Constant 119 - 507: 7(int) Constant 120 - 528: 7(int) Constant 123 - 550: 7(int) Constant 124 - 568: 73(int) Constant 3 - 572: 7(int) Constant 127 - 582: 7(int) Constant 130 - 580: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 581 20 35 582 12 55 40 - 592: 7(int) Constant 131 - 599: 16(float) Constant 1056964608 - 616: 7(int) Constant 132 - 631: 7(int) Constant 135 - 629: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 630 20 35 631 12 55 40 - 638: 73(int) Constant 8 - 645: 7(int) Constant 136 - 647: 73(int) Constant 7 - 650: 16(float) Constant 1008981770 - 658: 7(int) Constant 138 - 677: 7(int) Constant 140 - 679(PushConsts): TypeStruct 7(int) - 682: 7(int) Constant 63 - 680: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 681 9 35 682 22 12 12 13 - 685: 7(int) Constant 144 - 683: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 684 39 35 685 12 38 684 12 13 680 - 686: TypePointer PushConstant 679(PushConsts) - 687: 7(int) Constant 9 - 688: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 683 687 12 - 689(pushConsts): 686(ptr) Variable PushConstant - 690: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 691 683 35 685 12 38 691 689(pushConsts) 82 - 692: TypePointer PushConstant 7(int) - 693: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 9 687 12 - 703: 7(int) Constant 145 - 702: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 180 20 35 703 12 55 40 - 707: 19(fvec3) ConstantComposite 241 241 241 - 710: 7(int) Constant 147 - 718: 7(int) Constant 148 - 726: 7(int) Constant 149 - 724: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 725 20 35 726 12 55 40 - 740: 7(int) Constant 150 - 738: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 739 20 35 740 12 55 40 - 757: 7(int) Constant 151 - 755: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 756 20 35 757 12 55 40 - 772: 7(int) Constant 152 - 784: 7(int) Constant 154 - 796: 7(int) Constant 155 - 808: 7(int) Constant 156 - 821: 7(int) Constant 157 - 830: 7(int) Constant 158 - 842: 7(int) Constant 161 - 854: 7(int) Constant 162 - 862: 7(int) Constant 163 - 874: 7(int) Constant 164 - 887: 7(int) Constant 165 - 896: 7(int) Constant 166 - 908: 7(int) Constant 168 - 920: 7(int) Constant 169 - 929: 7(int) Constant 170 - 942: 7(int) Constant 171 - 954: 7(int) Constant 172 - 966: 7(int) Constant 175 - 976: 7(int) Constant 177 - 977: 7(int) Constant 10 - 978: 123(ivec3) ConstantComposite 977 977 39 + 292: 7(int) Constant 9 + 290: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 291 292 55 + 312: 7(int) Constant 99 + 322: 7(int) Constant 100 + 321: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 322 292 55 + 342: 7(int) Constant 103 + 352: 7(int) Constant 104 + 351: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 352 292 55 + 360: 73(int) Constant 5 + 376: 7(int) Constant 107 + 382: 7(int) Constant 108 + 381: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 382 292 55 + 405: 7(int) Constant 111 + 425: 7(int) Constant 112 + 424: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 425 292 55 + 434: 73(int) Constant 6 + 450: 7(int) Constant 115 + 466: 7(int) Constant 116 + 465: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 466 292 55 + 490: 7(int) Constant 119 + 514: 7(int) Constant 120 + 513: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 514 292 55 + 538: 7(int) Constant 123 + 558: 7(int) Constant 124 + 557: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 558 292 55 + 579: 73(int) Constant 3 + 583: 7(int) Constant 127 + 593: 7(int) Constant 130 + 591: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 592 20 35 593 12 55 40 + 603: 7(int) Constant 131 + 610: 16(float) Constant 1056964608 + 627: 7(int) Constant 132 + 642: 7(int) Constant 135 + 640: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 641 20 35 642 12 55 40 + 649: 73(int) Constant 8 + 656: 7(int) Constant 136 + 658: 73(int) Constant 7 + 661: 16(float) Constant 1008981770 + 667: 7(int) Constant 138 + 668: 7(int) Constant 30 + 666: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 667 668 55 + 690: 7(int) Constant 140 + 692(PushConsts): TypeStruct 7(int) + 695: 7(int) Constant 63 + 693: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 694 9 35 695 22 12 12 13 + 698: 7(int) Constant 144 + 696: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 697 39 35 698 12 38 697 12 13 693 + 699: TypePointer PushConstant 692(PushConsts) + 700: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 696 292 12 + 701(pushConsts): 699(ptr) Variable PushConstant + 702: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 703 696 35 698 12 38 703 701(pushConsts) 82 + 704: TypePointer PushConstant 7(int) + 705: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 9 292 12 + 714: 7(int) Constant 145 + 715: 7(int) Constant 15 + 713: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 714 715 55 + 717: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 180 20 35 714 12 713 40 + 721: 19(fvec3) ConstantComposite 243 243 243 + 724: 7(int) Constant 147 + 730: 7(int) Constant 148 + 729: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 730 40 713 + 739: 7(int) Constant 149 + 738: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 739 22 729 + 741: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 742 20 35 739 12 738 40 + 756: 7(int) Constant 150 + 754: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 755 20 35 756 12 738 40 + 773: 7(int) Constant 151 + 771: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 772 20 35 773 12 738 40 + 788: 7(int) Constant 152 + 800: 7(int) Constant 154 + 810: 7(int) Constant 155 + 809: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 810 22 729 + 825: 7(int) Constant 156 + 838: 7(int) Constant 157 + 847: 7(int) Constant 158 + 859: 7(int) Constant 161 + 869: 7(int) Constant 162 + 868: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 869 40 713 + 878: 7(int) Constant 163 + 877: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 878 22 868 + 893: 7(int) Constant 164 + 906: 7(int) Constant 165 + 915: 7(int) Constant 166 + 927: 7(int) Constant 168 + 937: 7(int) Constant 169 + 936: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 35 937 22 868 + 949: 7(int) Constant 170 + 962: 7(int) Constant 171 + 974: 7(int) Constant 172 + 986: 7(int) Constant 175 + 996: 7(int) Constant 177 + 997: 7(int) Constant 10 + 998: 123(ivec3) ConstantComposite 997 997 39 14(main): 4 Function None 5 15: Label 127(id): 125(ptr) Variable Function 141(index): 139(ptr) Variable Function - 247(force): 21(ptr) Variable Function - 261(pos): 21(ptr) Variable Function - 271(vel): 21(ptr) Variable Function - 293(param): 21(ptr) Variable Function + 249(force): 21(ptr) Variable Function + 263(pos): 21(ptr) Variable Function + 273(vel): 21(ptr) Variable Function 297(param): 21(ptr) Variable Function - 299(param): 24(ptr) Variable Function - 322(param): 21(ptr) Variable Function - 326(param): 21(ptr) Variable Function - 328(param): 24(ptr) Variable Function - 355(param): 21(ptr) Variable Function - 359(param): 21(ptr) Variable Function - 361(param): 24(ptr) Variable Function - 383(param): 21(ptr) Variable Function - 387(param): 21(ptr) Variable Function - 389(param): 24(ptr) Variable Function - 427(param): 21(ptr) Variable Function - 431(param): 21(ptr) Variable Function - 433(param): 24(ptr) Variable Function - 466(param): 21(ptr) Variable Function - 470(param): 21(ptr) Variable Function - 472(param): 24(ptr) Variable Function - 513(param): 21(ptr) Variable Function - 517(param): 21(ptr) Variable Function - 519(param): 24(ptr) Variable Function - 556(param): 21(ptr) Variable Function - 560(param): 21(ptr) Variable Function - 562(param): 24(ptr) Variable Function - 579(f): 21(ptr) Variable Function - 628(sphereDist): 21(ptr) Variable Function - 701(normal): 21(ptr) Variable Function - 723(a): 21(ptr) Variable Function - 737(b): 21(ptr) Variable Function - 754(c): 21(ptr) Variable Function + 301(param): 21(ptr) Variable Function + 303(param): 24(ptr) Variable Function + 327(param): 21(ptr) Variable Function + 331(param): 21(ptr) Variable Function + 333(param): 24(ptr) Variable Function + 361(param): 21(ptr) Variable Function + 365(param): 21(ptr) Variable Function + 367(param): 24(ptr) Variable Function + 390(param): 21(ptr) Variable Function + 394(param): 21(ptr) Variable Function + 396(param): 24(ptr) Variable Function + 435(param): 21(ptr) Variable Function + 439(param): 21(ptr) Variable Function + 441(param): 24(ptr) Variable Function + 475(param): 21(ptr) Variable Function + 479(param): 21(ptr) Variable Function + 481(param): 24(ptr) Variable Function + 523(param): 21(ptr) Variable Function + 527(param): 21(ptr) Variable Function + 529(param): 24(ptr) Variable Function + 567(param): 21(ptr) Variable Function + 571(param): 21(ptr) Variable Function + 573(param): 24(ptr) Variable Function + 590(f): 21(ptr) Variable Function + 639(sphereDist): 21(ptr) Variable Function + 716(normal): 21(ptr) Variable Function + 740(a): 21(ptr) Variable Function + 753(b): 21(ptr) Variable Function + 770(c): 21(ptr) Variable Function 121: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 122: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 56 56 12 12 120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 55 14(main) @@ -630,747 +650,747 @@ void main() SelectionMerge 214 None BranchConditional 212 213 214 213: Label - 229: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 230: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 223 223 12 12 - 228: 7(int) Load 141(index) - 231: 7(int) Load 141(index) - 234: 232(ptr) AccessChain 226 204 231 204 - 235: 71(fvec4) Load 234 - 236: 232(ptr) AccessChain 226 204 228 204 - Store 236 235 - 238: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 239 239 12 12 - 237: 7(int) Load 141(index) - 243: 232(ptr) AccessChain 226 204 237 240 - Store 243 242 - 244: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 245 245 12 12 + 231: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 215 + 232: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 216 216 12 12 + 230: 7(int) Load 141(index) + 233: 7(int) Load 141(index) + 236: 234(ptr) AccessChain 228 204 233 204 + 237: 71(fvec4) Load 236 + 238: 234(ptr) AccessChain 228 204 230 204 + Store 238 237 + 240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 241 241 12 12 + 239: 7(int) Load 141(index) + 245: 234(ptr) AccessChain 228 204 239 242 + Store 245 244 + 246: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 247 247 12 12 Return 214: Label - 252: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 253: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 250 250 12 12 - 251: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 248 247(force) 45 - 255: 232(ptr) AccessChain 101(params) 254 - 256: 71(fvec4) Load 255 - 257: 19(fvec3) VectorShuffle 256 256 0 1 2 - 258: 105(ptr) AccessChain 101(params) 240 - 259: 16(float) Load 258 - 260: 19(fvec3) VectorTimesScalar 257 259 - Store 247(force) 260 - 266: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 264 264 12 12 - 265: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 262 261(pos) 45 - 267: 7(int) Load 141(index) - 268: 232(ptr) AccessChain 201 204 267 204 - 269: 71(fvec4) Load 268 - 270: 19(fvec3) VectorShuffle 269 269 0 1 2 - Store 261(pos) 270 - 276: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 274 274 12 12 - 275: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 272 271(vel) 45 - 277: 7(int) Load 141(index) - 278: 232(ptr) AccessChain 201 204 277 240 - 279: 71(fvec4) Load 278 - 280: 19(fvec3) VectorShuffle 279 279 0 1 2 - Store 271(vel) 280 - 282: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 283 283 12 12 - 281: 139(ptr) AccessChain 127(id) 12 - 284: 7(int) Load 281 - 285: 168(bool) UGreaterThan 284 12 - SelectionMerge 287 None - BranchConditional 285 286 287 - 286: Label - 289: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 290: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 291 291 12 12 - 288: 7(int) Load 141(index) - 292: 7(int) ISub 288 39 - 294: 232(ptr) AccessChain 201 204 292 204 - 295: 71(fvec4) Load 294 - 296: 19(fvec3) VectorShuffle 295 295 0 1 2 - Store 293(param) 296 - 298: 19(fvec3) Load 261(pos) - Store 297(param) 298 - 300: 105(ptr) AccessChain 101(params) 208 - 301: 16(float) Load 300 - Store 299(param) 301 - 302: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 293(param) 297(param) 299(param) - 303: 19(fvec3) Load 247(force) - 304: 19(fvec3) FAdd 303 302 - Store 247(force) 304 - Branch 287 - 287: Label - 306: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 307: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 308 308 12 12 - 305: 139(ptr) AccessChain 127(id) 12 - 309: 7(int) Load 305 - 310: 150(ptr) AccessChain 101(params) 149 12 - 311: 73(int) Load 310 - 312: 73(int) ISub 311 240 - 313: 7(int) Bitcast 312 - 314: 168(bool) ULessThan 309 313 - SelectionMerge 316 None - BranchConditional 314 315 316 - 315: Label - 318: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 319: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 320 320 12 12 - 317: 7(int) Load 141(index) - 321: 7(int) IAdd 317 39 - 323: 232(ptr) AccessChain 201 204 321 204 - 324: 71(fvec4) Load 323 - 325: 19(fvec3) VectorShuffle 324 324 0 1 2 - Store 322(param) 325 - 327: 19(fvec3) Load 261(pos) - Store 326(param) 327 - 329: 105(ptr) AccessChain 101(params) 208 - 330: 16(float) Load 329 - Store 328(param) 330 - 331: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 322(param) 326(param) 328(param) - 332: 19(fvec3) Load 247(force) - 333: 19(fvec3) FAdd 332 331 - Store 247(force) 333 - Branch 316 - 316: Label - 335: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 336: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 337 337 12 12 - 334: 139(ptr) AccessChain 127(id) 39 - 338: 7(int) Load 334 - 339: 150(ptr) AccessChain 101(params) 149 39 - 340: 73(int) Load 339 - 341: 73(int) ISub 340 240 - 342: 7(int) Bitcast 341 - 343: 168(bool) ULessThan 338 342 - SelectionMerge 345 None - BranchConditional 343 344 345 - 344: Label - 347: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 348: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 349 349 12 12 - 346: 7(int) Load 141(index) - 350: 150(ptr) AccessChain 101(params) 149 12 - 351: 73(int) Load 350 - 352: 7(int) Bitcast 351 - 353: 7(int) IAdd 346 352 - 356: 232(ptr) AccessChain 201 204 353 204 - 357: 71(fvec4) Load 356 - 358: 19(fvec3) VectorShuffle 357 357 0 1 2 - Store 355(param) 358 - 360: 19(fvec3) Load 261(pos) - Store 359(param) 360 - 362: 105(ptr) AccessChain 101(params) 354 - 363: 16(float) Load 362 - Store 361(param) 363 - 364: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 355(param) 359(param) 361(param) - 365: 19(fvec3) Load 247(force) - 366: 19(fvec3) FAdd 365 364 - Store 247(force) 366 - Branch 345 - 345: Label - 368: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 369: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 370 370 12 12 - 367: 139(ptr) AccessChain 127(id) 39 - 371: 7(int) Load 367 - 372: 168(bool) UGreaterThan 371 12 - SelectionMerge 374 None - BranchConditional 372 373 374 - 373: Label - 376: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 377: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 378 378 12 12 - 375: 7(int) Load 141(index) - 379: 150(ptr) AccessChain 101(params) 149 12 - 380: 73(int) Load 379 - 381: 7(int) Bitcast 380 - 382: 7(int) ISub 375 381 - 384: 232(ptr) AccessChain 201 204 382 204 - 385: 71(fvec4) Load 384 - 386: 19(fvec3) VectorShuffle 385 385 0 1 2 - Store 383(param) 386 - 388: 19(fvec3) Load 261(pos) - Store 387(param) 388 - 390: 105(ptr) AccessChain 101(params) 354 - 391: 16(float) Load 390 - Store 389(param) 391 - 392: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 383(param) 387(param) 389(param) - 393: 19(fvec3) Load 247(force) - 394: 19(fvec3) FAdd 393 392 - Store 247(force) 394 - Branch 374 - 374: Label - 396: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 397: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 398 398 12 12 - 395: 139(ptr) AccessChain 127(id) 12 - 399: 7(int) Load 395 - 400: 168(bool) UGreaterThan 399 12 - SelectionMerge 402 None - BranchConditional 400 401 402 - 401: Label - 404: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 405: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 398 398 12 12 - 403: 139(ptr) AccessChain 127(id) 39 - 406: 7(int) Load 403 - 407: 150(ptr) AccessChain 101(params) 149 39 - 408: 73(int) Load 407 - 409: 73(int) ISub 408 240 - 410: 7(int) Bitcast 409 - 411: 168(bool) ULessThan 406 410 - Branch 402 - 402: Label - 412: 168(bool) Phi 400 374 411 401 - 415: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 416: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 398 398 12 12 - SelectionMerge 414 None - BranchConditional 412 413 414 - 413: Label - 418: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 419: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 420 420 12 12 - 417: 7(int) Load 141(index) - 421: 150(ptr) AccessChain 101(params) 149 12 - 422: 73(int) Load 421 - 423: 7(int) Bitcast 422 - 424: 7(int) IAdd 417 423 - 425: 7(int) ISub 424 39 - 428: 232(ptr) AccessChain 201 204 425 204 - 429: 71(fvec4) Load 428 - 430: 19(fvec3) VectorShuffle 429 429 0 1 2 - Store 427(param) 430 - 432: 19(fvec3) Load 261(pos) - Store 431(param) 432 - 434: 105(ptr) AccessChain 101(params) 426 - 435: 16(float) Load 434 - Store 433(param) 435 - 436: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 427(param) 431(param) 433(param) - 437: 19(fvec3) Load 247(force) - 438: 19(fvec3) FAdd 437 436 - Store 247(force) 438 - Branch 414 - 414: Label - 440: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 441: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 442 442 12 12 - 439: 139(ptr) AccessChain 127(id) 12 - 443: 7(int) Load 439 - 444: 168(bool) UGreaterThan 443 12 - SelectionMerge 446 None - BranchConditional 444 445 446 - 445: Label - 448: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 449: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 442 442 12 12 - 447: 139(ptr) AccessChain 127(id) 39 - 450: 7(int) Load 447 - 451: 168(bool) UGreaterThan 450 12 - Branch 446 - 446: Label - 452: 168(bool) Phi 444 414 451 445 - 455: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 456: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 442 442 12 12 + 254: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 255: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 252 252 12 12 + 253: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 250 249(force) 45 + 257: 234(ptr) AccessChain 101(params) 256 + 258: 71(fvec4) Load 257 + 259: 19(fvec3) VectorShuffle 258 258 0 1 2 + 260: 105(ptr) AccessChain 101(params) 242 + 261: 16(float) Load 260 + 262: 19(fvec3) VectorTimesScalar 259 261 + Store 249(force) 262 + 268: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 266 266 12 12 + 267: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 264 263(pos) 45 + 269: 7(int) Load 141(index) + 270: 234(ptr) AccessChain 201 204 269 204 + 271: 71(fvec4) Load 270 + 272: 19(fvec3) VectorShuffle 271 271 0 1 2 + Store 263(pos) 272 + 278: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 276 276 12 12 + 277: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 274 273(vel) 45 + 279: 7(int) Load 141(index) + 280: 234(ptr) AccessChain 201 204 279 242 + 281: 71(fvec4) Load 280 + 282: 19(fvec3) VectorShuffle 281 281 0 1 2 + Store 273(vel) 282 + 284: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 285 285 12 12 + 283: 139(ptr) AccessChain 127(id) 12 + 286: 7(int) Load 283 + 287: 168(bool) UGreaterThan 286 12 + SelectionMerge 289 None + BranchConditional 287 288 289 + 288: Label + 294: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 290 + 295: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 291 291 12 12 + 293: 7(int) Load 141(index) + 296: 7(int) ISub 293 39 + 298: 234(ptr) AccessChain 201 204 296 204 + 299: 71(fvec4) Load 298 + 300: 19(fvec3) VectorShuffle 299 299 0 1 2 + Store 297(param) 300 + 302: 19(fvec3) Load 263(pos) + Store 301(param) 302 + 304: 105(ptr) AccessChain 101(params) 208 + 305: 16(float) Load 304 + Store 303(param) 305 + 306: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 297(param) 301(param) 303(param) + 307: 19(fvec3) Load 249(force) + 308: 19(fvec3) FAdd 307 306 + Store 249(force) 308 + Branch 289 + 289: Label + 310: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 311: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 312 312 12 12 + 309: 139(ptr) AccessChain 127(id) 12 + 313: 7(int) Load 309 + 314: 150(ptr) AccessChain 101(params) 149 12 + 315: 73(int) Load 314 + 316: 73(int) ISub 315 242 + 317: 7(int) Bitcast 316 + 318: 168(bool) ULessThan 313 317 + SelectionMerge 320 None + BranchConditional 318 319 320 + 319: Label + 324: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 321 + 325: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 322 322 12 12 + 323: 7(int) Load 141(index) + 326: 7(int) IAdd 323 39 + 328: 234(ptr) AccessChain 201 204 326 204 + 329: 71(fvec4) Load 328 + 330: 19(fvec3) VectorShuffle 329 329 0 1 2 + Store 327(param) 330 + 332: 19(fvec3) Load 263(pos) + Store 331(param) 332 + 334: 105(ptr) AccessChain 101(params) 208 + 335: 16(float) Load 334 + Store 333(param) 335 + 336: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 327(param) 331(param) 333(param) + 337: 19(fvec3) Load 249(force) + 338: 19(fvec3) FAdd 337 336 + Store 249(force) 338 + Branch 320 + 320: Label + 340: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 341: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 342 342 12 12 + 339: 139(ptr) AccessChain 127(id) 39 + 343: 7(int) Load 339 + 344: 150(ptr) AccessChain 101(params) 149 39 + 345: 73(int) Load 344 + 346: 73(int) ISub 345 242 + 347: 7(int) Bitcast 346 + 348: 168(bool) ULessThan 343 347 + SelectionMerge 350 None + BranchConditional 348 349 350 + 349: Label + 354: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 351 + 355: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 352 352 12 12 + 353: 7(int) Load 141(index) + 356: 150(ptr) AccessChain 101(params) 149 12 + 357: 73(int) Load 356 + 358: 7(int) Bitcast 357 + 359: 7(int) IAdd 353 358 + 362: 234(ptr) AccessChain 201 204 359 204 + 363: 71(fvec4) Load 362 + 364: 19(fvec3) VectorShuffle 363 363 0 1 2 + Store 361(param) 364 + 366: 19(fvec3) Load 263(pos) + Store 365(param) 366 + 368: 105(ptr) AccessChain 101(params) 360 + 369: 16(float) Load 368 + Store 367(param) 369 + 370: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 361(param) 365(param) 367(param) + 371: 19(fvec3) Load 249(force) + 372: 19(fvec3) FAdd 371 370 + Store 249(force) 372 + Branch 350 + 350: Label + 374: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 375: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 376 376 12 12 + 373: 139(ptr) AccessChain 127(id) 39 + 377: 7(int) Load 373 + 378: 168(bool) UGreaterThan 377 12 + SelectionMerge 380 None + BranchConditional 378 379 380 + 379: Label + 384: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 381 + 385: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 382 382 12 12 + 383: 7(int) Load 141(index) + 386: 150(ptr) AccessChain 101(params) 149 12 + 387: 73(int) Load 386 + 388: 7(int) Bitcast 387 + 389: 7(int) ISub 383 388 + 391: 234(ptr) AccessChain 201 204 389 204 + 392: 71(fvec4) Load 391 + 393: 19(fvec3) VectorShuffle 392 392 0 1 2 + Store 390(param) 393 + 395: 19(fvec3) Load 263(pos) + Store 394(param) 395 + 397: 105(ptr) AccessChain 101(params) 360 + 398: 16(float) Load 397 + Store 396(param) 398 + 399: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 390(param) 394(param) 396(param) + 400: 19(fvec3) Load 249(force) + 401: 19(fvec3) FAdd 400 399 + Store 249(force) 401 + Branch 380 + 380: Label + 403: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 404: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 405 405 12 12 + 402: 139(ptr) AccessChain 127(id) 12 + 406: 7(int) Load 402 + 407: 168(bool) UGreaterThan 406 12 + SelectionMerge 409 None + BranchConditional 407 408 409 + 408: Label + 411: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 412: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 405 405 12 12 + 410: 139(ptr) AccessChain 127(id) 39 + 413: 7(int) Load 410 + 414: 150(ptr) AccessChain 101(params) 149 39 + 415: 73(int) Load 414 + 416: 73(int) ISub 415 242 + 417: 7(int) Bitcast 416 + 418: 168(bool) ULessThan 413 417 + Branch 409 + 409: Label + 419: 168(bool) Phi 407 380 418 408 + 422: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 423: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 405 405 12 12 + SelectionMerge 421 None + BranchConditional 419 420 421 + 420: Label + 427: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 424 + 428: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 425 425 12 12 + 426: 7(int) Load 141(index) + 429: 150(ptr) AccessChain 101(params) 149 12 + 430: 73(int) Load 429 + 431: 7(int) Bitcast 430 + 432: 7(int) IAdd 426 431 + 433: 7(int) ISub 432 39 + 436: 234(ptr) AccessChain 201 204 433 204 + 437: 71(fvec4) Load 436 + 438: 19(fvec3) VectorShuffle 437 437 0 1 2 + Store 435(param) 438 + 440: 19(fvec3) Load 263(pos) + Store 439(param) 440 + 442: 105(ptr) AccessChain 101(params) 434 + 443: 16(float) Load 442 + Store 441(param) 443 + 444: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 435(param) 439(param) 441(param) + 445: 19(fvec3) Load 249(force) + 446: 19(fvec3) FAdd 445 444 + Store 249(force) 446 + Branch 421 + 421: Label + 448: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 449: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 450 450 12 12 + 447: 139(ptr) AccessChain 127(id) 12 + 451: 7(int) Load 447 + 452: 168(bool) UGreaterThan 451 12 SelectionMerge 454 None BranchConditional 452 453 454 453: Label - 458: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 459: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 460 460 12 12 - 457: 7(int) Load 141(index) - 461: 150(ptr) AccessChain 101(params) 149 12 - 462: 73(int) Load 461 - 463: 7(int) Bitcast 462 - 464: 7(int) ISub 457 463 - 465: 7(int) ISub 464 39 - 467: 232(ptr) AccessChain 201 204 465 204 - 468: 71(fvec4) Load 467 - 469: 19(fvec3) VectorShuffle 468 468 0 1 2 - Store 466(param) 469 - 471: 19(fvec3) Load 261(pos) - Store 470(param) 471 - 473: 105(ptr) AccessChain 101(params) 426 - 474: 16(float) Load 473 - Store 472(param) 474 - 475: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 466(param) 470(param) 472(param) - 476: 19(fvec3) Load 247(force) - 477: 19(fvec3) FAdd 476 475 - Store 247(force) 477 + 456: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 457: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 450 450 12 12 + 455: 139(ptr) AccessChain 127(id) 39 + 458: 7(int) Load 455 + 459: 168(bool) UGreaterThan 458 12 Branch 454 454: Label - 479: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 480: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 481 481 12 12 - 478: 139(ptr) AccessChain 127(id) 12 - 482: 7(int) Load 478 - 483: 150(ptr) AccessChain 101(params) 149 12 - 484: 73(int) Load 483 - 485: 73(int) ISub 484 240 - 486: 7(int) Bitcast 485 - 487: 168(bool) ULessThan 482 486 - SelectionMerge 489 None - BranchConditional 487 488 489 - 488: Label - 491: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 492: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 481 481 12 12 - 490: 139(ptr) AccessChain 127(id) 39 - 493: 7(int) Load 490 - 494: 150(ptr) AccessChain 101(params) 149 39 - 495: 73(int) Load 494 - 496: 73(int) ISub 495 240 - 497: 7(int) Bitcast 496 - 498: 168(bool) ULessThan 493 497 - Branch 489 - 489: Label - 499: 168(bool) Phi 487 454 498 488 - 502: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 503: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 481 481 12 12 - SelectionMerge 501 None - BranchConditional 499 500 501 - 500: Label - 505: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 506: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 507 507 12 12 - 504: 7(int) Load 141(index) - 508: 150(ptr) AccessChain 101(params) 149 12 - 509: 73(int) Load 508 - 510: 7(int) Bitcast 509 - 511: 7(int) IAdd 504 510 - 512: 7(int) IAdd 511 39 - 514: 232(ptr) AccessChain 201 204 512 204 - 515: 71(fvec4) Load 514 - 516: 19(fvec3) VectorShuffle 515 515 0 1 2 - Store 513(param) 516 - 518: 19(fvec3) Load 261(pos) - Store 517(param) 518 - 520: 105(ptr) AccessChain 101(params) 426 - 521: 16(float) Load 520 - Store 519(param) 521 - 522: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 513(param) 517(param) 519(param) - 523: 19(fvec3) Load 247(force) - 524: 19(fvec3) FAdd 523 522 - Store 247(force) 524 - Branch 501 - 501: Label - 526: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 527: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 528 528 12 12 - 525: 139(ptr) AccessChain 127(id) 12 - 529: 7(int) Load 525 - 530: 150(ptr) AccessChain 101(params) 149 12 - 531: 73(int) Load 530 - 532: 73(int) ISub 531 240 - 533: 7(int) Bitcast 532 - 534: 168(bool) ULessThan 529 533 - SelectionMerge 536 None - BranchConditional 534 535 536 - 535: Label - 538: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 539: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 528 528 12 12 - 537: 139(ptr) AccessChain 127(id) 39 - 540: 7(int) Load 537 - 541: 168(bool) UGreaterThan 540 12 - Branch 536 - 536: Label - 542: 168(bool) Phi 534 501 541 535 - 545: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 546: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 528 528 12 12 - SelectionMerge 544 None - BranchConditional 542 543 544 - 543: Label + 460: 168(bool) Phi 452 421 459 453 + 463: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 464: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 450 450 12 12 + SelectionMerge 462 None + BranchConditional 460 461 462 + 461: Label + 468: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 465 + 469: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 466 466 12 12 + 467: 7(int) Load 141(index) + 470: 150(ptr) AccessChain 101(params) 149 12 + 471: 73(int) Load 470 + 472: 7(int) Bitcast 471 + 473: 7(int) ISub 467 472 + 474: 7(int) ISub 473 39 + 476: 234(ptr) AccessChain 201 204 474 204 + 477: 71(fvec4) Load 476 + 478: 19(fvec3) VectorShuffle 477 477 0 1 2 + Store 475(param) 478 + 480: 19(fvec3) Load 263(pos) + Store 479(param) 480 + 482: 105(ptr) AccessChain 101(params) 434 + 483: 16(float) Load 482 + Store 481(param) 483 + 484: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 475(param) 479(param) 481(param) + 485: 19(fvec3) Load 249(force) + 486: 19(fvec3) FAdd 485 484 + Store 249(force) 486 + Branch 462 + 462: Label + 488: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 489: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 490 490 12 12 + 487: 139(ptr) AccessChain 127(id) 12 + 491: 7(int) Load 487 + 492: 150(ptr) AccessChain 101(params) 149 12 + 493: 73(int) Load 492 + 494: 73(int) ISub 493 242 + 495: 7(int) Bitcast 494 + 496: 168(bool) ULessThan 491 495 + SelectionMerge 498 None + BranchConditional 496 497 498 + 497: Label + 500: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 501: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 490 490 12 12 + 499: 139(ptr) AccessChain 127(id) 39 + 502: 7(int) Load 499 + 503: 150(ptr) AccessChain 101(params) 149 39 + 504: 73(int) Load 503 + 505: 73(int) ISub 504 242 + 506: 7(int) Bitcast 505 + 507: 168(bool) ULessThan 502 506 + Branch 498 + 498: Label + 508: 168(bool) Phi 496 462 507 497 + 511: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 512: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 490 490 12 12 + SelectionMerge 510 None + BranchConditional 508 509 510 + 509: Label + 516: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 513 + 517: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 514 514 12 12 + 515: 7(int) Load 141(index) + 518: 150(ptr) AccessChain 101(params) 149 12 + 519: 73(int) Load 518 + 520: 7(int) Bitcast 519 + 521: 7(int) IAdd 515 520 + 522: 7(int) IAdd 521 39 + 524: 234(ptr) AccessChain 201 204 522 204 + 525: 71(fvec4) Load 524 + 526: 19(fvec3) VectorShuffle 525 525 0 1 2 + Store 523(param) 526 + 528: 19(fvec3) Load 263(pos) + Store 527(param) 528 + 530: 105(ptr) AccessChain 101(params) 434 + 531: 16(float) Load 530 + Store 529(param) 531 + 532: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 523(param) 527(param) 529(param) + 533: 19(fvec3) Load 249(force) + 534: 19(fvec3) FAdd 533 532 + Store 249(force) 534 + Branch 510 + 510: Label + 536: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 537: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 538 538 12 12 + 535: 139(ptr) AccessChain 127(id) 12 + 539: 7(int) Load 535 + 540: 150(ptr) AccessChain 101(params) 149 12 + 541: 73(int) Load 540 + 542: 73(int) ISub 541 242 + 543: 7(int) Bitcast 542 + 544: 168(bool) ULessThan 539 543 + SelectionMerge 546 None + BranchConditional 544 545 546 + 545: Label 548: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 549: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 550 550 12 12 - 547: 7(int) Load 141(index) - 551: 150(ptr) AccessChain 101(params) 149 12 - 552: 73(int) Load 551 - 553: 7(int) Bitcast 552 - 554: 7(int) ISub 547 553 - 555: 7(int) IAdd 554 39 - 557: 232(ptr) AccessChain 201 204 555 204 - 558: 71(fvec4) Load 557 - 559: 19(fvec3) VectorShuffle 558 558 0 1 2 - Store 556(param) 559 - 561: 19(fvec3) Load 261(pos) - Store 560(param) 561 - 563: 105(ptr) AccessChain 101(params) 426 - 564: 16(float) Load 563 - Store 562(param) 564 - 565: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 556(param) 560(param) 562(param) - 566: 19(fvec3) Load 247(force) - 567: 19(fvec3) FAdd 566 565 - Store 247(force) 567 - Branch 544 - 544: Label - 570: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 571: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 572 572 12 12 - 569: 105(ptr) AccessChain 101(params) 568 - 573: 16(float) Load 569 - 574: 16(float) FNegate 573 - 575: 19(fvec3) Load 271(vel) - 576: 19(fvec3) VectorTimesScalar 575 574 - 577: 19(fvec3) Load 247(force) - 578: 19(fvec3) FAdd 577 576 - Store 247(force) 578 - 584: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 582 582 12 12 - 583: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 580 579(f) 45 - 585: 19(fvec3) Load 247(force) - 586: 105(ptr) AccessChain 101(params) 240 - 587: 16(float) Load 586 - 588: 16(float) FDiv 211 587 - 589: 19(fvec3) VectorTimesScalar 585 588 - Store 579(f) 589 - 591: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 592 592 12 12 - 590: 7(int) Load 141(index) - 593: 19(fvec3) Load 261(pos) - 594: 19(fvec3) Load 271(vel) - 595: 105(ptr) AccessChain 101(params) 204 - 596: 16(float) Load 595 - 597: 19(fvec3) VectorTimesScalar 594 596 - 598: 19(fvec3) FAdd 593 597 - 600: 19(fvec3) Load 579(f) - 601: 19(fvec3) VectorTimesScalar 600 599 - 602: 105(ptr) AccessChain 101(params) 204 - 603: 16(float) Load 602 - 604: 19(fvec3) VectorTimesScalar 601 603 - 605: 105(ptr) AccessChain 101(params) 204 - 606: 16(float) Load 605 - 607: 19(fvec3) VectorTimesScalar 604 606 - 608: 19(fvec3) FAdd 598 607 - 609: 16(float) CompositeExtract 608 0 - 610: 16(float) CompositeExtract 608 1 - 611: 16(float) CompositeExtract 608 2 - 612: 71(fvec4) CompositeConstruct 609 610 611 211 - 613: 232(ptr) AccessChain 226 204 590 204 - Store 613 612 - 615: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 616 616 12 12 - 614: 7(int) Load 141(index) - 617: 19(fvec3) Load 271(vel) - 618: 19(fvec3) Load 579(f) - 619: 105(ptr) AccessChain 101(params) 204 - 620: 16(float) Load 619 - 621: 19(fvec3) VectorTimesScalar 618 620 - 622: 19(fvec3) FAdd 617 621 - 623: 16(float) CompositeExtract 622 0 - 624: 16(float) CompositeExtract 622 1 - 625: 16(float) CompositeExtract 622 2 - 626: 71(fvec4) CompositeConstruct 623 624 625 241 - 627: 232(ptr) AccessChain 226 204 614 240 - Store 627 626 - 633: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 631 631 12 12 - 632: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 629 628(sphereDist) 45 - 634: 7(int) Load 141(index) - 635: 232(ptr) AccessChain 226 204 634 204 - 636: 71(fvec4) Load 635 - 637: 19(fvec3) VectorShuffle 636 636 0 1 2 - 639: 232(ptr) AccessChain 101(params) 638 - 640: 71(fvec4) Load 639 - 641: 19(fvec3) VectorShuffle 640 640 0 1 2 - 642: 19(fvec3) FSub 637 641 - Store 628(sphereDist) 642 - 644: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 645 645 12 12 - 643: 19(fvec3) Load 628(sphereDist) - 646: 16(float) ExtInst 3(GLSL.std.450) 66(Length) 643 - 648: 105(ptr) AccessChain 101(params) 647 - 649: 16(float) Load 648 - 651: 16(float) FAdd 649 650 - 652: 168(bool) FOrdLessThan 646 651 - SelectionMerge 654 None - BranchConditional 652 653 654 - 653: Label - 656: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 657: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 658 658 12 12 - 655: 7(int) Load 141(index) - 659: 232(ptr) AccessChain 101(params) 638 - 660: 71(fvec4) Load 659 - 661: 19(fvec3) VectorShuffle 660 660 0 1 2 - 662: 19(fvec3) Load 628(sphereDist) - 663: 19(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 662 - 664: 105(ptr) AccessChain 101(params) 647 - 665: 16(float) Load 664 - 666: 16(float) FAdd 665 650 - 667: 19(fvec3) VectorTimesScalar 663 666 - 668: 19(fvec3) FAdd 661 667 - 669: 105(ptr) AccessChain 226 204 655 204 12 - 670: 16(float) CompositeExtract 668 0 - Store 669 670 - 671: 105(ptr) AccessChain 226 204 655 204 39 - 672: 16(float) CompositeExtract 668 1 - Store 671 672 - 673: 105(ptr) AccessChain 226 204 655 204 41 - 674: 16(float) CompositeExtract 668 2 - Store 673 674 - 676: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 677 677 12 12 - 675: 7(int) Load 141(index) - 678: 232(ptr) AccessChain 226 204 675 240 - Store 678 242 - Branch 654 - 654: Label - 695: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 696: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 685 685 12 12 - 694: 692(ptr) AccessChain 689(pushConsts) 204 - 697: 7(int) Load 694 - 698: 168(bool) IEqual 697 39 - SelectionMerge 700 None - BranchConditional 698 699 700 - 699: Label - 705: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 706: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 703 703 12 12 - 704: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 702 701(normal) 45 - Store 701(normal) 707 - 709: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 710 710 12 12 - 708: 139(ptr) AccessChain 127(id) 39 - 711: 7(int) Load 708 - 712: 168(bool) UGreaterThan 711 12 - SelectionMerge 714 None - BranchConditional 712 713 714 - 713: Label - 716: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 717: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 718 718 12 12 - 715: 139(ptr) AccessChain 127(id) 12 - 719: 7(int) Load 715 - 720: 168(bool) UGreaterThan 719 12 - SelectionMerge 722 None - BranchConditional 720 721 722 - 721: Label - 728: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 729: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 726 726 12 12 - 727: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 724 723(a) 45 - 730: 7(int) Load 141(index) - 731: 7(int) ISub 730 39 - 732: 232(ptr) AccessChain 201 204 731 204 - 733: 71(fvec4) Load 732 - 734: 19(fvec3) VectorShuffle 733 733 0 1 2 - 735: 19(fvec3) Load 261(pos) - 736: 19(fvec3) FSub 734 735 - Store 723(a) 736 - 742: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 740 740 12 12 - 741: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 738 737(b) 45 - 743: 7(int) Load 141(index) - 744: 150(ptr) AccessChain 101(params) 149 12 - 745: 73(int) Load 744 - 746: 7(int) Bitcast 745 - 747: 7(int) ISub 743 746 - 748: 7(int) ISub 747 39 - 749: 232(ptr) AccessChain 201 204 748 204 - 750: 71(fvec4) Load 749 - 751: 19(fvec3) VectorShuffle 750 750 0 1 2 - 752: 19(fvec3) Load 261(pos) - 753: 19(fvec3) FSub 751 752 - Store 737(b) 753 - 759: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 757 757 12 12 - 758: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 755 754(c) 45 - 760: 7(int) Load 141(index) - 761: 150(ptr) AccessChain 101(params) 149 12 - 762: 73(int) Load 761 - 763: 7(int) Bitcast 762 - 764: 7(int) ISub 760 763 - 765: 232(ptr) AccessChain 201 204 764 204 + 549: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 538 538 12 12 + 547: 139(ptr) AccessChain 127(id) 39 + 550: 7(int) Load 547 + 551: 168(bool) UGreaterThan 550 12 + Branch 546 + 546: Label + 552: 168(bool) Phi 544 510 551 545 + 555: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 556: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 538 538 12 12 + SelectionMerge 554 None + BranchConditional 552 553 554 + 553: Label + 560: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 557 + 561: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 558 558 12 12 + 559: 7(int) Load 141(index) + 562: 150(ptr) AccessChain 101(params) 149 12 + 563: 73(int) Load 562 + 564: 7(int) Bitcast 563 + 565: 7(int) ISub 559 564 + 566: 7(int) IAdd 565 39 + 568: 234(ptr) AccessChain 201 204 566 204 + 569: 71(fvec4) Load 568 + 570: 19(fvec3) VectorShuffle 569 569 0 1 2 + Store 567(param) 570 + 572: 19(fvec3) Load 263(pos) + Store 571(param) 572 + 574: 105(ptr) AccessChain 101(params) 434 + 575: 16(float) Load 574 + Store 573(param) 575 + 576: 19(fvec3) FunctionCall 31(springForce(vf3;vf3;f1;) 567(param) 571(param) 573(param) + 577: 19(fvec3) Load 249(force) + 578: 19(fvec3) FAdd 577 576 + Store 249(force) 578 + Branch 554 + 554: Label + 581: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 582: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 583 583 12 12 + 580: 105(ptr) AccessChain 101(params) 579 + 584: 16(float) Load 580 + 585: 16(float) FNegate 584 + 586: 19(fvec3) Load 273(vel) + 587: 19(fvec3) VectorTimesScalar 586 585 + 588: 19(fvec3) Load 249(force) + 589: 19(fvec3) FAdd 588 587 + Store 249(force) 589 + 595: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 593 593 12 12 + 594: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 591 590(f) 45 + 596: 19(fvec3) Load 249(force) + 597: 105(ptr) AccessChain 101(params) 242 + 598: 16(float) Load 597 + 599: 16(float) FDiv 211 598 + 600: 19(fvec3) VectorTimesScalar 596 599 + Store 590(f) 600 + 602: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 603 603 12 12 + 601: 7(int) Load 141(index) + 604: 19(fvec3) Load 263(pos) + 605: 19(fvec3) Load 273(vel) + 606: 105(ptr) AccessChain 101(params) 204 + 607: 16(float) Load 606 + 608: 19(fvec3) VectorTimesScalar 605 607 + 609: 19(fvec3) FAdd 604 608 + 611: 19(fvec3) Load 590(f) + 612: 19(fvec3) VectorTimesScalar 611 610 + 613: 105(ptr) AccessChain 101(params) 204 + 614: 16(float) Load 613 + 615: 19(fvec3) VectorTimesScalar 612 614 + 616: 105(ptr) AccessChain 101(params) 204 + 617: 16(float) Load 616 + 618: 19(fvec3) VectorTimesScalar 615 617 + 619: 19(fvec3) FAdd 609 618 + 620: 16(float) CompositeExtract 619 0 + 621: 16(float) CompositeExtract 619 1 + 622: 16(float) CompositeExtract 619 2 + 623: 71(fvec4) CompositeConstruct 620 621 622 211 + 624: 234(ptr) AccessChain 228 204 601 204 + Store 624 623 + 626: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 627 627 12 12 + 625: 7(int) Load 141(index) + 628: 19(fvec3) Load 273(vel) + 629: 19(fvec3) Load 590(f) + 630: 105(ptr) AccessChain 101(params) 204 + 631: 16(float) Load 630 + 632: 19(fvec3) VectorTimesScalar 629 631 + 633: 19(fvec3) FAdd 628 632 + 634: 16(float) CompositeExtract 633 0 + 635: 16(float) CompositeExtract 633 1 + 636: 16(float) CompositeExtract 633 2 + 637: 71(fvec4) CompositeConstruct 634 635 636 243 + 638: 234(ptr) AccessChain 228 204 625 242 + Store 638 637 + 644: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 642 642 12 12 + 643: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 640 639(sphereDist) 45 + 645: 7(int) Load 141(index) + 646: 234(ptr) AccessChain 228 204 645 204 + 647: 71(fvec4) Load 646 + 648: 19(fvec3) VectorShuffle 647 647 0 1 2 + 650: 234(ptr) AccessChain 101(params) 649 + 651: 71(fvec4) Load 650 + 652: 19(fvec3) VectorShuffle 651 651 0 1 2 + 653: 19(fvec3) FSub 648 652 + Store 639(sphereDist) 653 + 655: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 656 656 12 12 + 654: 19(fvec3) Load 639(sphereDist) + 657: 16(float) ExtInst 3(GLSL.std.450) 66(Length) 654 + 659: 105(ptr) AccessChain 101(params) 658 + 660: 16(float) Load 659 + 662: 16(float) FAdd 660 661 + 663: 168(bool) FOrdLessThan 657 662 + SelectionMerge 665 None + BranchConditional 663 664 665 + 664: Label + 670: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 666 + 671: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 667 667 12 12 + 669: 7(int) Load 141(index) + 672: 234(ptr) AccessChain 101(params) 649 + 673: 71(fvec4) Load 672 + 674: 19(fvec3) VectorShuffle 673 673 0 1 2 + 675: 19(fvec3) Load 639(sphereDist) + 676: 19(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 675 + 677: 105(ptr) AccessChain 101(params) 658 + 678: 16(float) Load 677 + 679: 16(float) FAdd 678 661 + 680: 19(fvec3) VectorTimesScalar 676 679 + 681: 19(fvec3) FAdd 674 680 + 682: 105(ptr) AccessChain 228 204 669 204 12 + 683: 16(float) CompositeExtract 681 0 + Store 682 683 + 684: 105(ptr) AccessChain 228 204 669 204 39 + 685: 16(float) CompositeExtract 681 1 + Store 684 685 + 686: 105(ptr) AccessChain 228 204 669 204 41 + 687: 16(float) CompositeExtract 681 2 + Store 686 687 + 689: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 690 690 12 12 + 688: 7(int) Load 141(index) + 691: 234(ptr) AccessChain 228 204 688 242 + Store 691 244 + Branch 665 + 665: Label + 707: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 708: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 698 698 12 12 + 706: 704(ptr) AccessChain 701(pushConsts) 204 + 709: 7(int) Load 706 + 710: 168(bool) IEqual 709 39 + SelectionMerge 712 None + BranchConditional 710 711 712 + 711: Label + 719: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 713 + 720: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 714 714 12 12 + 718: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 717 716(normal) 45 + Store 716(normal) 721 + 723: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 724 724 12 12 + 722: 139(ptr) AccessChain 127(id) 39 + 725: 7(int) Load 722 + 726: 168(bool) UGreaterThan 725 12 + SelectionMerge 728 None + BranchConditional 726 727 728 + 727: Label + 732: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 729 + 733: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 730 730 12 12 + 731: 139(ptr) AccessChain 127(id) 12 + 734: 7(int) Load 731 + 735: 168(bool) UGreaterThan 734 12 + SelectionMerge 737 None + BranchConditional 735 736 737 + 736: Label + 744: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 738 + 745: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 739 739 12 12 + 743: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 741 740(a) 45 + 746: 7(int) Load 141(index) + 747: 7(int) ISub 746 39 + 748: 234(ptr) AccessChain 201 204 747 204 + 749: 71(fvec4) Load 748 + 750: 19(fvec3) VectorShuffle 749 749 0 1 2 + 751: 19(fvec3) Load 263(pos) + 752: 19(fvec3) FSub 750 751 + Store 740(a) 752 + 758: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 756 756 12 12 + 757: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 754 753(b) 45 + 759: 7(int) Load 141(index) + 760: 150(ptr) AccessChain 101(params) 149 12 + 761: 73(int) Load 760 + 762: 7(int) Bitcast 761 + 763: 7(int) ISub 759 762 + 764: 7(int) ISub 763 39 + 765: 234(ptr) AccessChain 201 204 764 204 766: 71(fvec4) Load 765 767: 19(fvec3) VectorShuffle 766 766 0 1 2 - 768: 19(fvec3) Load 261(pos) + 768: 19(fvec3) Load 263(pos) 769: 19(fvec3) FSub 767 768 - Store 754(c) 769 - 771: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 772 772 12 12 - 770: 19(fvec3) Load 723(a) - 773: 19(fvec3) Load 737(b) - 774: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 770 773 - 775: 19(fvec3) Load 737(b) - 776: 19(fvec3) Load 754(c) - 777: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 775 776 - 778: 19(fvec3) FAdd 774 777 - 779: 19(fvec3) Load 701(normal) - 780: 19(fvec3) FAdd 779 778 - Store 701(normal) 780 - Branch 722 - 722: Label - 782: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 783: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 784 784 12 12 - 781: 139(ptr) AccessChain 127(id) 12 - 785: 7(int) Load 781 - 786: 150(ptr) AccessChain 101(params) 149 12 - 787: 73(int) Load 786 - 788: 73(int) ISub 787 240 - 789: 7(int) Bitcast 788 - 790: 168(bool) ULessThan 785 789 - SelectionMerge 792 None - BranchConditional 790 791 792 - 791: Label - 794: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 795: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 796 796 12 12 - 793: 7(int) Load 141(index) - 797: 150(ptr) AccessChain 101(params) 149 12 - 798: 73(int) Load 797 - 799: 7(int) Bitcast 798 - 800: 7(int) ISub 793 799 - 801: 232(ptr) AccessChain 201 204 800 204 - 802: 71(fvec4) Load 801 - 803: 19(fvec3) VectorShuffle 802 802 0 1 2 - 804: 19(fvec3) Load 261(pos) - 805: 19(fvec3) FSub 803 804 - Store 723(a) 805 - 807: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 808 808 12 12 - 806: 7(int) Load 141(index) - 809: 150(ptr) AccessChain 101(params) 149 12 - 810: 73(int) Load 809 - 811: 7(int) Bitcast 810 - 812: 7(int) ISub 806 811 - 813: 7(int) IAdd 812 39 - 814: 232(ptr) AccessChain 201 204 813 204 - 815: 71(fvec4) Load 814 - 816: 19(fvec3) VectorShuffle 815 815 0 1 2 - 817: 19(fvec3) Load 261(pos) - 818: 19(fvec3) FSub 816 817 - Store 737(b) 818 - 820: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 821 821 12 12 - 819: 7(int) Load 141(index) - 822: 7(int) IAdd 819 39 - 823: 232(ptr) AccessChain 201 204 822 204 - 824: 71(fvec4) Load 823 - 825: 19(fvec3) VectorShuffle 824 824 0 1 2 - 826: 19(fvec3) Load 261(pos) - 827: 19(fvec3) FSub 825 826 - Store 754(c) 827 - 829: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 830 830 12 12 - 828: 19(fvec3) Load 723(a) - 831: 19(fvec3) Load 737(b) - 832: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 828 831 - 833: 19(fvec3) Load 737(b) - 834: 19(fvec3) Load 754(c) - 835: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 833 834 - 836: 19(fvec3) FAdd 832 835 - 837: 19(fvec3) Load 701(normal) - 838: 19(fvec3) FAdd 837 836 - Store 701(normal) 838 - Branch 792 - 792: Label - Branch 714 - 714: Label - 840: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 841: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 842 842 12 12 - 839: 139(ptr) AccessChain 127(id) 39 - 843: 7(int) Load 839 - 844: 150(ptr) AccessChain 101(params) 149 39 - 845: 73(int) Load 844 - 846: 73(int) ISub 845 240 - 847: 7(int) Bitcast 846 - 848: 168(bool) ULessThan 843 847 - SelectionMerge 850 None - BranchConditional 848 849 850 - 849: Label - 852: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 853: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 854 854 12 12 - 851: 139(ptr) AccessChain 127(id) 12 - 855: 7(int) Load 851 - 856: 168(bool) UGreaterThan 855 12 - SelectionMerge 858 None - BranchConditional 856 857 858 - 857: Label - 860: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 861: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 862 862 12 12 - 859: 7(int) Load 141(index) - 863: 150(ptr) AccessChain 101(params) 149 12 - 864: 73(int) Load 863 - 865: 7(int) Bitcast 864 - 866: 7(int) IAdd 859 865 - 867: 232(ptr) AccessChain 201 204 866 204 - 868: 71(fvec4) Load 867 - 869: 19(fvec3) VectorShuffle 868 868 0 1 2 - 870: 19(fvec3) Load 261(pos) - 871: 19(fvec3) FSub 869 870 - Store 723(a) 871 - 873: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 874 874 12 12 - 872: 7(int) Load 141(index) - 875: 150(ptr) AccessChain 101(params) 149 12 - 876: 73(int) Load 875 - 877: 7(int) Bitcast 876 - 878: 7(int) IAdd 872 877 - 879: 7(int) ISub 878 39 - 880: 232(ptr) AccessChain 201 204 879 204 - 881: 71(fvec4) Load 880 - 882: 19(fvec3) VectorShuffle 881 881 0 1 2 - 883: 19(fvec3) Load 261(pos) - 884: 19(fvec3) FSub 882 883 - Store 737(b) 884 - 886: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 887 887 12 12 - 885: 7(int) Load 141(index) - 888: 7(int) ISub 885 39 - 889: 232(ptr) AccessChain 201 204 888 204 - 890: 71(fvec4) Load 889 - 891: 19(fvec3) VectorShuffle 890 890 0 1 2 - 892: 19(fvec3) Load 261(pos) - 893: 19(fvec3) FSub 891 892 - Store 754(c) 893 - 895: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 896 896 12 12 - 894: 19(fvec3) Load 723(a) - 897: 19(fvec3) Load 737(b) - 898: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 894 897 - 899: 19(fvec3) Load 737(b) - 900: 19(fvec3) Load 754(c) - 901: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 899 900 - 902: 19(fvec3) FAdd 898 901 - 903: 19(fvec3) Load 701(normal) - 904: 19(fvec3) FAdd 903 902 - Store 701(normal) 904 - Branch 858 - 858: Label - 906: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 907: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 908 908 12 12 - 905: 139(ptr) AccessChain 127(id) 12 - 909: 7(int) Load 905 - 910: 150(ptr) AccessChain 101(params) 149 12 - 911: 73(int) Load 910 - 912: 73(int) ISub 911 240 - 913: 7(int) Bitcast 912 - 914: 168(bool) ULessThan 909 913 - SelectionMerge 916 None - BranchConditional 914 915 916 - 915: Label - 918: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 919: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 920 920 12 12 - 917: 7(int) Load 141(index) - 921: 7(int) IAdd 917 39 - 922: 232(ptr) AccessChain 201 204 921 204 - 923: 71(fvec4) Load 922 - 924: 19(fvec3) VectorShuffle 923 923 0 1 2 - 925: 19(fvec3) Load 261(pos) - 926: 19(fvec3) FSub 924 925 - Store 723(a) 926 - 928: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 929 929 12 12 - 927: 7(int) Load 141(index) - 930: 150(ptr) AccessChain 101(params) 149 12 - 931: 73(int) Load 930 - 932: 7(int) Bitcast 931 - 933: 7(int) IAdd 927 932 - 934: 7(int) IAdd 933 39 - 935: 232(ptr) AccessChain 201 204 934 204 - 936: 71(fvec4) Load 935 - 937: 19(fvec3) VectorShuffle 936 936 0 1 2 - 938: 19(fvec3) Load 261(pos) - 939: 19(fvec3) FSub 937 938 - Store 737(b) 939 - 941: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 942 942 12 12 - 940: 7(int) Load 141(index) - 943: 150(ptr) AccessChain 101(params) 149 12 - 944: 73(int) Load 943 - 945: 7(int) Bitcast 944 - 946: 7(int) IAdd 940 945 - 947: 232(ptr) AccessChain 201 204 946 204 - 948: 71(fvec4) Load 947 - 949: 19(fvec3) VectorShuffle 948 948 0 1 2 - 950: 19(fvec3) Load 261(pos) - 951: 19(fvec3) FSub 949 950 - Store 754(c) 951 - 953: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 954 954 12 12 - 952: 19(fvec3) Load 723(a) - 955: 19(fvec3) Load 737(b) - 956: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 952 955 - 957: 19(fvec3) Load 737(b) - 958: 19(fvec3) Load 754(c) - 959: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 957 958 - 960: 19(fvec3) FAdd 956 959 - 961: 19(fvec3) Load 701(normal) - 962: 19(fvec3) FAdd 961 960 - Store 701(normal) 962 - Branch 916 - 916: Label - Branch 850 - 850: Label - 964: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 965: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 966 966 12 12 - 963: 7(int) Load 141(index) - 967: 19(fvec3) Load 701(normal) - 968: 19(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 967 - 969: 16(float) CompositeExtract 968 0 - 970: 16(float) CompositeExtract 968 1 - 971: 16(float) CompositeExtract 968 2 - 972: 71(fvec4) CompositeConstruct 969 970 971 241 - 973: 232(ptr) AccessChain 226 204 963 568 - Store 973 972 - Branch 700 - 700: Label - 974: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 - 975: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 976 976 12 12 + Store 753(b) 769 + 775: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 773 773 12 12 + 774: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 771 770(c) 45 + 776: 7(int) Load 141(index) + 777: 150(ptr) AccessChain 101(params) 149 12 + 778: 73(int) Load 777 + 779: 7(int) Bitcast 778 + 780: 7(int) ISub 776 779 + 781: 234(ptr) AccessChain 201 204 780 204 + 782: 71(fvec4) Load 781 + 783: 19(fvec3) VectorShuffle 782 782 0 1 2 + 784: 19(fvec3) Load 263(pos) + 785: 19(fvec3) FSub 783 784 + Store 770(c) 785 + 787: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 788 788 12 12 + 786: 19(fvec3) Load 740(a) + 789: 19(fvec3) Load 753(b) + 790: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 786 789 + 791: 19(fvec3) Load 753(b) + 792: 19(fvec3) Load 770(c) + 793: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 791 792 + 794: 19(fvec3) FAdd 790 793 + 795: 19(fvec3) Load 716(normal) + 796: 19(fvec3) FAdd 795 794 + Store 716(normal) 796 + Branch 737 + 737: Label + 798: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 729 + 799: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 800 800 12 12 + 797: 139(ptr) AccessChain 127(id) 12 + 801: 7(int) Load 797 + 802: 150(ptr) AccessChain 101(params) 149 12 + 803: 73(int) Load 802 + 804: 73(int) ISub 803 242 + 805: 7(int) Bitcast 804 + 806: 168(bool) ULessThan 801 805 + SelectionMerge 808 None + BranchConditional 806 807 808 + 807: Label + 812: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 809 + 813: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 810 810 12 12 + 811: 7(int) Load 141(index) + 814: 150(ptr) AccessChain 101(params) 149 12 + 815: 73(int) Load 814 + 816: 7(int) Bitcast 815 + 817: 7(int) ISub 811 816 + 818: 234(ptr) AccessChain 201 204 817 204 + 819: 71(fvec4) Load 818 + 820: 19(fvec3) VectorShuffle 819 819 0 1 2 + 821: 19(fvec3) Load 263(pos) + 822: 19(fvec3) FSub 820 821 + Store 740(a) 822 + 824: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 825 825 12 12 + 823: 7(int) Load 141(index) + 826: 150(ptr) AccessChain 101(params) 149 12 + 827: 73(int) Load 826 + 828: 7(int) Bitcast 827 + 829: 7(int) ISub 823 828 + 830: 7(int) IAdd 829 39 + 831: 234(ptr) AccessChain 201 204 830 204 + 832: 71(fvec4) Load 831 + 833: 19(fvec3) VectorShuffle 832 832 0 1 2 + 834: 19(fvec3) Load 263(pos) + 835: 19(fvec3) FSub 833 834 + Store 753(b) 835 + 837: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 838 838 12 12 + 836: 7(int) Load 141(index) + 839: 7(int) IAdd 836 39 + 840: 234(ptr) AccessChain 201 204 839 204 + 841: 71(fvec4) Load 840 + 842: 19(fvec3) VectorShuffle 841 841 0 1 2 + 843: 19(fvec3) Load 263(pos) + 844: 19(fvec3) FSub 842 843 + Store 770(c) 844 + 846: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 847 847 12 12 + 845: 19(fvec3) Load 740(a) + 848: 19(fvec3) Load 753(b) + 849: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 845 848 + 850: 19(fvec3) Load 753(b) + 851: 19(fvec3) Load 770(c) + 852: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 850 851 + 853: 19(fvec3) FAdd 849 852 + 854: 19(fvec3) Load 716(normal) + 855: 19(fvec3) FAdd 854 853 + Store 716(normal) 855 + Branch 808 + 808: Label + Branch 728 + 728: Label + 857: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 713 + 858: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 859 859 12 12 + 856: 139(ptr) AccessChain 127(id) 39 + 860: 7(int) Load 856 + 861: 150(ptr) AccessChain 101(params) 149 39 + 862: 73(int) Load 861 + 863: 73(int) ISub 862 242 + 864: 7(int) Bitcast 863 + 865: 168(bool) ULessThan 860 864 + SelectionMerge 867 None + BranchConditional 865 866 867 + 866: Label + 871: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 868 + 872: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 869 869 12 12 + 870: 139(ptr) AccessChain 127(id) 12 + 873: 7(int) Load 870 + 874: 168(bool) UGreaterThan 873 12 + SelectionMerge 876 None + BranchConditional 874 875 876 + 875: Label + 880: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 877 + 881: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 878 878 12 12 + 879: 7(int) Load 141(index) + 882: 150(ptr) AccessChain 101(params) 149 12 + 883: 73(int) Load 882 + 884: 7(int) Bitcast 883 + 885: 7(int) IAdd 879 884 + 886: 234(ptr) AccessChain 201 204 885 204 + 887: 71(fvec4) Load 886 + 888: 19(fvec3) VectorShuffle 887 887 0 1 2 + 889: 19(fvec3) Load 263(pos) + 890: 19(fvec3) FSub 888 889 + Store 740(a) 890 + 892: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 893 893 12 12 + 891: 7(int) Load 141(index) + 894: 150(ptr) AccessChain 101(params) 149 12 + 895: 73(int) Load 894 + 896: 7(int) Bitcast 895 + 897: 7(int) IAdd 891 896 + 898: 7(int) ISub 897 39 + 899: 234(ptr) AccessChain 201 204 898 204 + 900: 71(fvec4) Load 899 + 901: 19(fvec3) VectorShuffle 900 900 0 1 2 + 902: 19(fvec3) Load 263(pos) + 903: 19(fvec3) FSub 901 902 + Store 753(b) 903 + 905: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 906 906 12 12 + 904: 7(int) Load 141(index) + 907: 7(int) ISub 904 39 + 908: 234(ptr) AccessChain 201 204 907 204 + 909: 71(fvec4) Load 908 + 910: 19(fvec3) VectorShuffle 909 909 0 1 2 + 911: 19(fvec3) Load 263(pos) + 912: 19(fvec3) FSub 910 911 + Store 770(c) 912 + 914: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 915 915 12 12 + 913: 19(fvec3) Load 740(a) + 916: 19(fvec3) Load 753(b) + 917: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 913 916 + 918: 19(fvec3) Load 753(b) + 919: 19(fvec3) Load 770(c) + 920: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 918 919 + 921: 19(fvec3) FAdd 917 920 + 922: 19(fvec3) Load 716(normal) + 923: 19(fvec3) FAdd 922 921 + Store 716(normal) 923 + Branch 876 + 876: Label + 925: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 868 + 926: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 927 927 12 12 + 924: 139(ptr) AccessChain 127(id) 12 + 928: 7(int) Load 924 + 929: 150(ptr) AccessChain 101(params) 149 12 + 930: 73(int) Load 929 + 931: 73(int) ISub 930 242 + 932: 7(int) Bitcast 931 + 933: 168(bool) ULessThan 928 932 + SelectionMerge 935 None + BranchConditional 933 934 935 + 934: Label + 939: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 936 + 940: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 937 937 12 12 + 938: 7(int) Load 141(index) + 941: 7(int) IAdd 938 39 + 942: 234(ptr) AccessChain 201 204 941 204 + 943: 71(fvec4) Load 942 + 944: 19(fvec3) VectorShuffle 943 943 0 1 2 + 945: 19(fvec3) Load 263(pos) + 946: 19(fvec3) FSub 944 945 + Store 740(a) 946 + 948: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 949 949 12 12 + 947: 7(int) Load 141(index) + 950: 150(ptr) AccessChain 101(params) 149 12 + 951: 73(int) Load 950 + 952: 7(int) Bitcast 951 + 953: 7(int) IAdd 947 952 + 954: 7(int) IAdd 953 39 + 955: 234(ptr) AccessChain 201 204 954 204 + 956: 71(fvec4) Load 955 + 957: 19(fvec3) VectorShuffle 956 956 0 1 2 + 958: 19(fvec3) Load 263(pos) + 959: 19(fvec3) FSub 957 958 + Store 753(b) 959 + 961: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 962 962 12 12 + 960: 7(int) Load 141(index) + 963: 150(ptr) AccessChain 101(params) 149 12 + 964: 73(int) Load 963 + 965: 7(int) Bitcast 964 + 966: 7(int) IAdd 960 965 + 967: 234(ptr) AccessChain 201 204 966 204 + 968: 71(fvec4) Load 967 + 969: 19(fvec3) VectorShuffle 968 968 0 1 2 + 970: 19(fvec3) Load 263(pos) + 971: 19(fvec3) FSub 969 970 + Store 770(c) 971 + 973: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 974 974 12 12 + 972: 19(fvec3) Load 740(a) + 975: 19(fvec3) Load 753(b) + 976: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 972 975 + 977: 19(fvec3) Load 753(b) + 978: 19(fvec3) Load 770(c) + 979: 19(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 977 978 + 980: 19(fvec3) FAdd 976 979 + 981: 19(fvec3) Load 716(normal) + 982: 19(fvec3) FAdd 981 980 + Store 716(normal) 982 + Branch 935 + 935: Label + Branch 867 + 867: Label + 984: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 713 + 985: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 986 986 12 12 + 983: 7(int) Load 141(index) + 987: 19(fvec3) Load 716(normal) + 988: 19(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 987 + 989: 16(float) CompositeExtract 988 0 + 990: 16(float) CompositeExtract 988 1 + 991: 16(float) CompositeExtract 988 2 + 992: 71(fvec4) CompositeConstruct 989 990 991 243 + 993: 234(ptr) AccessChain 228 204 983 579 + Store 993 992 + Branch 712 + 712: Label + 994: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 55 + 995: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 35 996 996 12 12 Return FunctionEnd 31(springForce(vf3;vf3;f1;): 19(fvec3) Function None 26 diff --git a/Test/baseResults/spv.debuginfo.glsl.frag.out b/Test/baseResults/spv.debuginfo.glsl.frag.out index 3214f97a..387041da 100644 --- a/Test/baseResults/spv.debuginfo.glsl.frag.out +++ b/Test/baseResults/spv.debuginfo.glsl.frag.out @@ -1,7 +1,7 @@ spv.debuginfo.glsl.frag // Module Version 10000 // Generated by (magic number): 8000b -// Id's are bound by 879 +// Id's are bound by 886 Capability Shader Capability ImageQuery @@ -9,7 +9,7 @@ spv.debuginfo.glsl.frag 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" 3: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 - EntryPoint Fragment 14 "main" 499 552 + EntryPoint Fragment 14 "main" 503 557 ExecutionMode 14 OriginUpperLeft 2: String "spv.debuginfo.glsl.frag" 8: String "uint" @@ -230,53 +230,53 @@ void main() 105: String "global_var" 120: String "shadowCoord" 142: String "bool" - 164: String "dist" - 171: String "type.2d.image" - 172: String "@type.2d.image" - 176: String "type.sampled.image" - 177: String "@type.sampled.image" - 182: String "samplerShadowMap" - 233: String "texDim" - 245: String "scale" - 252: String "dx" - 266: String "dy" - 278: String "shadowFactor" - 284: String "count" - 290: String "range" - 297: String "x" - 317: String "y" - 383: String "i" - 401: String "shadowClip" - 411: String "color" - 416: String "viewMatrix" - 419: String "Light" - 425: String "lights" - 428: String "debugDisplayTarget" - 432: String "UBO" - 437: String "ubo" - 483: String "fragPos" - 495: String "samplerposition" - 501: String "inUV" - 507: String "normal" - 513: String "samplerNormal" - 520: String "albedo" - 526: String "samplerAlbedo" - 554: 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" + 167: String "dist" + 173: String "type.2d.image" + 174: String "@type.2d.image" + 178: String "type.sampled.image" + 179: String "@type.sampled.image" + 184: String "samplerShadowMap" + 237: String "texDim" + 249: String "scale" + 256: String "dx" + 270: String "dy" + 282: String "shadowFactor" + 288: String "count" + 294: String "range" + 301: String "x" + 321: String "y" + 387: String "i" + 405: String "shadowClip" + 415: String "color" + 420: String "viewMatrix" + 423: String "Light" + 429: String "lights" + 432: String "debugDisplayTarget" + 436: String "UBO" + 441: String "ubo" + 487: String "fragPos" + 499: String "samplerposition" + 505: String "inUV" + 511: String "normal" + 517: String "samplerNormal" + 524: String "albedo" + 530: String "samplerAlbedo" + 559: String "outFragColor" + 653: String "N" + 677: String "L" + 703: String "V" + 718: String "lightCosInnerAngle" + 725: String "lightCosOuterAngle" + 732: String "lightRange" + 739: String "dir" + 755: String "cosDir" + 764: String "spotEffect" + 774: String "heightAttenuation" + 783: String "NdotL" + 793: String "diff" + 801: String "R" + 811: String "NdotR" + 821: String "spec" Name 14 "main" Name 37 "textureProj(vf4;f1;vf2;" Name 34 "P" @@ -291,90 +291,90 @@ void main() Name 103 "global_var" Name 112 "shadow" Name 118 "shadowCoord" - Name 162 "dist" - Name 180 "samplerShadowMap" - Name 231 "texDim" - Name 243 "scale" - Name 250 "dx" - Name 264 "dy" - Name 276 "shadowFactor" - Name 282 "count" - Name 288 "range" - Name 295 "x" - Name 315 "y" - Name 348 "param" - Name 350 "param" + Name 165 "dist" + Name 182 "samplerShadowMap" + Name 235 "texDim" + Name 247 "scale" + Name 254 "dx" + Name 268 "dy" + Name 280 "shadowFactor" + Name 286 "count" + Name 292 "range" + Name 299 "x" + Name 319 "y" Name 352 "param" - Name 381 "i" - Name 399 "shadowClip" - Name 409 "Light" - MemberName 409(Light) 0 "position" - MemberName 409(Light) 1 "target" - MemberName 409(Light) 2 "color" - MemberName 409(Light) 3 "viewMatrix" - Name 422 "UBO" - MemberName 422(UBO) 0 "viewPos" - MemberName 422(UBO) 1 "lights" - MemberName 422(UBO) 2 "useShadows" - MemberName 422(UBO) 3 "debugDisplayTarget" - Name 435 "ubo" - Name 449 "shadowFactor" - Name 456 "param" - Name 458 "param" - Name 481 "fragPos" - Name 493 "samplerposition" - Name 499 "inUV" - Name 505 "normal" - Name 511 "samplerNormal" - Name 518 "albedo" - Name 524 "samplerAlbedo" - Name 552 "outFragColor" - Name 557 "param" - Name 560 "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 861 "param" - Name 866 "param" - Decorate 180(samplerShadowMap) Binding 5 - Decorate 180(samplerShadowMap) DescriptorSet 0 - MemberDecorate 409(Light) 0 Offset 0 - MemberDecorate 409(Light) 1 Offset 16 - MemberDecorate 409(Light) 2 Offset 32 - MemberDecorate 409(Light) 3 ColMajor - MemberDecorate 409(Light) 3 MatrixStride 16 - MemberDecorate 409(Light) 3 Offset 48 - Decorate 420 ArrayStride 112 - Decorate 422(UBO) Block - MemberDecorate 422(UBO) 0 Offset 0 - MemberDecorate 422(UBO) 1 Offset 16 - MemberDecorate 422(UBO) 2 Offset 352 - MemberDecorate 422(UBO) 3 Offset 356 - Decorate 435(ubo) Binding 4 - Decorate 435(ubo) DescriptorSet 0 - Decorate 493(samplerposition) Binding 1 - Decorate 493(samplerposition) DescriptorSet 0 - Decorate 499(inUV) Location 0 - Decorate 511(samplerNormal) Binding 2 - Decorate 511(samplerNormal) DescriptorSet 0 - Decorate 524(samplerAlbedo) Binding 3 - Decorate 524(samplerAlbedo) DescriptorSet 0 - Decorate 552(outFragColor) Location 0 + Name 354 "param" + Name 356 "param" + Name 385 "i" + Name 403 "shadowClip" + Name 413 "Light" + MemberName 413(Light) 0 "position" + MemberName 413(Light) 1 "target" + MemberName 413(Light) 2 "color" + MemberName 413(Light) 3 "viewMatrix" + Name 426 "UBO" + MemberName 426(UBO) 0 "viewPos" + MemberName 426(UBO) 1 "lights" + MemberName 426(UBO) 2 "useShadows" + MemberName 426(UBO) 3 "debugDisplayTarget" + Name 439 "ubo" + Name 453 "shadowFactor" + Name 460 "param" + Name 462 "param" + Name 485 "fragPos" + Name 497 "samplerposition" + Name 503 "inUV" + Name 509 "normal" + Name 515 "samplerNormal" + Name 522 "albedo" + Name 528 "samplerAlbedo" + Name 557 "outFragColor" + Name 562 "param" + Name 565 "param" + Name 641 "fragcolor" + Name 651 "N" + Name 659 "i" + Name 675 "L" + Name 690 "dist" + Name 701 "V" + Name 716 "lightCosInnerAngle" + Name 723 "lightCosOuterAngle" + Name 730 "lightRange" + Name 737 "dir" + Name 753 "cosDir" + Name 762 "spotEffect" + Name 772 "heightAttenuation" + Name 781 "NdotL" + Name 791 "diff" + Name 799 "R" + Name 809 "NdotR" + Name 819 "spec" + Name 869 "param" + Name 873 "param" + Decorate 182(samplerShadowMap) Binding 5 + Decorate 182(samplerShadowMap) DescriptorSet 0 + MemberDecorate 413(Light) 0 Offset 0 + MemberDecorate 413(Light) 1 Offset 16 + MemberDecorate 413(Light) 2 Offset 32 + MemberDecorate 413(Light) 3 ColMajor + MemberDecorate 413(Light) 3 MatrixStride 16 + MemberDecorate 413(Light) 3 Offset 48 + Decorate 424 ArrayStride 112 + Decorate 426(UBO) Block + MemberDecorate 426(UBO) 0 Offset 0 + MemberDecorate 426(UBO) 1 Offset 16 + MemberDecorate 426(UBO) 2 Offset 352 + MemberDecorate 426(UBO) 3 Offset 356 + Decorate 439(ubo) Binding 4 + Decorate 439(ubo) DescriptorSet 0 + Decorate 497(samplerposition) Binding 1 + Decorate 497(samplerposition) DescriptorSet 0 + Decorate 503(inUV) Location 0 + Decorate 515(samplerNormal) Binding 2 + Decorate 515(samplerNormal) DescriptorSet 0 + Decorate 528(samplerAlbedo) Binding 3 + Decorate 528(samplerAlbedo) DescriptorSet 0 + Decorate 557(outFragColor) Location 0 4: TypeVoid 5: TypeFunction 4 7: TypeInt 32 0 @@ -448,539 +448,546 @@ void main() 143: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 142 10 28 12 146: 7(int) Constant 65 148: 16(float) Constant 3212836864 - 165: 7(int) Constant 67 - 163: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 164 18 41 165 12 40 20 - 169: TypeImage 16(float) 2D array sampled format:Unknown - 173: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone) - 170: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 171 12 41 165 12 44 172 173 13 - 174: TypeSampledImage 169 - 175: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 176 12 41 165 12 44 177 173 13 - 178: TypePointer UniformConstant 174 - 179: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 175 12 12 -180(samplerShadowMap): 178(ptr) Variable UniformConstant - 181: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 182 175 41 165 12 44 182 180(samplerShadowMap) 107 - 196: 7(int) Constant 68 - 198: 16(float) Constant 0 - 213: 16(float) Constant 1048576000 + 163: 7(int) Constant 67 + 164: 7(int) Constant 14 + 162: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 41 163 164 40 + 166: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 167 18 41 163 12 162 20 + 171: TypeImage 16(float) 2D array sampled format:Unknown + 175: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone) + 172: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 173 12 41 163 12 44 174 175 13 + 176: TypeSampledImage 171 + 177: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 178 12 41 163 12 44 179 175 13 + 180: TypePointer UniformConstant 176 + 181: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 177 12 12 +182(samplerShadowMap): 180(ptr) Variable UniformConstant + 183: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 184 177 41 163 12 44 184 182(samplerShadowMap) 107 + 198: 7(int) Constant 68 + 200: 16(float) Constant 0 216: 7(int) Constant 70 - 220: 7(int) Constant 73 - 225: 7(int) Constant 74 - 227: TypeVector 98(int) 2 - 228: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 100 28 - 229: TypePointer Function 227(ivec2) - 230: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 228 23 12 - 234: 7(int) Constant 78 - 232: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 233 228 41 234 12 65 20 - 239: TypeVector 98(int) 3 - 240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 100 13 - 246: 7(int) Constant 79 - 244: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 245 18 41 246 12 65 20 - 249: 16(float) Constant 1069547520 - 253: 7(int) Constant 80 - 251: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 252 18 41 253 12 65 20 - 258: TypePointer Function 98(int) - 259: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 100 23 12 - 267: 7(int) Constant 81 - 265: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 266 18 41 267 12 65 20 - 279: 7(int) Constant 83 - 277: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 278 18 41 279 12 65 20 - 285: 7(int) Constant 84 - 283: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 284 100 41 285 12 65 20 - 291: 7(int) Constant 85 - 289: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 290 100 41 291 12 65 20 - 294: 98(int) Constant 1 - 298: 7(int) Constant 87 - 296: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 297 100 41 298 12 65 20 - 318: 7(int) Constant 89 - 316: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 317 100 41 318 12 65 20 - 339: 7(int) Constant 91 - 358: 7(int) Constant 92 - 371: 7(int) Constant 96 - 379: 7(int) Constant 97 - 384: 7(int) Constant 100 - 382: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 383 100 41 384 12 85 20 - 397: 98(int) Constant 3 - 402: 7(int) Constant 102 - 400: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 401 21 41 402 12 85 20 - 406: TypeMatrix 19(fvec4) 4 - 408: 141(bool) ConstantTrue - 407: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 21 20 408 - 409(Light): TypeStruct 19(fvec4) 19(fvec4) 19(fvec4) 406 - 412: 7(int) Constant 47 - 410: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 411 21 41 412 23 12 12 13 - 413: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 411 21 41 412 23 12 12 13 - 414: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 411 21 41 412 23 12 12 13 - 417: 7(int) Constant 48 - 415: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 416 407 41 417 23 12 12 13 - 418: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 419 45 41 402 12 44 419 12 13 410 413 414 415 - 420: TypeArray 409(Light) 13 - 421: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 418 13 - 422(UBO): TypeStruct 19(fvec4) 420 98(int) 98(int) - 423: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 411 21 41 412 23 12 12 13 - 426: 7(int) Constant 54 - 424: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 425 421 41 426 107 12 12 13 - 429: 7(int) Constant 56 - 427: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 428 100 41 429 11 12 12 13 - 430: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 428 100 41 429 11 12 12 13 - 431: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 432 45 41 402 12 44 432 12 13 423 424 427 430 - 433: TypePointer Uniform 422(UBO) - 434: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 431 28 12 - 435(ubo): 433(ptr) Variable Uniform - 436: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 437 431 41 402 12 44 437 435(ubo) 107 - 439: TypePointer Uniform 406 - 440: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 407 28 12 - 451: 7(int) Constant 106 - 450: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 278 18 41 451 12 85 20 - 462: 7(int) Constant 111 - 472: 7(int) Constant 113 - 477: 7(int) Constant 114 - 484: 7(int) Constant 119 - 482: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 483 75 41 484 12 96 20 - 487: TypeImage 16(float) 2D sampled format:Unknown - 488: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 171 12 41 484 12 44 172 173 13 - 489: TypeSampledImage 487 - 490: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 176 12 41 484 12 44 177 173 13 - 491: TypePointer UniformConstant 489 - 492: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 490 12 12 -493(samplerposition): 491(ptr) Variable UniformConstant - 494: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 495 490 41 484 12 44 495 493(samplerposition) 107 - 497: TypePointer Input 27(fvec2) - 498: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 29 45 12 - 499(inUV): 497(ptr) Variable Input - 500: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 501 29 41 484 12 44 501 499(inUV) 107 - 508: 7(int) Constant 120 - 506: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 507 75 41 508 12 96 20 -511(samplerNormal): 491(ptr) Variable UniformConstant - 512: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 513 490 41 508 12 44 513 511(samplerNormal) 107 - 521: 7(int) Constant 121 - 519: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 520 21 41 521 12 96 20 -524(samplerAlbedo): 491(ptr) Variable UniformConstant - 525: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 526 490 41 521 12 44 526 524(samplerAlbedo) 107 - 530: TypePointer Uniform 98(int) - 531: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 100 28 12 - 534: 7(int) Constant 124 - 542: 7(int) Constant 125 - 550: TypePointer Output 19(fvec4) - 551: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 21 13 12 -552(outFragColor): 550(ptr) Variable Output - 555: 7(int) Constant 127 - 553: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 554 21 41 555 12 44 554 552(outFragColor) 107 - 556: 74(fvec3) ConstantComposite 117 117 117 - 563: TypePointer Output 16(float) - 564: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 18 13 12 - 572: 7(int) Constant 128 - 577: 7(int) Constant 130 - 585: 7(int) Constant 131 - 590: 7(int) Constant 133 - 598: 7(int) Constant 134 - 603: 7(int) Constant 136 - 612: 7(int) Constant 137 - 617: 7(int) Constant 139 - 626: 7(int) Constant 140 - 632: 7(int) Constant 142 - 634: 7(int) Constant 143 - 638: 7(int) Constant 147 - 637: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 88 75 41 638 12 96 20 - 644: 16(float) Constant 1036831949 - 649: 7(int) Constant 149 - 647: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 648 75 41 649 12 96 20 - 656: 7(int) Constant 151 - 655: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 383 100 41 656 12 96 20 - 673: 7(int) Constant 154 - 671: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 672 75 41 673 12 96 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) 164 18 41 687 12 96 20 - 694: 7(int) Constant 157 - 699: 7(int) Constant 160 - 697: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 698 75 41 699 12 96 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 96 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 96 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 96 20 - 731: 16(float) Constant 1120403456 - 735: 7(int) Constant 168 - 733: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 734 75 41 735 12 96 20 - 751: 7(int) Constant 171 - 749: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 750 18 41 751 12 96 20 - 760: 7(int) Constant 172 - 758: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 759 18 41 760 12 96 20 - 770: 7(int) Constant 173 - 768: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 769 18 41 770 12 96 20 - 779: 7(int) Constant 176 - 777: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 778 18 41 779 12 96 20 - 789: 7(int) Constant 177 - 787: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 788 75 41 789 12 96 20 - 797: 7(int) Constant 180 - 795: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 796 75 41 797 12 96 20 - 807: 7(int) Constant 181 - 805: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 806 18 41 807 12 96 20 - 817: 7(int) Constant 182 - 815: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 816 75 41 817 12 96 20 - 821: 16(float) Constant 1098907648 - 826: 16(float) Constant 1075838976 - 831: 7(int) Constant 184 - 839: 98(int) Constant 2 - 856: 7(int) Constant 188 - 865: 7(int) Constant 190 - 872: 7(int) Constant 193 - 878: 7(int) Constant 194 + 217: 7(int) Constant 11 + 215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 41 216 217 162 + 218: 16(float) Constant 1048576000 + 224: 7(int) Constant 73 + 229: 7(int) Constant 74 + 231: TypeVector 98(int) 2 + 232: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 100 28 + 233: TypePointer Function 231(ivec2) + 234: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 232 23 12 + 238: 7(int) Constant 78 + 236: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 237 232 41 238 12 65 20 + 243: TypeVector 98(int) 3 + 244: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 100 13 + 250: 7(int) Constant 79 + 248: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 249 18 41 250 12 65 20 + 253: 16(float) Constant 1069547520 + 257: 7(int) Constant 80 + 255: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 256 18 41 257 12 65 20 + 262: TypePointer Function 98(int) + 263: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 100 23 12 + 271: 7(int) Constant 81 + 269: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 270 18 41 271 12 65 20 + 283: 7(int) Constant 83 + 281: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 282 18 41 283 12 65 20 + 289: 7(int) Constant 84 + 287: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 288 100 41 289 12 65 20 + 295: 7(int) Constant 85 + 293: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 294 100 41 295 12 65 20 + 298: 98(int) Constant 1 + 302: 7(int) Constant 87 + 300: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 301 100 41 302 12 65 20 + 322: 7(int) Constant 89 + 320: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 321 100 41 322 12 65 20 + 343: 7(int) Constant 91 + 362: 7(int) Constant 92 + 375: 7(int) Constant 96 + 383: 7(int) Constant 97 + 388: 7(int) Constant 100 + 386: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 387 100 41 388 12 85 20 + 401: 98(int) Constant 3 + 406: 7(int) Constant 102 + 404: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 405 21 41 406 12 85 20 + 410: TypeMatrix 19(fvec4) 4 + 412: 141(bool) ConstantTrue + 411: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 21 20 412 + 413(Light): TypeStruct 19(fvec4) 19(fvec4) 19(fvec4) 410 + 416: 7(int) Constant 47 + 414: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 415 21 41 416 23 12 12 13 + 417: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 415 21 41 416 23 12 12 13 + 418: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 415 21 41 416 23 12 12 13 + 421: 7(int) Constant 48 + 419: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 420 411 41 421 23 12 12 13 + 422: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 423 45 41 406 12 44 423 12 13 414 417 418 419 + 424: TypeArray 413(Light) 13 + 425: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 422 13 + 426(UBO): TypeStruct 19(fvec4) 424 98(int) 98(int) + 427: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 415 21 41 416 23 12 12 13 + 430: 7(int) Constant 54 + 428: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 429 425 41 430 107 12 12 13 + 433: 7(int) Constant 56 + 431: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 432 100 41 433 11 12 12 13 + 434: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 432 100 41 433 11 12 12 13 + 435: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 436 45 41 406 12 44 436 12 13 427 428 431 434 + 437: TypePointer Uniform 426(UBO) + 438: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 435 28 12 + 439(ubo): 437(ptr) Variable Uniform + 440: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 441 435 41 406 12 44 441 439(ubo) 107 + 443: TypePointer Uniform 410 + 444: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 411 28 12 + 455: 7(int) Constant 106 + 454: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 282 18 41 455 12 85 20 + 466: 7(int) Constant 111 + 476: 7(int) Constant 113 + 481: 7(int) Constant 114 + 488: 7(int) Constant 119 + 486: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 487 75 41 488 12 96 20 + 491: TypeImage 16(float) 2D sampled format:Unknown + 492: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 173 12 41 488 12 44 174 175 13 + 493: TypeSampledImage 491 + 494: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 178 12 41 488 12 44 179 175 13 + 495: TypePointer UniformConstant 493 + 496: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 494 12 12 +497(samplerposition): 495(ptr) Variable UniformConstant + 498: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 499 494 41 488 12 44 499 497(samplerposition) 107 + 501: TypePointer Input 27(fvec2) + 502: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 29 45 12 + 503(inUV): 501(ptr) Variable Input + 504: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 505 29 41 488 12 44 505 503(inUV) 107 + 512: 7(int) Constant 120 + 510: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 511 75 41 512 12 96 20 +515(samplerNormal): 495(ptr) Variable UniformConstant + 516: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 517 494 41 512 12 44 517 515(samplerNormal) 107 + 525: 7(int) Constant 121 + 523: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 524 21 41 525 12 96 20 +528(samplerAlbedo): 495(ptr) Variable UniformConstant + 529: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 530 494 41 525 12 44 530 528(samplerAlbedo) 107 + 534: TypePointer Uniform 98(int) + 535: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 100 28 12 + 538: 7(int) Constant 124 + 544: 7(int) Constant 125 + 543: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 41 544 13 96 + 555: TypePointer Output 19(fvec4) + 556: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 21 13 12 +557(outFragColor): 555(ptr) Variable Output + 560: 7(int) Constant 127 + 558: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 559 21 41 560 12 44 559 557(outFragColor) 107 + 561: 74(fvec3) ConstantComposite 117 117 117 + 568: TypePointer Output 16(float) + 569: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 18 13 12 + 577: 7(int) Constant 128 + 582: 7(int) Constant 130 + 590: 7(int) Constant 131 + 595: 7(int) Constant 133 + 603: 7(int) Constant 134 + 608: 7(int) Constant 136 + 617: 7(int) Constant 137 + 622: 7(int) Constant 139 + 631: 7(int) Constant 140 + 637: 7(int) Constant 142 + 639: 7(int) Constant 143 + 643: 7(int) Constant 147 + 642: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 88 75 41 643 12 96 20 + 649: 16(float) Constant 1036831949 + 654: 7(int) Constant 149 + 652: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 653 75 41 654 12 96 20 + 661: 7(int) Constant 151 + 660: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 387 100 41 661 12 96 20 + 678: 7(int) Constant 154 + 676: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 677 75 41 678 12 96 20 + 683: TypePointer Uniform 19(fvec4) + 684: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 21 28 12 + 692: 7(int) Constant 156 + 691: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 167 18 41 692 12 96 20 + 699: 7(int) Constant 157 + 704: 7(int) Constant 160 + 702: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 703 75 41 704 12 96 20 + 714: 7(int) Constant 161 + 719: 7(int) Constant 163 + 717: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 718 18 41 719 12 96 20 + 722: 16(float) Constant 1064781546 + 726: 7(int) Constant 164 + 724: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 725 18 41 726 12 96 20 + 729: 16(float) Constant 1063781322 + 733: 7(int) Constant 165 + 731: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 732 18 41 733 12 96 20 + 736: 16(float) Constant 1120403456 + 740: 7(int) Constant 168 + 738: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 739 75 41 740 12 96 20 + 756: 7(int) Constant 171 + 754: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 755 18 41 756 12 96 20 + 765: 7(int) Constant 172 + 763: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 764 18 41 765 12 96 20 + 775: 7(int) Constant 173 + 773: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 774 18 41 775 12 96 20 + 784: 7(int) Constant 176 + 782: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 783 18 41 784 12 96 20 + 794: 7(int) Constant 177 + 792: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 793 75 41 794 12 96 20 + 802: 7(int) Constant 180 + 800: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 801 75 41 802 12 96 20 + 812: 7(int) Constant 181 + 810: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 811 18 41 812 12 96 20 + 822: 7(int) Constant 182 + 820: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 821 75 41 822 12 96 20 + 826: 16(float) Constant 1098907648 + 831: 16(float) Constant 1075838976 + 836: 7(int) Constant 184 + 844: 98(int) Constant 2 + 861: 7(int) Constant 188 + 867: 7(int) Constant 190 + 868: 7(int) Constant 13 + 866: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 41 867 868 96 + 879: 7(int) Constant 193 + 885: 7(int) Constant 194 14(main): 4 Function None 5 15: Label - 481(fragPos): 76(ptr) Variable Function - 505(normal): 76(ptr) Variable Function - 518(albedo): 22(ptr) Variable Function - 557(param): 76(ptr) Variable Function - 560(param): 76(ptr) Variable Function - 636(fragcolor): 76(ptr) Variable Function - 646(N): 76(ptr) Variable Function - 654(i): 258(ptr) Variable Function - 670(L): 76(ptr) Variable Function - 685(dist): 25(ptr) Variable Function - 696(V): 76(ptr) Variable Function -711(lightCosInnerAngle): 25(ptr) Variable Function -718(lightCosOuterAngle): 25(ptr) Variable Function - 725(lightRange): 25(ptr) Variable Function - 732(dir): 76(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): 76(ptr) Variable Function - 794(R): 76(ptr) Variable Function - 804(NdotR): 25(ptr) Variable Function - 814(spec): 76(ptr) Variable Function - 861(param): 76(ptr) Variable Function - 866(param): 76(ptr) Variable Function + 485(fragPos): 76(ptr) Variable Function + 509(normal): 76(ptr) Variable Function + 522(albedo): 22(ptr) Variable Function + 562(param): 76(ptr) Variable Function + 565(param): 76(ptr) Variable Function + 641(fragcolor): 76(ptr) Variable Function + 651(N): 76(ptr) Variable Function + 659(i): 262(ptr) Variable Function + 675(L): 76(ptr) Variable Function + 690(dist): 25(ptr) Variable Function + 701(V): 76(ptr) Variable Function +716(lightCosInnerAngle): 25(ptr) Variable Function +723(lightCosOuterAngle): 25(ptr) Variable Function + 730(lightRange): 25(ptr) Variable Function + 737(dir): 76(ptr) Variable Function + 753(cosDir): 25(ptr) Variable Function + 762(spotEffect): 25(ptr) Variable Function +772(heightAttenuation): 25(ptr) Variable Function + 781(NdotL): 25(ptr) Variable Function + 791(diff): 76(ptr) Variable Function + 799(R): 76(ptr) Variable Function + 809(NdotR): 25(ptr) Variable Function + 819(spec): 76(ptr) Variable Function + 869(param): 76(ptr) Variable Function + 873(param): 76(ptr) Variable Function 109: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 44 110: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 106 106 12 12 Store 103(global_var) 108 - 479: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 - 480: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 97 97 12 12 - 478: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 96 14(main) - 486: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 484 484 12 12 - 485: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 482 481(fragPos) 49 - 496: 489 Load 493(samplerposition) - 502: 27(fvec2) Load 499(inUV) - 503: 19(fvec4) ImageSampleImplicitLod 496 502 - 504: 74(fvec3) VectorShuffle 503 503 0 1 2 - Store 481(fragPos) 504 - 510: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 508 508 12 12 - 509: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 506 505(normal) 49 - 514: 489 Load 511(samplerNormal) - 515: 27(fvec2) Load 499(inUV) - 516: 19(fvec4) ImageSampleImplicitLod 514 515 - 517: 74(fvec3) VectorShuffle 516 516 0 1 2 - Store 505(normal) 517 - 523: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 521 521 12 12 - 522: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 519 518(albedo) 49 - 527: 489 Load 524(samplerAlbedo) - 528: 27(fvec2) Load 499(inUV) - 529: 19(fvec4) ImageSampleImplicitLod 527 528 - Store 518(albedo) 529 - 533: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 534 534 12 12 - 532: 530(ptr) AccessChain 435(ubo) 397 - 535: 98(int) Load 532 - 536: 141(bool) SGreaterThan 535 108 - SelectionMerge 538 None - BranchConditional 536 537 538 - 537: Label - 540: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 - 541: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 542 542 12 12 - 539: 530(ptr) AccessChain 435(ubo) 397 - 543: 98(int) Load 539 - SelectionMerge 549 None - Switch 543 549 - case 1: 544 - case 2: 545 - case 3: 546 - case 4: 547 - case 5: 548 - 544: Label - 558: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 - 559: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 555 555 12 12 - Store 557(param) 556 - 561: 74(fvec3) Load 481(fragPos) - Store 560(param) 561 - 562: 74(fvec3) FunctionCall 82(shadow(vf3;vf3;) 557(param) 560(param) - 565: 563(ptr) AccessChain 552(outFragColor) 12 - 566: 16(float) CompositeExtract 562 0 - Store 565 566 - 567: 563(ptr) AccessChain 552(outFragColor) 45 - 568: 16(float) CompositeExtract 562 1 - Store 567 568 - 569: 563(ptr) AccessChain 552(outFragColor) 28 - 570: 16(float) CompositeExtract 562 2 - Store 569 570 - 571: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 572 572 12 12 - Branch 549 - 545: Label - 575: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 + 483: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 + 484: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 97 97 12 12 + 482: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 96 14(main) + 490: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 488 488 12 12 + 489: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 486 485(fragPos) 49 + 500: 493 Load 497(samplerposition) + 506: 27(fvec2) Load 503(inUV) + 507: 19(fvec4) ImageSampleImplicitLod 500 506 + 508: 74(fvec3) VectorShuffle 507 507 0 1 2 + Store 485(fragPos) 508 + 514: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 512 512 12 12 + 513: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 510 509(normal) 49 + 518: 493 Load 515(samplerNormal) + 519: 27(fvec2) Load 503(inUV) + 520: 19(fvec4) ImageSampleImplicitLod 518 519 + 521: 74(fvec3) VectorShuffle 520 520 0 1 2 + Store 509(normal) 521 + 527: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 525 525 12 12 + 526: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 523 522(albedo) 49 + 531: 493 Load 528(samplerAlbedo) + 532: 27(fvec2) Load 503(inUV) + 533: 19(fvec4) ImageSampleImplicitLod 531 532 + Store 522(albedo) 533 + 537: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 538 538 12 12 + 536: 534(ptr) AccessChain 439(ubo) 401 + 539: 98(int) Load 536 + 540: 141(bool) SGreaterThan 539 108 + SelectionMerge 542 None + BranchConditional 540 541 542 + 541: Label + 546: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 543 + 547: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 544 544 12 12 + 545: 534(ptr) AccessChain 439(ubo) 401 + 548: 98(int) Load 545 + SelectionMerge 554 None + Switch 548 554 + case 1: 549 + case 2: 550 + case 3: 551 + case 4: 552 + case 5: 553 + 549: Label + 563: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 543 + 564: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 560 560 12 12 + Store 562(param) 561 + 566: 74(fvec3) Load 485(fragPos) + Store 565(param) 566 + 567: 74(fvec3) FunctionCall 82(shadow(vf3;vf3;) 562(param) 565(param) + 570: 568(ptr) AccessChain 557(outFragColor) 12 + 571: 16(float) CompositeExtract 567 0 + Store 570 571 + 572: 568(ptr) AccessChain 557(outFragColor) 45 + 573: 16(float) CompositeExtract 567 1 + Store 572 573 + 574: 568(ptr) AccessChain 557(outFragColor) 28 + 575: 16(float) CompositeExtract 567 2 + Store 574 575 576: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 577 577 12 12 - 574: 74(fvec3) Load 481(fragPos) - 578: 563(ptr) AccessChain 552(outFragColor) 12 - 579: 16(float) CompositeExtract 574 0 - Store 578 579 - 580: 563(ptr) AccessChain 552(outFragColor) 45 - 581: 16(float) CompositeExtract 574 1 - Store 580 581 - 582: 563(ptr) AccessChain 552(outFragColor) 28 - 583: 16(float) CompositeExtract 574 2 - Store 582 583 - 584: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 585 585 12 12 - Branch 549 - 546: Label - 588: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 + Branch 554 + 550: Label + 580: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 543 + 581: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 582 582 12 12 + 579: 74(fvec3) Load 485(fragPos) + 583: 568(ptr) AccessChain 557(outFragColor) 12 + 584: 16(float) CompositeExtract 579 0 + Store 583 584 + 585: 568(ptr) AccessChain 557(outFragColor) 45 + 586: 16(float) CompositeExtract 579 1 + Store 585 586 + 587: 568(ptr) AccessChain 557(outFragColor) 28 + 588: 16(float) CompositeExtract 579 2 + Store 587 588 589: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 590 590 12 12 - 587: 74(fvec3) Load 505(normal) - 591: 563(ptr) AccessChain 552(outFragColor) 12 - 592: 16(float) CompositeExtract 587 0 - Store 591 592 - 593: 563(ptr) AccessChain 552(outFragColor) 45 - 594: 16(float) CompositeExtract 587 1 - Store 593 594 - 595: 563(ptr) AccessChain 552(outFragColor) 28 - 596: 16(float) CompositeExtract 587 2 - Store 595 596 - 597: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 598 598 12 12 - Branch 549 - 547: Label - 601: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 + Branch 554 + 551: Label + 593: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 543 + 594: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 595 595 12 12 + 592: 74(fvec3) Load 509(normal) + 596: 568(ptr) AccessChain 557(outFragColor) 12 + 597: 16(float) CompositeExtract 592 0 + Store 596 597 + 598: 568(ptr) AccessChain 557(outFragColor) 45 + 599: 16(float) CompositeExtract 592 1 + Store 598 599 + 600: 568(ptr) AccessChain 557(outFragColor) 28 + 601: 16(float) CompositeExtract 592 2 + Store 600 601 602: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 603 603 12 12 - 600: 19(fvec4) Load 518(albedo) - 604: 74(fvec3) VectorShuffle 600 600 0 1 2 - 605: 563(ptr) AccessChain 552(outFragColor) 12 - 606: 16(float) CompositeExtract 604 0 - Store 605 606 - 607: 563(ptr) AccessChain 552(outFragColor) 45 - 608: 16(float) CompositeExtract 604 1 - Store 607 608 - 609: 563(ptr) AccessChain 552(outFragColor) 28 - 610: 16(float) CompositeExtract 604 2 - Store 609 610 - 611: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 612 612 12 12 - Branch 549 - 548: Label - 615: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 + Branch 554 + 552: Label + 606: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 543 + 607: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 608 608 12 12 + 605: 19(fvec4) Load 522(albedo) + 609: 74(fvec3) VectorShuffle 605 605 0 1 2 + 610: 568(ptr) AccessChain 557(outFragColor) 12 + 611: 16(float) CompositeExtract 609 0 + Store 610 611 + 612: 568(ptr) AccessChain 557(outFragColor) 45 + 613: 16(float) CompositeExtract 609 1 + Store 612 613 + 614: 568(ptr) AccessChain 557(outFragColor) 28 + 615: 16(float) CompositeExtract 609 2 + Store 614 615 616: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 617 617 12 12 - 614: 19(fvec4) Load 518(albedo) - 618: 74(fvec3) VectorShuffle 614 614 3 3 3 - 619: 563(ptr) AccessChain 552(outFragColor) 12 - 620: 16(float) CompositeExtract 618 0 - Store 619 620 - 621: 563(ptr) AccessChain 552(outFragColor) 45 - 622: 16(float) CompositeExtract 618 1 - Store 621 622 - 623: 563(ptr) AccessChain 552(outFragColor) 28 - 624: 16(float) CompositeExtract 618 2 - Store 623 624 - 625: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 626 626 12 12 - Branch 549 - 549: Label - 630: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 - 631: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 632 632 12 12 - 629: 563(ptr) AccessChain 552(outFragColor) 13 - Store 629 117 - 633: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 634 634 12 12 + Branch 554 + 553: Label + 620: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 543 + 621: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 622 622 12 12 + 619: 19(fvec4) Load 522(albedo) + 623: 74(fvec3) VectorShuffle 619 619 3 3 3 + 624: 568(ptr) AccessChain 557(outFragColor) 12 + 625: 16(float) CompositeExtract 623 0 + Store 624 625 + 626: 568(ptr) AccessChain 557(outFragColor) 45 + 627: 16(float) CompositeExtract 623 1 + Store 626 627 + 628: 568(ptr) AccessChain 557(outFragColor) 28 + 629: 16(float) CompositeExtract 623 2 + Store 628 629 + 630: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 631 631 12 12 + Branch 554 + 554: Label + 635: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 543 + 636: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 637 637 12 12 + 634: 568(ptr) AccessChain 557(outFragColor) 13 + Store 634 117 + 638: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 639 639 12 12 Return - 538: Label - 640: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 - 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 518(albedo) - 643: 74(fvec3) VectorShuffle 642 642 0 1 2 - 645: 74(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: 74(fvec3) Load 505(normal) - 653: 74(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) 108 - Branch 659 - 659: Label - 663: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 - 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) 96 - 668: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 656 656 12 12 - 666: 98(int) Load 654(i) - 669: 141(bool) SLessThan 666 397 - BranchConditional 669 660 661 - 660: Label - 675: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 - 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: 98(int) Load 654(i) - 680: 678(ptr) AccessChain 435(ubo) 294 677 108 - 681: 19(fvec4) Load 680 - 682: 74(fvec3) VectorShuffle 681 681 0 1 2 - 683: 74(fvec3) Load 481(fragPos) - 684: 74(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: 74(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: 74(fvec3) Load 670(L) - 695: 74(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 435(ubo) 108 - 703: 19(fvec4) Load 702 - 704: 74(fvec3) VectorShuffle 703 703 0 1 2 - 705: 74(fvec3) Load 481(fragPos) - 706: 74(fvec3) FSub 704 705 - Store 696(V) 706 - 708: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 709 709 12 12 - 707: 74(fvec3) Load 696(V) - 710: 74(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: 98(int) Load 654(i) - 739: 678(ptr) AccessChain 435(ubo) 294 738 108 - 740: 19(fvec4) Load 739 - 741: 74(fvec3) VectorShuffle 740 740 0 1 2 - 742: 98(int) Load 654(i) - 743: 678(ptr) AccessChain 435(ubo) 294 742 294 - 744: 19(fvec4) Load 743 - 745: 74(fvec3) VectorShuffle 744 744 0 1 2 - 746: 74(fvec3) FSub 741 745 - 747: 74(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: 74(fvec3) Load 670(L) - 755: 74(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 198 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: 74(fvec3) Load 646(N) - 783: 74(fvec3) Load 670(L) - 784: 16(float) Dot 782 783 - 785: 16(float) ExtInst 3(GLSL.std.450) 40(FMax) 198 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: 74(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: 74(fvec3) Load 670(L) - 801: 74(fvec3) FNegate 800 - 802: 74(fvec3) Load 646(N) - 803: 74(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: 74(fvec3) Load 794(R) - 811: 74(fvec3) Load 696(V) - 812: 16(float) Dot 810 811 - 813: 16(float) ExtInst 3(GLSL.std.450) 40(FMax) 198 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 518(albedo) 13 - 824: 16(float) Load 823 - 825: 16(float) FMul 822 824 - 827: 16(float) FMul 825 826 - 828: 74(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: 74(fvec3) Load 786(diff) - 832: 74(fvec3) Load 814(spec) - 833: 74(fvec3) FAdd 829 832 - 834: 16(float) Load 757(spotEffect) - 835: 74(fvec3) VectorTimesScalar 833 834 - 836: 16(float) Load 767(heightAttenuation) - 837: 74(fvec3) VectorTimesScalar 835 836 - 838: 98(int) Load 654(i) - 840: 678(ptr) AccessChain 435(ubo) 294 838 839 - 841: 19(fvec4) Load 840 - 842: 74(fvec3) VectorShuffle 841 841 0 1 2 - 843: 74(fvec3) FMul 837 842 - 844: 19(fvec4) Load 518(albedo) - 845: 74(fvec3) VectorShuffle 844 844 0 1 2 - 846: 74(fvec3) FMul 843 845 - 847: 74(fvec3) Load 636(fragcolor) - 848: 74(fvec3) FAdd 847 846 - Store 636(fragcolor) 848 - Branch 662 - 662: Label - 850: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 - 851: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 656 656 12 12 - 849: 98(int) Load 654(i) - 852: 98(int) IAdd 849 294 - Store 654(i) 852 - Branch 659 - 661: Label - 854: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 - 855: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 856 856 12 12 - 853: 530(ptr) AccessChain 435(ubo) 839 - 857: 98(int) Load 853 - 858: 141(bool) SGreaterThan 857 108 - SelectionMerge 860 None - BranchConditional 858 859 860 - 859: Label - 863: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 - 864: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 865 865 12 12 - 862: 74(fvec3) Load 636(fragcolor) - Store 861(param) 862 - 867: 74(fvec3) Load 481(fragPos) - Store 866(param) 867 - 868: 74(fvec3) FunctionCall 82(shadow(vf3;vf3;) 861(param) 866(param) - Store 636(fragcolor) 868 - Branch 860 - 860: Label - 870: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 - 871: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 872 872 12 12 - 869: 74(fvec3) Load 636(fragcolor) - 873: 16(float) CompositeExtract 869 0 - 874: 16(float) CompositeExtract 869 1 - 875: 16(float) CompositeExtract 869 2 - 876: 19(fvec4) CompositeConstruct 873 874 875 117 - Store 552(outFragColor) 876 - 877: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 878 878 12 12 + 542: Label + 645: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 + 646: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 643 643 12 12 + 644: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 642 641(fragcolor) 49 + 647: 19(fvec4) Load 522(albedo) + 648: 74(fvec3) VectorShuffle 647 647 0 1 2 + 650: 74(fvec3) VectorTimesScalar 648 649 + Store 641(fragcolor) 650 + 656: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 654 654 12 12 + 655: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 652 651(N) 49 + 657: 74(fvec3) Load 509(normal) + 658: 74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 657 + Store 651(N) 658 + 663: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 661 661 12 12 + 662: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 660 659(i) 49 + Store 659(i) 108 + Branch 664 + 664: Label + 668: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 + 669: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 661 661 12 12 + LoopMerge 666 667 None + Branch 670 + 670: Label + 672: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 + 673: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 661 661 12 12 + 671: 98(int) Load 659(i) + 674: 141(bool) SLessThan 671 401 + BranchConditional 674 665 666 + 665: Label + 680: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 + 681: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 678 678 12 12 + 679: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 676 675(L) 49 + 682: 98(int) Load 659(i) + 685: 683(ptr) AccessChain 439(ubo) 298 682 108 + 686: 19(fvec4) Load 685 + 687: 74(fvec3) VectorShuffle 686 686 0 1 2 + 688: 74(fvec3) Load 485(fragPos) + 689: 74(fvec3) FSub 687 688 + Store 675(L) 689 + 694: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 692 692 12 12 + 693: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 691 690(dist) 49 + 695: 74(fvec3) Load 675(L) + 696: 16(float) ExtInst 3(GLSL.std.450) 66(Length) 695 + Store 690(dist) 696 + 698: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 699 699 12 12 + 697: 74(fvec3) Load 675(L) + 700: 74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 697 + Store 675(L) 700 + 706: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 704 704 12 12 + 705: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 702 701(V) 49 + 707: 683(ptr) AccessChain 439(ubo) 108 + 708: 19(fvec4) Load 707 + 709: 74(fvec3) VectorShuffle 708 708 0 1 2 + 710: 74(fvec3) Load 485(fragPos) + 711: 74(fvec3) FSub 709 710 + Store 701(V) 711 + 713: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 714 714 12 12 + 712: 74(fvec3) Load 701(V) + 715: 74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 712 + Store 701(V) 715 + 721: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 719 719 12 12 + 720: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 717 716(lightCosInnerAngle) 49 + Store 716(lightCosInnerAngle) 722 + 728: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 726 726 12 12 + 727: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 724 723(lightCosOuterAngle) 49 + Store 723(lightCosOuterAngle) 729 + 735: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 733 733 12 12 + 734: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 731 730(lightRange) 49 + Store 730(lightRange) 736 + 742: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 740 740 12 12 + 741: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 738 737(dir) 49 + 743: 98(int) Load 659(i) + 744: 683(ptr) AccessChain 439(ubo) 298 743 108 + 745: 19(fvec4) Load 744 + 746: 74(fvec3) VectorShuffle 745 745 0 1 2 + 747: 98(int) Load 659(i) + 748: 683(ptr) AccessChain 439(ubo) 298 747 298 + 749: 19(fvec4) Load 748 + 750: 74(fvec3) VectorShuffle 749 749 0 1 2 + 751: 74(fvec3) FSub 746 750 + 752: 74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 751 + Store 737(dir) 752 + 758: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 756 756 12 12 + 757: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 754 753(cosDir) 49 + 759: 74(fvec3) Load 675(L) + 760: 74(fvec3) Load 737(dir) + 761: 16(float) Dot 759 760 + Store 753(cosDir) 761 + 767: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 765 765 12 12 + 766: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 763 762(spotEffect) 49 + 768: 16(float) Load 723(lightCosOuterAngle) + 769: 16(float) Load 716(lightCosInnerAngle) + 770: 16(float) Load 753(cosDir) + 771: 16(float) ExtInst 3(GLSL.std.450) 49(SmoothStep) 768 769 770 + Store 762(spotEffect) 771 + 777: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 775 775 12 12 + 776: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 773 772(heightAttenuation) 49 + 778: 16(float) Load 730(lightRange) + 779: 16(float) Load 690(dist) + 780: 16(float) ExtInst 3(GLSL.std.450) 49(SmoothStep) 778 200 779 + Store 772(heightAttenuation) 780 + 786: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 784 784 12 12 + 785: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 782 781(NdotL) 49 + 787: 74(fvec3) Load 651(N) + 788: 74(fvec3) Load 675(L) + 789: 16(float) Dot 787 788 + 790: 16(float) ExtInst 3(GLSL.std.450) 40(FMax) 200 789 + Store 781(NdotL) 790 + 796: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 794 794 12 12 + 795: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 792 791(diff) 49 + 797: 16(float) Load 781(NdotL) + 798: 74(fvec3) CompositeConstruct 797 797 797 + Store 791(diff) 798 + 804: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 802 802 12 12 + 803: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 800 799(R) 49 + 805: 74(fvec3) Load 675(L) + 806: 74(fvec3) FNegate 805 + 807: 74(fvec3) Load 651(N) + 808: 74(fvec3) ExtInst 3(GLSL.std.450) 71(Reflect) 806 807 + Store 799(R) 808 + 814: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 812 812 12 12 + 813: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 810 809(NdotR) 49 + 815: 74(fvec3) Load 799(R) + 816: 74(fvec3) Load 701(V) + 817: 16(float) Dot 815 816 + 818: 16(float) ExtInst 3(GLSL.std.450) 40(FMax) 200 817 + Store 809(NdotR) 818 + 824: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 822 822 12 12 + 823: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 820 819(spec) 49 + 825: 16(float) Load 809(NdotR) + 827: 16(float) ExtInst 3(GLSL.std.450) 26(Pow) 825 826 + 828: 25(ptr) AccessChain 522(albedo) 13 + 829: 16(float) Load 828 + 830: 16(float) FMul 827 829 + 832: 16(float) FMul 830 831 + 833: 74(fvec3) CompositeConstruct 832 832 832 + Store 819(spec) 833 + 835: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 836 836 12 12 + 834: 74(fvec3) Load 791(diff) + 837: 74(fvec3) Load 819(spec) + 838: 74(fvec3) FAdd 834 837 + 839: 16(float) Load 762(spotEffect) + 840: 74(fvec3) VectorTimesScalar 838 839 + 841: 16(float) Load 772(heightAttenuation) + 842: 74(fvec3) VectorTimesScalar 840 841 + 843: 98(int) Load 659(i) + 845: 683(ptr) AccessChain 439(ubo) 298 843 844 + 846: 19(fvec4) Load 845 + 847: 74(fvec3) VectorShuffle 846 846 0 1 2 + 848: 74(fvec3) FMul 842 847 + 849: 19(fvec4) Load 522(albedo) + 850: 74(fvec3) VectorShuffle 849 849 0 1 2 + 851: 74(fvec3) FMul 848 850 + 852: 74(fvec3) Load 641(fragcolor) + 853: 74(fvec3) FAdd 852 851 + Store 641(fragcolor) 853 + Branch 667 + 667: Label + 855: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 + 856: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 661 661 12 12 + 854: 98(int) Load 659(i) + 857: 98(int) IAdd 854 298 + Store 659(i) 857 + Branch 664 + 666: Label + 859: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 + 860: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 861 861 12 12 + 858: 534(ptr) AccessChain 439(ubo) 844 + 862: 98(int) Load 858 + 863: 141(bool) SGreaterThan 862 108 + SelectionMerge 865 None + BranchConditional 863 864 865 + 864: Label + 871: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 866 + 872: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 867 867 12 12 + 870: 74(fvec3) Load 641(fragcolor) + Store 869(param) 870 + 874: 74(fvec3) Load 485(fragPos) + Store 873(param) 874 + 875: 74(fvec3) FunctionCall 82(shadow(vf3;vf3;) 869(param) 873(param) + Store 641(fragcolor) 875 + Branch 865 + 865: Label + 877: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 96 + 878: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 879 879 12 12 + 876: 74(fvec3) Load 641(fragcolor) + 880: 16(float) CompositeExtract 876 0 + 881: 16(float) CompositeExtract 876 1 + 882: 16(float) CompositeExtract 876 2 + 883: 19(fvec4) CompositeConstruct 880 881 882 117 + Store 557(outFragColor) 883 + 884: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 885 885 12 12 Return FunctionEnd 37(textureProj(vf4;f1;vf2;): 16(float) Function None 32 @@ -990,7 +997,7 @@ void main() 38: Label 112(shadow): 25(ptr) Variable Function 118(shadowCoord): 22(ptr) Variable Function - 162(dist): 25(ptr) Variable Function + 165(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 @@ -1040,269 +1047,269 @@ void main() SelectionMerge 159 None BranchConditional 157 158 159 158: Label - 167: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 - 168: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 165 165 12 12 - 166: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 163 162(dist) 49 - 183: 174 Load 180(samplerShadowMap) - 184: 19(fvec4) Load 118(shadowCoord) - 185: 27(fvec2) VectorShuffle 184 184 0 1 - 186: 27(fvec2) Load 36(offset) - 187: 27(fvec2) FAdd 185 186 - 188: 16(float) Load 35(layer) - 189: 16(float) CompositeExtract 187 0 - 190: 16(float) CompositeExtract 187 1 - 191: 74(fvec3) CompositeConstruct 189 190 188 - 192: 19(fvec4) ImageSampleImplicitLod 183 191 - 193: 16(float) CompositeExtract 192 0 - Store 162(dist) 193 - 195: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 196 196 12 12 - 194: 25(ptr) AccessChain 118(shadowCoord) 13 - 197: 16(float) Load 194 - 199: 141(bool) FOrdGreaterThan 197 198 - SelectionMerge 201 None - BranchConditional 199 200 201 - 200: Label - 203: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 - 204: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 196 196 12 12 - 202: 16(float) Load 162(dist) - 205: 25(ptr) AccessChain 118(shadowCoord) 28 - 206: 16(float) Load 205 - 207: 141(bool) FOrdLessThan 202 206 - Branch 201 - 201: Label - 208: 141(bool) Phi 199 158 207 200 - 211: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 - 212: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 196 196 12 12 - SelectionMerge 210 None - BranchConditional 208 209 210 - 209: Label - 214: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 - 215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 216 216 12 12 - Store 112(shadow) 213 - Branch 210 - 210: Label + 169: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 162 + 170: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 163 163 12 12 + 168: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 166 165(dist) 49 + 185: 176 Load 182(samplerShadowMap) + 186: 19(fvec4) Load 118(shadowCoord) + 187: 27(fvec2) VectorShuffle 186 186 0 1 + 188: 27(fvec2) Load 36(offset) + 189: 27(fvec2) FAdd 187 188 + 190: 16(float) Load 35(layer) + 191: 16(float) CompositeExtract 189 0 + 192: 16(float) CompositeExtract 189 1 + 193: 74(fvec3) CompositeConstruct 191 192 190 + 194: 19(fvec4) ImageSampleImplicitLod 185 193 + 195: 16(float) CompositeExtract 194 0 + Store 165(dist) 195 + 197: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 198 198 12 12 + 196: 25(ptr) AccessChain 118(shadowCoord) 13 + 199: 16(float) Load 196 + 201: 141(bool) FOrdGreaterThan 199 200 + SelectionMerge 203 None + BranchConditional 201 202 203 + 202: Label + 205: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 162 + 206: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 198 198 12 12 + 204: 16(float) Load 165(dist) + 207: 25(ptr) AccessChain 118(shadowCoord) 28 + 208: 16(float) Load 207 + 209: 141(bool) FOrdLessThan 204 208 + Branch 203 + 203: Label + 210: 141(bool) Phi 201 158 209 202 + 213: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 162 + 214: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 198 198 12 12 + SelectionMerge 212 None + BranchConditional 210 211 212 + 211: Label + 219: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 215 + 220: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 216 216 12 12 + Store 112(shadow) 218 + Branch 212 + 212: Label Branch 159 159: Label - 218: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 - 219: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 220 220 12 12 - 217: 16(float) Load 112(shadow) - ReturnValue 217 + 222: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 40 + 223: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 224 224 12 12 + 221: 16(float) Load 112(shadow) + ReturnValue 221 FunctionEnd 62(filterPCF(vf4;f1;): 16(float) Function None 58 60(sc): 22(ptr) FunctionParameter 61(layer): 25(ptr) FunctionParameter 63: Label - 231(texDim): 229(ptr) Variable Function - 243(scale): 25(ptr) Variable Function - 250(dx): 25(ptr) Variable Function - 264(dy): 25(ptr) Variable Function -276(shadowFactor): 25(ptr) Variable Function - 282(count): 258(ptr) Variable Function - 288(range): 258(ptr) Variable Function - 295(x): 258(ptr) Variable Function - 315(y): 258(ptr) Variable Function - 348(param): 22(ptr) Variable Function - 350(param): 25(ptr) Variable Function - 352(param): 30(ptr) Variable Function + 235(texDim): 233(ptr) Variable Function + 247(scale): 25(ptr) Variable Function + 254(dx): 25(ptr) Variable Function + 268(dy): 25(ptr) Variable Function +280(shadowFactor): 25(ptr) Variable Function + 286(count): 262(ptr) Variable Function + 292(range): 262(ptr) Variable Function + 299(x): 262(ptr) Variable Function + 319(y): 262(ptr) Variable Function + 352(param): 22(ptr) Variable Function + 354(param): 25(ptr) Variable Function + 356(param): 30(ptr) Variable Function 70: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 71: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 66 66 12 12 69: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 67 60(sc) 49 73: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 72 61(layer) 49 - 226: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 65 62(filterPCF(vf4;f1;) - 236: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 234 234 12 12 - 235: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 232 231(texDim) 49 - 237: 174 Load 180(samplerShadowMap) - 238: 169 Image 237 - 241: 239(ivec3) ImageQuerySizeLod 238 108 - 242: 227(ivec2) VectorShuffle 241 241 0 1 - Store 231(texDim) 242 - 248: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 246 246 12 12 - 247: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 244 243(scale) 49 - Store 243(scale) 249 - 255: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 253 253 12 12 - 254: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 251 250(dx) 49 - 256: 16(float) Load 243(scale) - 257: 16(float) FMul 256 117 - 260: 258(ptr) AccessChain 231(texDim) 12 - 261: 98(int) Load 260 - 262: 16(float) ConvertSToF 261 - 263: 16(float) FDiv 257 262 - Store 250(dx) 263 - 269: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 267 267 12 12 - 268: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 265 264(dy) 49 - 270: 16(float) Load 243(scale) - 271: 16(float) FMul 270 117 - 272: 258(ptr) AccessChain 231(texDim) 45 - 273: 98(int) Load 272 - 274: 16(float) ConvertSToF 273 - 275: 16(float) FDiv 271 274 - Store 264(dy) 275 - 281: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 279 279 12 12 - 280: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 277 276(shadowFactor) 49 - Store 276(shadowFactor) 198 - 287: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 285 285 12 12 - 286: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 283 282(count) 49 - Store 282(count) 108 - 293: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 291 291 12 12 - 292: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 289 288(range) 49 - Store 288(range) 294 - 300: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 298 298 12 12 - 299: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 296 295(x) 49 - 301: 98(int) Load 288(range) - 302: 98(int) SNegate 301 - Store 295(x) 302 - Branch 303 - 303: Label - 307: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 308: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 298 298 12 12 - LoopMerge 305 306 None - Branch 309 - 309: Label + 230: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 65 62(filterPCF(vf4;f1;) + 240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 238 238 12 12 + 239: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 236 235(texDim) 49 + 241: 176 Load 182(samplerShadowMap) + 242: 171 Image 241 + 245: 243(ivec3) ImageQuerySizeLod 242 108 + 246: 231(ivec2) VectorShuffle 245 245 0 1 + Store 235(texDim) 246 + 252: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 250 250 12 12 + 251: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 248 247(scale) 49 + Store 247(scale) 253 + 259: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 257 257 12 12 + 258: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 255 254(dx) 49 + 260: 16(float) Load 247(scale) + 261: 16(float) FMul 260 117 + 264: 262(ptr) AccessChain 235(texDim) 12 + 265: 98(int) Load 264 + 266: 16(float) ConvertSToF 265 + 267: 16(float) FDiv 261 266 + Store 254(dx) 267 + 273: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 271 271 12 12 + 272: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 269 268(dy) 49 + 274: 16(float) Load 247(scale) + 275: 16(float) FMul 274 117 + 276: 262(ptr) AccessChain 235(texDim) 45 + 277: 98(int) Load 276 + 278: 16(float) ConvertSToF 277 + 279: 16(float) FDiv 275 278 + Store 268(dy) 279 + 285: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 283 283 12 12 + 284: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 281 280(shadowFactor) 49 + Store 280(shadowFactor) 200 + 291: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 289 289 12 12 + 290: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 287 286(count) 49 + Store 286(count) 108 + 297: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 295 295 12 12 + 296: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 293 292(range) 49 + Store 292(range) 298 + 304: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 302 302 12 12 + 303: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 300 299(x) 49 + 305: 98(int) Load 292(range) + 306: 98(int) SNegate 305 + Store 299(x) 306 + Branch 307 + 307: Label 311: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 312: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 298 298 12 12 - 310: 98(int) Load 295(x) - 313: 98(int) Load 288(range) - 314: 141(bool) SLessThanEqual 310 313 - BranchConditional 314 304 305 - 304: Label - 320: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 321: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 318 318 12 12 - 319: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 316 315(y) 49 - 322: 98(int) Load 288(range) - 323: 98(int) SNegate 322 - Store 315(y) 323 - Branch 324 - 324: Label - 328: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 329: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 318 318 12 12 - LoopMerge 326 327 None - Branch 330 - 330: Label + 312: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 302 302 12 12 + LoopMerge 309 310 None + Branch 313 + 313: Label + 315: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 + 316: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 302 302 12 12 + 314: 98(int) Load 299(x) + 317: 98(int) Load 292(range) + 318: 141(bool) SLessThanEqual 314 317 + BranchConditional 318 308 309 + 308: Label + 324: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 + 325: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 322 322 12 12 + 323: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 320 319(y) 49 + 326: 98(int) Load 292(range) + 327: 98(int) SNegate 326 + Store 319(y) 327 + Branch 328 + 328: Label 332: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 333: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 318 318 12 12 - 331: 98(int) Load 315(y) - 334: 98(int) Load 288(range) - 335: 141(bool) SLessThanEqual 331 334 - BranchConditional 335 325 326 - 325: Label - 337: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 338: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 339 339 12 12 - 336: 16(float) Load 250(dx) - 340: 98(int) Load 295(x) - 341: 16(float) ConvertSToF 340 - 342: 16(float) FMul 336 341 - 343: 16(float) Load 264(dy) - 344: 98(int) Load 315(y) + 333: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 322 322 12 12 + LoopMerge 330 331 None + Branch 334 + 334: Label + 336: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 + 337: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 322 322 12 12 + 335: 98(int) Load 319(y) + 338: 98(int) Load 292(range) + 339: 141(bool) SLessThanEqual 335 338 + BranchConditional 339 329 330 + 329: Label + 341: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 + 342: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 343 343 12 12 + 340: 16(float) Load 254(dx) + 344: 98(int) Load 299(x) 345: 16(float) ConvertSToF 344 - 346: 16(float) FMul 343 345 - 347: 27(fvec2) CompositeConstruct 342 346 - 349: 19(fvec4) Load 60(sc) - Store 348(param) 349 - 351: 16(float) Load 61(layer) - Store 350(param) 351 - Store 352(param) 347 - 353: 16(float) FunctionCall 37(textureProj(vf4;f1;vf2;) 348(param) 350(param) 352(param) - 354: 16(float) Load 276(shadowFactor) - 355: 16(float) FAdd 354 353 - Store 276(shadowFactor) 355 - 357: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 358 358 12 12 - 356: 98(int) Load 282(count) - 359: 98(int) IAdd 356 294 - Store 282(count) 359 - Branch 327 - 327: Label - 361: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 362: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 318 318 12 12 - 360: 98(int) Load 315(y) - 363: 98(int) IAdd 360 294 - Store 315(y) 363 - Branch 324 - 326: Label - Branch 306 - 306: Label - 365: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 366: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 298 298 12 12 - 364: 98(int) Load 295(x) - 367: 98(int) IAdd 364 294 - Store 295(x) 367 - Branch 303 - 305: Label - 369: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 370: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 371 371 12 12 - 368: 16(float) Load 276(shadowFactor) - 372: 98(int) Load 282(count) - 373: 16(float) ConvertSToF 372 - 374: 16(float) FDiv 368 373 - ReturnValue 374 + 346: 16(float) FMul 340 345 + 347: 16(float) Load 268(dy) + 348: 98(int) Load 319(y) + 349: 16(float) ConvertSToF 348 + 350: 16(float) FMul 347 349 + 351: 27(fvec2) CompositeConstruct 346 350 + 353: 19(fvec4) Load 60(sc) + Store 352(param) 353 + 355: 16(float) Load 61(layer) + Store 354(param) 355 + Store 356(param) 351 + 357: 16(float) FunctionCall 37(textureProj(vf4;f1;vf2;) 352(param) 354(param) 356(param) + 358: 16(float) Load 280(shadowFactor) + 359: 16(float) FAdd 358 357 + Store 280(shadowFactor) 359 + 361: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 362 362 12 12 + 360: 98(int) Load 286(count) + 363: 98(int) IAdd 360 298 + Store 286(count) 363 + Branch 331 + 331: Label + 365: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 + 366: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 322 322 12 12 + 364: 98(int) Load 319(y) + 367: 98(int) IAdd 364 298 + Store 319(y) 367 + Branch 328 + 330: Label + Branch 310 + 310: Label + 369: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 + 370: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 302 302 12 12 + 368: 98(int) Load 299(x) + 371: 98(int) IAdd 368 298 + Store 299(x) 371 + Branch 307 + 309: Label + 373: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 + 374: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 375 375 12 12 + 372: 16(float) Load 280(shadowFactor) + 376: 98(int) Load 286(count) + 377: 16(float) ConvertSToF 376 + 378: 16(float) FDiv 372 377 + ReturnValue 378 FunctionEnd 82(shadow(vf3;vf3;): 74(fvec3) Function None 78 80(fragcolor): 76(ptr) FunctionParameter 81(fragpos): 76(ptr) FunctionParameter 83: Label - 381(i): 258(ptr) Variable Function - 399(shadowClip): 22(ptr) Variable Function -449(shadowFactor): 25(ptr) Variable Function - 456(param): 22(ptr) Variable Function - 458(param): 25(ptr) Variable Function + 385(i): 262(ptr) Variable Function + 403(shadowClip): 22(ptr) Variable Function +453(shadowFactor): 25(ptr) Variable Function + 460(param): 22(ptr) Variable Function + 462(param): 25(ptr) Variable Function 90: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 91: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 86 86 12 12 89: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 87 80(fragcolor) 49 94: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 92 81(fragpos) 49 - 380: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 85 82(shadow(vf3;vf3;) - 386: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 384 384 12 12 - 385: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 382 381(i) 49 - Store 381(i) 108 - Branch 387 - 387: Label - 391: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 - 392: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 384 384 12 12 - LoopMerge 389 390 None - Branch 393 - 393: Label + 384: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 85 82(shadow(vf3;vf3;) + 390: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 388 388 12 12 + 389: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 386 385(i) 49 + Store 385(i) 108 + Branch 391 + 391: Label 395: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 - 396: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 384 384 12 12 - 394: 98(int) Load 381(i) - 398: 141(bool) SLessThan 394 397 - BranchConditional 398 388 389 - 388: Label - 404: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 - 405: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 402 402 12 12 - 403: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 400 399(shadowClip) 49 - 438: 98(int) Load 381(i) - 441: 439(ptr) AccessChain 435(ubo) 294 438 397 - 442: 406 Load 441 - 443: 74(fvec3) Load 81(fragpos) - 444: 16(float) CompositeExtract 443 0 - 445: 16(float) CompositeExtract 443 1 - 446: 16(float) CompositeExtract 443 2 - 447: 19(fvec4) CompositeConstruct 444 445 446 117 - 448: 19(fvec4) MatrixTimesVector 442 447 - Store 399(shadowClip) 448 - 453: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 451 451 12 12 - 452: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 450 449(shadowFactor) 49 - 454: 98(int) Load 381(i) - 455: 16(float) ConvertSToF 454 - 457: 19(fvec4) Load 399(shadowClip) - Store 456(param) 457 - Store 458(param) 455 - 459: 16(float) FunctionCall 62(filterPCF(vf4;f1;) 456(param) 458(param) - Store 449(shadowFactor) 459 - 461: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 462 462 12 12 - 460: 16(float) Load 449(shadowFactor) - 463: 74(fvec3) Load 80(fragcolor) - 464: 74(fvec3) VectorTimesScalar 463 460 - Store 80(fragcolor) 464 - Branch 390 - 390: Label - 466: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 - 467: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 384 384 12 12 - 465: 98(int) Load 381(i) - 468: 98(int) IAdd 465 294 - Store 381(i) 468 - Branch 387 - 389: Label - 470: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 - 471: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 472 472 12 12 - 469: 74(fvec3) Load 80(fragcolor) - ReturnValue 469 + 396: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 388 388 12 12 + LoopMerge 393 394 None + Branch 397 + 397: Label + 399: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 + 400: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 388 388 12 12 + 398: 98(int) Load 385(i) + 402: 141(bool) SLessThan 398 401 + BranchConditional 402 392 393 + 392: Label + 408: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 + 409: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 406 406 12 12 + 407: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 404 403(shadowClip) 49 + 442: 98(int) Load 385(i) + 445: 443(ptr) AccessChain 439(ubo) 298 442 401 + 446: 410 Load 445 + 447: 74(fvec3) Load 81(fragpos) + 448: 16(float) CompositeExtract 447 0 + 449: 16(float) CompositeExtract 447 1 + 450: 16(float) CompositeExtract 447 2 + 451: 19(fvec4) CompositeConstruct 448 449 450 117 + 452: 19(fvec4) MatrixTimesVector 446 451 + Store 403(shadowClip) 452 + 457: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 455 455 12 12 + 456: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 454 453(shadowFactor) 49 + 458: 98(int) Load 385(i) + 459: 16(float) ConvertSToF 458 + 461: 19(fvec4) Load 403(shadowClip) + Store 460(param) 461 + Store 462(param) 459 + 463: 16(float) FunctionCall 62(filterPCF(vf4;f1;) 460(param) 462(param) + Store 453(shadowFactor) 463 + 465: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 466 466 12 12 + 464: 16(float) Load 453(shadowFactor) + 467: 74(fvec3) Load 80(fragcolor) + 468: 74(fvec3) VectorTimesScalar 467 464 + Store 80(fragcolor) 468 + Branch 394 + 394: Label + 470: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 + 471: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 388 388 12 12 + 469: 98(int) Load 385(i) + 472: 98(int) IAdd 469 298 + Store 385(i) 472 + Branch 391 + 393: Label + 474: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 + 475: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 41 476 476 12 12 + 473: 74(fvec3) Load 80(fragcolor) + ReturnValue 473 FunctionEnd diff --git a/Test/baseResults/spv.debuginfo.glsl.tesc.out b/Test/baseResults/spv.debuginfo.glsl.tesc.out index e81dff1f..937a42ef 100644 --- a/Test/baseResults/spv.debuginfo.glsl.tesc.out +++ b/Test/baseResults/spv.debuginfo.glsl.tesc.out @@ -1,14 +1,14 @@ spv.debuginfo.glsl.tesc // Module Version 10000 // Generated by (magic number): 8000b -// Id's are bound by 571 +// Id's are bound by 579 Capability Tessellation Extension "SPV_KHR_non_semantic_info" 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" 3: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 - EntryPoint TessellationControl 14 "main" 262 267 296 385 401 516 532 542 557 + EntryPoint TessellationControl 14 "main" 262 267 296 390 405 524 540 550 565 ExecutionMode 14 OutputVertices 4 2: String "spv.debuginfo.glsl.tesc" 8: String "uint" @@ -194,12 +194,12 @@ void main() 289: String "samplerHeight" 298: String "inUV" 317: String "i" - 387: String "gl_TessLevelInner" - 403: String "gl_TessLevelOuter" - 518: String "gl_out" - 534: String "outNormal" - 544: String "inNormal" - 559: String "outUV" + 392: String "gl_TessLevelInner" + 407: String "gl_TessLevelOuter" + 526: String "gl_out" + 542: String "outNormal" + 552: String "inNormal" + 567: String "outUV" Name 14 "main" Name 29 "screenSpaceTessFactor(vf4;vf4;" Name 27 "p0" @@ -231,25 +231,25 @@ void main() Name 287 "samplerHeight" Name 296 "inUV" Name 315 "i" - Name 385 "gl_TessLevelInner" - Name 401 "gl_TessLevelOuter" - Name 426 "param" - Name 432 "param" - Name 437 "param" - Name 442 "param" - Name 447 "param" - Name 452 "param" - Name 457 "param" - Name 462 "param" - Name 503 "gl_PerVertex" - MemberName 503(gl_PerVertex) 0 "gl_Position" - MemberName 503(gl_PerVertex) 1 "gl_PointSize" - MemberName 503(gl_PerVertex) 2 "gl_ClipDistance" - MemberName 503(gl_PerVertex) 3 "gl_CullDistance" - Name 516 "gl_out" - Name 532 "outNormal" - Name 542 "inNormal" - Name 557 "outUV" + Name 390 "gl_TessLevelInner" + Name 405 "gl_TessLevelOuter" + Name 434 "param" + Name 439 "param" + Name 444 "param" + Name 449 "param" + Name 454 "param" + Name 459 "param" + Name 464 "param" + Name 469 "param" + Name 511 "gl_PerVertex" + MemberName 511(gl_PerVertex) 0 "gl_Position" + MemberName 511(gl_PerVertex) 1 "gl_PointSize" + MemberName 511(gl_PerVertex) 2 "gl_ClipDistance" + MemberName 511(gl_PerVertex) 3 "gl_CullDistance" + Name 524 "gl_out" + Name 540 "outNormal" + Name 550 "inNormal" + Name 565 "outUV" Decorate 95 ArrayStride 16 Decorate 99(UBO) Block MemberDecorate 99(UBO) 0 ColMajor @@ -275,18 +275,18 @@ void main() Decorate 287(samplerHeight) Binding 1 Decorate 287(samplerHeight) DescriptorSet 0 Decorate 296(inUV) Location 1 - Decorate 385(gl_TessLevelInner) BuiltIn TessLevelInner - Decorate 385(gl_TessLevelInner) Patch - Decorate 401(gl_TessLevelOuter) BuiltIn TessLevelOuter - Decorate 401(gl_TessLevelOuter) Patch - Decorate 503(gl_PerVertex) Block - MemberDecorate 503(gl_PerVertex) 0 BuiltIn Position - MemberDecorate 503(gl_PerVertex) 1 BuiltIn PointSize - MemberDecorate 503(gl_PerVertex) 2 BuiltIn ClipDistance - MemberDecorate 503(gl_PerVertex) 3 BuiltIn CullDistance - Decorate 532(outNormal) Location 0 - Decorate 542(inNormal) Location 0 - Decorate 557(outUV) Location 1 + Decorate 390(gl_TessLevelInner) BuiltIn TessLevelInner + Decorate 390(gl_TessLevelInner) Patch + Decorate 405(gl_TessLevelOuter) BuiltIn TessLevelOuter + Decorate 405(gl_TessLevelOuter) Patch + Decorate 511(gl_PerVertex) Block + MemberDecorate 511(gl_PerVertex) 0 BuiltIn Position + MemberDecorate 511(gl_PerVertex) 1 BuiltIn PointSize + MemberDecorate 511(gl_PerVertex) 2 BuiltIn ClipDistance + MemberDecorate 511(gl_PerVertex) 3 BuiltIn CullDistance + Decorate 540(outNormal) Location 0 + Decorate 550(inNormal) Location 0 + Decorate 565(outUV) Location 1 4: TypeVoid 5: TypeFunction 4 7: TypeInt 32 0 @@ -441,252 +441,260 @@ void main() 338: TypePointer Uniform 19(fvec4) 339: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 21 38 12 343: 16(float) Constant 1090519040 - 348: 48(bool) ConstantFalse - 351: 7(int) Constant 92 - 359: 7(int) Constant 95 - 364: 7(int) Constant 96 - 370: 7(int) Constant 100 - 377: 7(int) Constant 102 - 381: TypeArray 16(float) 38 - 382: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 18 38 - 383: TypePointer Output 381 - 384: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 382 13 12 -385(gl_TessLevelInner): 383(ptr) Variable Output - 388: 7(int) Constant 104 - 386: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 387 382 33 388 12 36 387 385(gl_TessLevelInner) 112 - 389: TypePointer Output 16(float) - 390: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 18 13 12 - 396: 7(int) Constant 105 - 397: TypeArray 16(float) 20 - 398: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 18 20 - 399: TypePointer Output 397 - 400: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 398 13 12 -401(gl_TessLevelOuter): 399(ptr) Variable Output - 404: 7(int) Constant 106 - 402: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 403 398 33 404 12 36 403 401(gl_TessLevelOuter) 112 - 409: 7(int) Constant 107 - 410: 125(int) Constant 2 - 413: 7(int) Constant 108 - 416: 7(int) Constant 109 - 421: 7(int) Constant 113 - 430: 7(int) Constant 115 - 440: 7(int) Constant 116 - 450: 7(int) Constant 117 - 460: 7(int) Constant 118 - 469: 7(int) Constant 119 - 477: 7(int) Constant 120 - 487: 7(int) Constant 126 - 490: 7(int) Constant 127 - 493: 7(int) Constant 128 - 496: 7(int) Constant 129 - 499: 7(int) Constant 130 - 502: 7(int) Constant 131 -503(gl_PerVertex): TypeStruct 19(fvec4) 16(float) 243 243 - 505: 7(int) Constant 110 - 504: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 247 21 33 37 505 12 12 13 - 506: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 250 18 33 37 493 12 12 13 - 508: 7(int) Constant 171 - 507: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 253 244 33 37 508 12 12 13 - 509: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 253 244 33 37 508 12 12 13 - 511: 7(int) Constant 137 - 510: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 257 37 33 511 12 36 257 12 13 504 506 507 509 - 512: TypeArray 503(gl_PerVertex) 20 - 513: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 510 20 - 514: TypePointer Output 512 - 515: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 513 13 12 - 516(gl_out): 514(ptr) Variable Output - 517: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 518 513 33 511 12 36 518 516(gl_out) 112 - 525: TypePointer Output 19(fvec4) - 526: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 21 13 12 - 528: TypeArray 146(fvec3) 20 - 529: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 147 20 - 530: TypePointer Output 528 - 531: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 529 13 12 - 532(outNormal): 530(ptr) Variable Output - 535: 7(int) Constant 138 - 533: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 534 529 33 535 12 36 534 532(outNormal) 112 - 538: TypeArray 146(fvec3) 10 - 539: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 147 10 - 540: TypePointer Input 538 - 541: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 539 37 12 - 542(inNormal): 540(ptr) Variable Input - 543: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 544 539 33 535 12 36 544 542(inNormal) 112 - 546: TypePointer Input 146(fvec3) - 547: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 147 37 12 - 550: TypePointer Output 146(fvec3) - 551: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 147 13 12 - 553: TypeArray 97(fvec2) 20 - 554: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 98 20 - 555: TypePointer Output 553 - 556: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 554 13 12 - 557(outUV): 555(ptr) Variable Output - 560: 7(int) Constant 139 - 558: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 559 554 33 560 12 36 559 557(outUV) 112 - 566: TypePointer Output 97(fvec2) - 567: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 98 13 12 - 570: 7(int) Constant 140 + 349: 7(int) Constant 92 + 348: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 33 349 20 56 + 350: 48(bool) ConstantFalse + 360: 7(int) Constant 95 + 365: 7(int) Constant 96 + 371: 7(int) Constant 100 + 376: 7(int) Constant 102 + 375: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 33 376 13 59 + 384: 7(int) Constant 104 + 385: 7(int) Constant 25 + 383: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 33 384 385 375 + 386: TypeArray 16(float) 38 + 387: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 18 38 + 388: TypePointer Output 386 + 389: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 387 13 12 +390(gl_TessLevelInner): 388(ptr) Variable Output + 391: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 392 387 33 384 12 36 392 390(gl_TessLevelInner) 112 + 393: TypePointer Output 16(float) + 394: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 18 13 12 + 400: 7(int) Constant 105 + 401: TypeArray 16(float) 20 + 402: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 18 20 + 403: TypePointer Output 401 + 404: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 402 13 12 +405(gl_TessLevelOuter): 403(ptr) Variable Output + 408: 7(int) Constant 106 + 406: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 407 402 33 408 12 36 407 405(gl_TessLevelOuter) 112 + 413: 7(int) Constant 107 + 414: 125(int) Constant 2 + 417: 7(int) Constant 108 + 420: 7(int) Constant 109 + 423: 7(int) Constant 113 + 422: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 33 423 20 375 + 432: 7(int) Constant 115 + 433: 7(int) Constant 26 + 431: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 33 432 433 422 + 447: 7(int) Constant 116 + 457: 7(int) Constant 117 + 467: 7(int) Constant 118 + 476: 7(int) Constant 119 + 484: 7(int) Constant 120 + 492: 7(int) Constant 126 + 491: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 33 492 433 422 + 498: 7(int) Constant 127 + 501: 7(int) Constant 128 + 504: 7(int) Constant 129 + 507: 7(int) Constant 130 + 510: 7(int) Constant 131 +511(gl_PerVertex): TypeStruct 19(fvec4) 16(float) 243 243 + 513: 7(int) Constant 110 + 512: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 247 21 33 37 513 12 12 13 + 514: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 250 18 33 37 501 12 12 13 + 516: 7(int) Constant 171 + 515: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 253 244 33 37 516 12 12 13 + 517: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 253 244 33 37 516 12 12 13 + 519: 7(int) Constant 137 + 518: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 257 37 33 519 12 36 257 12 13 512 514 515 517 + 520: TypeArray 511(gl_PerVertex) 20 + 521: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 518 20 + 522: TypePointer Output 520 + 523: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 521 13 12 + 524(gl_out): 522(ptr) Variable Output + 525: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 526 521 33 519 12 36 526 524(gl_out) 112 + 533: TypePointer Output 19(fvec4) + 534: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 21 13 12 + 536: TypeArray 146(fvec3) 20 + 537: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 147 20 + 538: TypePointer Output 536 + 539: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 537 13 12 + 540(outNormal): 538(ptr) Variable Output + 543: 7(int) Constant 138 + 541: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 542 537 33 543 12 36 542 540(outNormal) 112 + 546: TypeArray 146(fvec3) 10 + 547: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 147 10 + 548: TypePointer Input 546 + 549: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 547 37 12 + 550(inNormal): 548(ptr) Variable Input + 551: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 552 547 33 543 12 36 552 550(inNormal) 112 + 554: TypePointer Input 146(fvec3) + 555: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 147 37 12 + 558: TypePointer Output 146(fvec3) + 559: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 147 13 12 + 561: TypeArray 97(fvec2) 20 + 562: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 98 20 + 563: TypePointer Output 561 + 564: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 562 13 12 + 565(outUV): 563(ptr) Variable Output + 568: 7(int) Constant 139 + 566: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 567 562 33 568 12 36 567 565(outUV) 112 + 574: TypePointer Output 97(fvec2) + 575: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 98 13 12 + 578: 7(int) Constant 140 14(main): 4 Function None 5 15: Label - 426(param): 22(ptr) Variable Function - 432(param): 22(ptr) Variable Function - 437(param): 22(ptr) Variable Function - 442(param): 22(ptr) Variable Function - 447(param): 22(ptr) Variable Function - 452(param): 22(ptr) Variable Function - 457(param): 22(ptr) Variable Function - 462(param): 22(ptr) Variable Function - 366: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59 - 367: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 60 60 12 12 - 365: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 59 14(main) - 369: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 370 370 12 12 - 368: 125(int) Load 267(gl_InvocationID) - 371: 48(bool) IEqual 368 141 - SelectionMerge 373 None - BranchConditional 371 372 373 - 372: Label - 375: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59 - 376: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 377 377 12 12 - 374: 48(bool) FunctionCall 53(frustumCheck() - 378: 48(bool) LogicalNot 374 - SelectionMerge 380 None - BranchConditional 378 379 417 - 379: Label - 392: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59 - 393: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 388 388 12 12 - 391: 389(ptr) AccessChain 385(gl_TessLevelInner) 141 - Store 391 148 - 395: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 396 396 12 12 - 394: 389(ptr) AccessChain 385(gl_TessLevelInner) 128 - Store 394 148 - 406: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 404 404 12 12 - 405: 389(ptr) AccessChain 401(gl_TessLevelOuter) 141 - Store 405 148 - 408: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 409 409 12 12 - 407: 389(ptr) AccessChain 401(gl_TessLevelOuter) 128 - Store 407 148 + 434(param): 22(ptr) Variable Function + 439(param): 22(ptr) Variable Function + 444(param): 22(ptr) Variable Function + 449(param): 22(ptr) Variable Function + 454(param): 22(ptr) Variable Function + 459(param): 22(ptr) Variable Function + 464(param): 22(ptr) Variable Function + 469(param): 22(ptr) Variable Function + 367: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59 + 368: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 60 60 12 12 + 366: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 59 14(main) + 370: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 371 371 12 12 + 369: 125(int) Load 267(gl_InvocationID) + 372: 48(bool) IEqual 369 141 + SelectionMerge 374 None + BranchConditional 372 373 374 + 373: Label + 378: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 375 + 379: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 376 376 12 12 + 377: 48(bool) FunctionCall 53(frustumCheck() + 380: 48(bool) LogicalNot 377 + SelectionMerge 382 None + BranchConditional 380 381 421 + 381: Label + 396: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 383 + 397: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 384 384 12 12 + 395: 393(ptr) AccessChain 390(gl_TessLevelInner) 141 + Store 395 148 + 399: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 400 400 12 12 + 398: 393(ptr) AccessChain 390(gl_TessLevelInner) 128 + Store 398 148 + 410: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 408 408 12 12 + 409: 393(ptr) AccessChain 405(gl_TessLevelOuter) 141 + Store 409 148 412: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 413 413 12 12 - 411: 389(ptr) AccessChain 401(gl_TessLevelOuter) 410 + 411: 393(ptr) AccessChain 405(gl_TessLevelOuter) 128 Store 411 148 - 415: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 416 416 12 12 - 414: 389(ptr) AccessChain 401(gl_TessLevelOuter) 336 - Store 414 148 - Branch 380 - 417: Label - 419: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59 - 420: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 421 421 12 12 - 418: 217(ptr) AccessChain 122(ubo) 222 - 422: 16(float) Load 418 - 423: 48(bool) FOrdGreaterThan 422 148 - SelectionMerge 425 None - BranchConditional 423 424 483 - 424: Label - 428: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59 - 429: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 430 430 12 12 - 427: 271(ptr) AccessChain 262(gl_in) 336 141 - 431: 19(fvec4) Load 427 - Store 426(param) 431 - 433: 271(ptr) AccessChain 262(gl_in) 141 141 - 434: 19(fvec4) Load 433 - Store 432(param) 434 - 435: 16(float) FunctionCall 29(screenSpaceTessFactor(vf4;vf4;) 426(param) 432(param) - 436: 389(ptr) AccessChain 401(gl_TessLevelOuter) 141 - Store 436 435 - 439: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 440 440 12 12 - 438: 271(ptr) AccessChain 262(gl_in) 141 141 - 441: 19(fvec4) Load 438 - Store 437(param) 441 - 443: 271(ptr) AccessChain 262(gl_in) 128 141 - 444: 19(fvec4) Load 443 - Store 442(param) 444 - 445: 16(float) FunctionCall 29(screenSpaceTessFactor(vf4;vf4;) 437(param) 442(param) - 446: 389(ptr) AccessChain 401(gl_TessLevelOuter) 128 - Store 446 445 - 449: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 450 450 12 12 - 448: 271(ptr) AccessChain 262(gl_in) 128 141 - 451: 19(fvec4) Load 448 - Store 447(param) 451 - 453: 271(ptr) AccessChain 262(gl_in) 410 141 - 454: 19(fvec4) Load 453 - Store 452(param) 454 - 455: 16(float) FunctionCall 29(screenSpaceTessFactor(vf4;vf4;) 447(param) 452(param) - 456: 389(ptr) AccessChain 401(gl_TessLevelOuter) 410 - Store 456 455 - 459: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 460 460 12 12 - 458: 271(ptr) AccessChain 262(gl_in) 410 141 - 461: 19(fvec4) Load 458 - Store 457(param) 461 - 463: 271(ptr) AccessChain 262(gl_in) 336 141 - 464: 19(fvec4) Load 463 - Store 462(param) 464 - 465: 16(float) FunctionCall 29(screenSpaceTessFactor(vf4;vf4;) 457(param) 462(param) - 466: 389(ptr) AccessChain 401(gl_TessLevelOuter) 336 - Store 466 465 - 468: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 469 469 12 12 - 467: 389(ptr) AccessChain 401(gl_TessLevelOuter) 141 - 470: 16(float) Load 467 - 471: 389(ptr) AccessChain 401(gl_TessLevelOuter) 336 - 472: 16(float) Load 471 - 473: 16(float) ExtInst 3(GLSL.std.450) 46(FMix) 470 472 68 - 474: 389(ptr) AccessChain 385(gl_TessLevelInner) 141 - Store 474 473 - 476: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 477 477 12 12 - 475: 389(ptr) AccessChain 401(gl_TessLevelOuter) 410 - 478: 16(float) Load 475 - 479: 389(ptr) AccessChain 401(gl_TessLevelOuter) 128 - 480: 16(float) Load 479 - 481: 16(float) ExtInst 3(GLSL.std.450) 46(FMix) 478 480 68 - 482: 389(ptr) AccessChain 385(gl_TessLevelInner) 128 - Store 482 481 - Branch 425 - 483: Label - 485: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59 - 486: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 487 487 12 12 - 484: 389(ptr) AccessChain 385(gl_TessLevelInner) 141 - Store 484 226 - 489: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 490 490 12 12 - 488: 389(ptr) AccessChain 385(gl_TessLevelInner) 128 - Store 488 226 - 492: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 493 493 12 12 - 491: 389(ptr) AccessChain 401(gl_TessLevelOuter) 141 - Store 491 226 - 495: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 496 496 12 12 - 494: 389(ptr) AccessChain 401(gl_TessLevelOuter) 128 - Store 494 226 - 498: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 499 499 12 12 - 497: 389(ptr) AccessChain 401(gl_TessLevelOuter) 410 - Store 497 226 - 501: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 502 502 12 12 - 500: 389(ptr) AccessChain 401(gl_TessLevelOuter) 336 - Store 500 226 - Branch 425 - 425: Label - Branch 380 - 380: Label - Branch 373 - 373: Label - 520: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59 - 521: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 511 511 12 12 - 519: 125(int) Load 267(gl_InvocationID) - 522: 125(int) Load 267(gl_InvocationID) - 523: 271(ptr) AccessChain 262(gl_in) 522 141 - 524: 19(fvec4) Load 523 - 527: 525(ptr) AccessChain 516(gl_out) 519 141 - Store 527 524 - 537: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 535 535 12 12 - 536: 125(int) Load 267(gl_InvocationID) - 545: 125(int) Load 267(gl_InvocationID) - 548: 546(ptr) AccessChain 542(inNormal) 545 - 549: 146(fvec3) Load 548 - 552: 550(ptr) AccessChain 532(outNormal) 536 - Store 552 549 - 562: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 560 560 12 12 - 561: 125(int) Load 267(gl_InvocationID) - 563: 125(int) Load 267(gl_InvocationID) - 564: 299(ptr) AccessChain 296(inUV) 563 - 565: 97(fvec2) Load 564 - 568: 566(ptr) AccessChain 557(outUV) 561 - Store 568 565 - 569: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 570 570 12 12 + 416: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 417 417 12 12 + 415: 393(ptr) AccessChain 405(gl_TessLevelOuter) 414 + Store 415 148 + 419: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 420 420 12 12 + 418: 393(ptr) AccessChain 405(gl_TessLevelOuter) 336 + Store 418 148 + Branch 382 + 421: Label + 425: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 422 + 426: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 423 423 12 12 + 424: 217(ptr) AccessChain 122(ubo) 222 + 427: 16(float) Load 424 + 428: 48(bool) FOrdGreaterThan 427 148 + SelectionMerge 430 None + BranchConditional 428 429 490 + 429: Label + 436: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 431 + 437: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 432 432 12 12 + 435: 271(ptr) AccessChain 262(gl_in) 336 141 + 438: 19(fvec4) Load 435 + Store 434(param) 438 + 440: 271(ptr) AccessChain 262(gl_in) 141 141 + 441: 19(fvec4) Load 440 + Store 439(param) 441 + 442: 16(float) FunctionCall 29(screenSpaceTessFactor(vf4;vf4;) 434(param) 439(param) + 443: 393(ptr) AccessChain 405(gl_TessLevelOuter) 141 + Store 443 442 + 446: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 447 447 12 12 + 445: 271(ptr) AccessChain 262(gl_in) 141 141 + 448: 19(fvec4) Load 445 + Store 444(param) 448 + 450: 271(ptr) AccessChain 262(gl_in) 128 141 + 451: 19(fvec4) Load 450 + Store 449(param) 451 + 452: 16(float) FunctionCall 29(screenSpaceTessFactor(vf4;vf4;) 444(param) 449(param) + 453: 393(ptr) AccessChain 405(gl_TessLevelOuter) 128 + Store 453 452 + 456: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 457 457 12 12 + 455: 271(ptr) AccessChain 262(gl_in) 128 141 + 458: 19(fvec4) Load 455 + Store 454(param) 458 + 460: 271(ptr) AccessChain 262(gl_in) 414 141 + 461: 19(fvec4) Load 460 + Store 459(param) 461 + 462: 16(float) FunctionCall 29(screenSpaceTessFactor(vf4;vf4;) 454(param) 459(param) + 463: 393(ptr) AccessChain 405(gl_TessLevelOuter) 414 + Store 463 462 + 466: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 467 467 12 12 + 465: 271(ptr) AccessChain 262(gl_in) 414 141 + 468: 19(fvec4) Load 465 + Store 464(param) 468 + 470: 271(ptr) AccessChain 262(gl_in) 336 141 + 471: 19(fvec4) Load 470 + Store 469(param) 471 + 472: 16(float) FunctionCall 29(screenSpaceTessFactor(vf4;vf4;) 464(param) 469(param) + 473: 393(ptr) AccessChain 405(gl_TessLevelOuter) 336 + Store 473 472 + 475: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 476 476 12 12 + 474: 393(ptr) AccessChain 405(gl_TessLevelOuter) 141 + 477: 16(float) Load 474 + 478: 393(ptr) AccessChain 405(gl_TessLevelOuter) 336 + 479: 16(float) Load 478 + 480: 16(float) ExtInst 3(GLSL.std.450) 46(FMix) 477 479 68 + 481: 393(ptr) AccessChain 390(gl_TessLevelInner) 141 + Store 481 480 + 483: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 484 484 12 12 + 482: 393(ptr) AccessChain 405(gl_TessLevelOuter) 414 + 485: 16(float) Load 482 + 486: 393(ptr) AccessChain 405(gl_TessLevelOuter) 128 + 487: 16(float) Load 486 + 488: 16(float) ExtInst 3(GLSL.std.450) 46(FMix) 485 487 68 + 489: 393(ptr) AccessChain 390(gl_TessLevelInner) 128 + Store 489 488 + Branch 430 + 490: Label + 494: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 491 + 495: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 492 492 12 12 + 493: 393(ptr) AccessChain 390(gl_TessLevelInner) 141 + Store 493 226 + 497: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 498 498 12 12 + 496: 393(ptr) AccessChain 390(gl_TessLevelInner) 128 + Store 496 226 + 500: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 501 501 12 12 + 499: 393(ptr) AccessChain 405(gl_TessLevelOuter) 141 + Store 499 226 + 503: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 504 504 12 12 + 502: 393(ptr) AccessChain 405(gl_TessLevelOuter) 128 + Store 502 226 + 506: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 507 507 12 12 + 505: 393(ptr) AccessChain 405(gl_TessLevelOuter) 414 + Store 505 226 + 509: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 510 510 12 12 + 508: 393(ptr) AccessChain 405(gl_TessLevelOuter) 336 + Store 508 226 + Branch 430 + 430: Label + Branch 382 + 382: Label + Branch 374 + 374: Label + 528: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 59 + 529: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 519 519 12 12 + 527: 125(int) Load 267(gl_InvocationID) + 530: 125(int) Load 267(gl_InvocationID) + 531: 271(ptr) AccessChain 262(gl_in) 530 141 + 532: 19(fvec4) Load 531 + 535: 533(ptr) AccessChain 524(gl_out) 527 141 + Store 535 532 + 545: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 543 543 12 12 + 544: 125(int) Load 267(gl_InvocationID) + 553: 125(int) Load 267(gl_InvocationID) + 556: 554(ptr) AccessChain 550(inNormal) 553 + 557: 146(fvec3) Load 556 + 560: 558(ptr) AccessChain 540(outNormal) 544 + Store 560 557 + 570: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 568 568 12 12 + 569: 125(int) Load 267(gl_InvocationID) + 571: 125(int) Load 267(gl_InvocationID) + 572: 299(ptr) AccessChain 296(inUV) 571 + 573: 97(fvec2) Load 572 + 576: 574(ptr) AccessChain 565(outUV) 569 + Store 576 573 + 577: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 578 578 12 12 Return FunctionEnd 29(screenSpaceTessFactor(vf4;vf4;): 16(float) Function None 25 @@ -856,20 +864,20 @@ void main() SelectionMerge 347 None BranchConditional 345 346 347 346: Label - 349: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 56 - 350: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 351 351 12 12 - ReturnValue 348 + 351: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 348 + 352: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 349 349 12 12 + ReturnValue 350 347: Label Branch 324 324: Label - 354: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 56 - 355: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 318 318 12 12 - 353: 125(int) Load 315(i) - 356: 125(int) IAdd 353 128 - Store 315(i) 356 + 355: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 56 + 356: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 318 318 12 12 + 354: 125(int) Load 315(i) + 357: 125(int) IAdd 354 128 + Store 315(i) 357 Branch 321 323: Label - 357: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 56 - 358: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 359 359 12 12 + 358: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 56 + 359: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 33 360 360 12 12 ReturnValue 94 FunctionEnd diff --git a/Test/baseResults/spv.debuginfo.hlsl.comp.out b/Test/baseResults/spv.debuginfo.hlsl.comp.out index e6fbf123..107c848b 100644 --- a/Test/baseResults/spv.debuginfo.hlsl.comp.out +++ b/Test/baseResults/spv.debuginfo.hlsl.comp.out @@ -1,16 +1,16 @@ spv.debuginfo.hlsl.comp // Module Version 10000 // Generated by (magic number): 8000b -// Id's are bound by 968 +// Id's are bound by 992 Capability Shader Extension "SPV_KHR_non_semantic_info" 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" 3: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 - EntryPoint GLCompute 6 "main" 963 + EntryPoint GLCompute 6 "main" 987 ExecutionMode 6 LocalSize 10 10 1 - 2: String "" + 2: String "spv.debuginfo.hlsl.comp" 9: String "float" 12: String "uint" 32: String "springForce" @@ -22,40 +22,225 @@ spv.debuginfo.hlsl.comp // OpModuleProcessed keep-uncalled // OpModuleProcessed hlsl-offsets #line 1 +/* +The MIT License (MIT) + +Copyright (c) 2022 Google LLC +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. +*/ + +struct Particle { + float4 pos; + float4 vel; + float4 uv; + float4 normal; + float pinned; +}; + +[[vk::binding(0)]] +StructuredBuffer particleIn; +[[vk::binding(1)]] +RWStructuredBuffer particleOut; + +struct UBO +{ + float deltaT; + float particleMass; + float springStiffness; + float damping; + float restDistH; + float restDistV; + float restDistD; + float sphereRadius; + float4 spherePos; + float4 gravity; + int2 particleCount; +}; + +cbuffer ubo : register(b2) +{ + UBO params; +}; + +#ifdef GLSLANG +layout ( push_constant ) cbuffer PushConstants +{ + uint calculateNormals; +} pushConstants; +#else +struct PushConstants +{ + uint calculateNormals; +}; + +[[vk::push_constant]] +PushConstants pushConstants; +#endif + +float3 springForce(float3 p0, float3 p1, float restDist) +{ + float3 dist = p0 - p1; + return normalize(dist) * params.springStiffness * (length(dist) - restDist); +} + +[numthreads(10, 10, 1)] +void main(uint3 id : SV_DispatchThreadID) +{ + uint index = id.y * params.particleCount.x + id.x; + if (index > params.particleCount.x * params.particleCount.y) + return; + + // Pinned? + if (particleIn[index].pinned == 1.0) { + particleOut[index].pos = particleOut[index].pos; + particleOut[index].vel = float4(0, 0, 0, 0); + return; + } + + // Initial force from gravity + float3 force = params.gravity.xyz * params.particleMass; + + float3 pos = particleIn[index].pos.xyz; + float3 vel = particleIn[index].vel.xyz; + + // Spring forces from neighboring particles + // left + if (id.x > 0) { + force += springForce(particleIn[index-1].pos.xyz, pos, params.restDistH); + } + // right + if (id.x < params.particleCount.x - 1) { + force += springForce(particleIn[index + 1].pos.xyz, pos, params.restDistH); + } + // upper + if (id.y < params.particleCount.y - 1) { + force += springForce(particleIn[index + params.particleCount.x].pos.xyz, pos, params.restDistV); + } + // lower + if (id.y > 0) { + force += springForce(particleIn[index - params.particleCount.x].pos.xyz, pos, params.restDistV); + } + // upper-left + if ((id.x > 0) && (id.y < params.particleCount.y - 1)) { + force += springForce(particleIn[index + params.particleCount.x - 1].pos.xyz, pos, params.restDistD); + } + // lower-left + if ((id.x > 0) && (id.y > 0)) { + force += springForce(particleIn[index - params.particleCount.x - 1].pos.xyz, pos, params.restDistD); + } + // upper-right + if ((id.x < params.particleCount.x - 1) && (id.y < params.particleCount.y - 1)) { + force += springForce(particleIn[index + params.particleCount.x + 1].pos.xyz, pos, params.restDistD); + } + // lower-right + if ((id.x < params.particleCount.x - 1) && (id.y > 0)) { + force += springForce(particleIn[index - params.particleCount.x + 1].pos.xyz, pos, params.restDistD); + } + + force += (-params.damping * vel); + + // Integrate + float3 f = force * (1.0 / params.particleMass); + particleOut[index].pos = float4(pos + vel * params.deltaT + 0.5 * f * params.deltaT * params.deltaT, 1.0); + particleOut[index].vel = float4(vel + f * params.deltaT, 0.0); + + // Sphere collision + float3 sphereDist = particleOut[index].pos.xyz - params.spherePos.xyz; + if (length(sphereDist) < params.sphereRadius + 0.01) { + // If the particle is inside the sphere, push it to the outer radius + particleOut[index].pos.xyz = params.spherePos.xyz + normalize(sphereDist) * (params.sphereRadius + 0.01); + // Cancel out velocity + particleOut[index].vel = float4(0, 0, 0, 0); + } + + // Normals + if (pushConstants.calculateNormals == 1) { + float3 normal = float3(0, 0, 0); + float3 a, b, c; + if (id.y > 0) { + if (id.x > 0) { + a = particleIn[index - 1].pos.xyz - pos; + b = particleIn[index - params.particleCount.x - 1].pos.xyz - pos; + c = particleIn[index - params.particleCount.x].pos.xyz - pos; + normal += cross(a,b) + cross(b,c); + } + if (id.x < params.particleCount.x - 1) { + a = particleIn[index - params.particleCount.x].pos.xyz - pos; + b = particleIn[index - params.particleCount.x + 1].pos.xyz - pos; + c = particleIn[index + 1].pos.xyz - pos; + normal += cross(a,b) + cross(b,c); + } + } + if (id.y < params.particleCount.y - 1) { + if (id.x > 0) { + a = particleIn[index + params.particleCount.x].pos.xyz - pos; + b = particleIn[index + params.particleCount.x - 1].pos.xyz - pos; + c = particleIn[index - 1].pos.xyz - pos; + normal += cross(a,b) + cross(b,c); + } + if (id.x < params.particleCount.x - 1) { + a = particleIn[index + 1].pos.xyz - pos; + b = particleIn[index + params.particleCount.x + 1].pos.xyz - pos; + c = particleIn[index + params.particleCount.x].pos.xyz - pos; + normal += cross(a,b) + cross(b,c); + } + } + particleOut[index].normal = float4(normalize(normal), 0.0f); + } +} " 42: String "p0" 48: String "p1" 52: String "restDist" 63: String "@main" 67: String "id" - 74: String "dist" - 88: String "int" - 94: String "sphereRadius" - 105: String "gravity" - 110: String "particleCount" - 113: String "UBO" - 116: String "params" - 120: String "ubo" - 147: String "index" - 173: String "bool" - 184: String "normal" - 191: String "pinned" - 195: String "Particle" - 201: String "@data" - 205: String "particleIn" - 226: String "particleOut" - 253: String "force" - 267: String "pos" - 277: String "vel" - 561: String "f" - 610: String "sphereDist" - 661: String "calculateNormals" - 665: String "PushConstants" - 669: String "pushConstants" - 672: String "$Global" - 710: String "a" - 724: String "b" - 741: String "c" + 75: String "dist" + 90: String "int" + 96: String "sphereRadius" + 107: String "gravity" + 112: String "particleCount" + 115: String "UBO" + 118: String "params" + 122: String "ubo" + 127: String "" + 151: String "index" + 178: String "bool" + 189: String "normal" + 196: String "pinned" + 200: String "Particle" + 206: String "@data" + 210: String "particleIn" + 232: String "particleOut" + 259: String "force" + 273: String "pos" + 283: String "vel" + 575: String "f" + 624: String "sphereDist" + 676: String "calculateNormals" + 680: String "PushConstants" + 684: String "pushConstants" + 687: String "$Global" + 711: String "a" + 717: String "b" + 721: String "c" Name 6 "main" Name 30 "springForce(vf3;vf3;f1;" Name 27 "p0" @@ -63,114 +248,114 @@ spv.debuginfo.hlsl.comp Name 29 "restDist" Name 61 "@main(vu3;" Name 60 "id" - Name 72 "dist" - Name 92 "UBO" - MemberName 92(UBO) 0 "deltaT" - MemberName 92(UBO) 1 "particleMass" - MemberName 92(UBO) 2 "springStiffness" - MemberName 92(UBO) 3 "damping" - MemberName 92(UBO) 4 "restDistH" - MemberName 92(UBO) 5 "restDistV" - MemberName 92(UBO) 6 "restDistD" - MemberName 92(UBO) 7 "sphereRadius" - MemberName 92(UBO) 8 "spherePos" - MemberName 92(UBO) 9 "gravity" - MemberName 92(UBO) 10 "particleCount" - Name 114 "ubo" - MemberName 114(ubo) 0 "params" - Name 123 "" - Name 145 "index" - Name 182 "Particle" - MemberName 182(Particle) 0 "pos" - MemberName 182(Particle) 1 "vel" - MemberName 182(Particle) 2 "uv" - MemberName 182(Particle) 3 "normal" - MemberName 182(Particle) 4 "pinned" - Name 199 "particleIn" - MemberName 199(particleIn) 0 "@data" - Name 208 "particleIn" - Name 222 "particleOut" - MemberName 222(particleOut) 0 "@data" - Name 230 "particleOut" - Name 251 "force" - Name 265 "pos" - Name 275 "vel" - Name 297 "param" - Name 301 "param" - Name 303 "param" - Name 326 "param" - Name 330 "param" - Name 332 "param" - Name 359 "param" - Name 363 "param" - Name 365 "param" - Name 387 "param" - Name 391 "param" - Name 393 "param" - Name 425 "param" - Name 429 "param" - Name 431 "param" - Name 458 "param" - Name 462 "param" - Name 464 "param" - Name 499 "param" - Name 503 "param" - Name 505 "param" - Name 536 "param" - Name 540 "param" - Name 542 "param" - Name 559 "f" - Name 608 "sphereDist" - Name 659 "PushConstants" - MemberName 659(PushConstants) 0 "calculateNormals" - Name 667 "$Global" - MemberName 667($Global) 0 "pushConstants" - Name 675 "" - Name 686 "normal" - Name 708 "a" - Name 722 "b" - Name 739 "c" - Name 961 "id" - Name 963 "id" - Name 965 "param" - MemberDecorate 92(UBO) 0 Offset 0 - MemberDecorate 92(UBO) 1 Offset 4 - MemberDecorate 92(UBO) 2 Offset 8 - MemberDecorate 92(UBO) 3 Offset 12 - MemberDecorate 92(UBO) 4 Offset 16 - MemberDecorate 92(UBO) 5 Offset 20 - MemberDecorate 92(UBO) 6 Offset 24 - MemberDecorate 92(UBO) 7 Offset 28 - MemberDecorate 92(UBO) 8 Offset 32 - MemberDecorate 92(UBO) 9 Offset 48 - MemberDecorate 92(UBO) 10 Offset 64 - Decorate 114(ubo) Block - MemberDecorate 114(ubo) 0 Offset 0 - Decorate 123 Binding 2 - Decorate 123 DescriptorSet 0 - MemberDecorate 182(Particle) 0 Offset 0 - MemberDecorate 182(Particle) 1 Offset 16 - MemberDecorate 182(Particle) 2 Offset 32 - MemberDecorate 182(Particle) 3 Offset 48 - MemberDecorate 182(Particle) 4 Offset 64 - Decorate 197 ArrayStride 80 - Decorate 199(particleIn) BufferBlock - MemberDecorate 199(particleIn) 0 NonWritable - MemberDecorate 199(particleIn) 0 Offset 0 - Decorate 208(particleIn) NonWritable - Decorate 208(particleIn) Binding 0 - Decorate 208(particleIn) DescriptorSet 0 - Decorate 220 ArrayStride 80 - Decorate 222(particleOut) BufferBlock - MemberDecorate 222(particleOut) 0 Offset 0 - Decorate 230(particleOut) Binding 1 - Decorate 230(particleOut) DescriptorSet 0 - MemberDecorate 659(PushConstants) 0 Offset 0 - Decorate 667($Global) Block - MemberDecorate 667($Global) 0 Offset 0 - Decorate 675 Binding 3 - Decorate 675 DescriptorSet 0 - Decorate 963(id) BuiltIn GlobalInvocationId + Name 73 "dist" + Name 94 "UBO" + MemberName 94(UBO) 0 "deltaT" + MemberName 94(UBO) 1 "particleMass" + MemberName 94(UBO) 2 "springStiffness" + MemberName 94(UBO) 3 "damping" + MemberName 94(UBO) 4 "restDistH" + MemberName 94(UBO) 5 "restDistV" + MemberName 94(UBO) 6 "restDistD" + MemberName 94(UBO) 7 "sphereRadius" + MemberName 94(UBO) 8 "spherePos" + MemberName 94(UBO) 9 "gravity" + MemberName 94(UBO) 10 "particleCount" + Name 116 "ubo" + MemberName 116(ubo) 0 "params" + Name 125 "" + Name 149 "index" + Name 187 "Particle" + MemberName 187(Particle) 0 "pos" + MemberName 187(Particle) 1 "vel" + MemberName 187(Particle) 2 "uv" + MemberName 187(Particle) 3 "normal" + MemberName 187(Particle) 4 "pinned" + Name 204 "particleIn" + MemberName 204(particleIn) 0 "@data" + Name 213 "particleIn" + Name 228 "particleOut" + MemberName 228(particleOut) 0 "@data" + Name 236 "particleOut" + Name 257 "force" + Name 271 "pos" + Name 281 "vel" + Name 304 "param" + Name 308 "param" + Name 310 "param" + Name 334 "param" + Name 338 "param" + Name 340 "param" + Name 368 "param" + Name 372 "param" + Name 374 "param" + Name 397 "param" + Name 401 "param" + Name 403 "param" + Name 436 "param" + Name 440 "param" + Name 442 "param" + Name 470 "param" + Name 474 "param" + Name 476 "param" + Name 512 "param" + Name 516 "param" + Name 518 "param" + Name 550 "param" + Name 554 "param" + Name 556 "param" + Name 573 "f" + Name 622 "sphereDist" + Name 674 "PushConstants" + MemberName 674(PushConstants) 0 "calculateNormals" + Name 682 "$Global" + MemberName 682($Global) 0 "pushConstants" + Name 690 "" + Name 702 "normal" + Name 709 "a" + Name 715 "b" + Name 719 "c" + Name 985 "id" + Name 987 "id" + Name 989 "param" + MemberDecorate 94(UBO) 0 Offset 0 + MemberDecorate 94(UBO) 1 Offset 4 + MemberDecorate 94(UBO) 2 Offset 8 + MemberDecorate 94(UBO) 3 Offset 12 + MemberDecorate 94(UBO) 4 Offset 16 + MemberDecorate 94(UBO) 5 Offset 20 + MemberDecorate 94(UBO) 6 Offset 24 + MemberDecorate 94(UBO) 7 Offset 28 + MemberDecorate 94(UBO) 8 Offset 32 + MemberDecorate 94(UBO) 9 Offset 48 + MemberDecorate 94(UBO) 10 Offset 64 + Decorate 116(ubo) Block + MemberDecorate 116(ubo) 0 Offset 0 + Decorate 125 Binding 2 + Decorate 125 DescriptorSet 0 + MemberDecorate 187(Particle) 0 Offset 0 + MemberDecorate 187(Particle) 1 Offset 16 + MemberDecorate 187(Particle) 2 Offset 32 + MemberDecorate 187(Particle) 3 Offset 48 + MemberDecorate 187(Particle) 4 Offset 64 + Decorate 202 ArrayStride 80 + Decorate 204(particleIn) BufferBlock + MemberDecorate 204(particleIn) 0 NonWritable + MemberDecorate 204(particleIn) 0 Offset 0 + Decorate 213(particleIn) NonWritable + Decorate 213(particleIn) Binding 0 + Decorate 213(particleIn) DescriptorSet 0 + Decorate 226 ArrayStride 80 + Decorate 228(particleOut) BufferBlock + MemberDecorate 228(particleOut) 0 Offset 0 + Decorate 236(particleOut) Binding 1 + Decorate 236(particleOut) DescriptorSet 0 + MemberDecorate 674(PushConstants) 0 Offset 0 + Decorate 682($Global) Block + MemberDecorate 682($Global) 0 Offset 0 + Decorate 690 Binding 3 + Decorate 690 DescriptorSet 0 + Decorate 987(id) BuiltIn GlobalInvocationId 4: TypeVoid 5: TypeFunction 4 8: TypeFloat 32 @@ -211,197 +396,217 @@ spv.debuginfo.hlsl.comp 65: 11(int) Constant 82 64: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 63 59 34 65 16 37 63 17 65 66: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 67 55 34 65 16 64 39 38 - 75: 11(int) Constant 76 - 73: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 74 19 34 75 16 33 39 - 83: 11(int) Constant 77 - 85: TypeVector 8(float) 4 - 86: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 39 - 87: TypeInt 32 1 - 89: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 88 14 39 16 - 90: TypeVector 87(int) 2 - 91: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 89 49 - 92(UBO): TypeStruct 8(float) 8(float) 8(float) 8(float) 8(float) 8(float) 8(float) 8(float) 85(fvec4) 85(fvec4) 90(ivec2) - 95: 11(int) Constant 48 - 96: 11(int) Constant 20 - 93: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 94 10 34 95 96 16 16 17 - 97: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 94 10 34 95 96 16 16 17 - 98: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 94 10 34 95 96 16 16 17 - 99: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 94 10 34 95 96 16 16 17 - 100: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 94 10 34 95 96 16 16 17 - 101: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 94 10 34 95 96 16 16 17 - 102: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 94 10 34 95 96 16 16 17 - 103: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 94 10 34 95 96 16 16 17 - 106: 11(int) Constant 50 - 107: 11(int) Constant 16 - 104: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 105 86 34 106 107 16 16 17 - 108: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 105 86 34 106 107 16 16 17 - 111: 11(int) Constant 51 - 109: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 110 91 34 111 96 16 16 17 - 112: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 113 38 34 83 16 37 113 16 17 93 97 98 99 100 101 102 103 104 108 109 - 114(ubo): TypeStruct 92(UBO) - 117: 11(int) Constant 56 - 118: 11(int) Constant 12 - 115: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 116 112 34 117 118 16 16 17 - 119: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 120 38 34 83 16 37 120 16 17 115 - 121: TypePointer Uniform 114(ubo) - 122: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 119 49 16 - 123: 121(ptr) Variable Uniform - 125: 11(int) Constant 8 - 124: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 2 119 34 83 16 37 2 123 125 - 126: 87(int) Constant 0 - 127: 87(int) Constant 2 - 128: TypePointer Uniform 8(float) - 129: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 49 16 - 143: TypePointer Function 11(int) - 144: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 13 21 16 - 148: 11(int) Constant 83 - 146: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 147 13 34 148 16 64 39 - 153: 87(int) Constant 10 - 154: TypePointer Uniform 87(int) - 155: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 89 49 16 - 165: 11(int) Constant 84 - 172: TypeBool - 174: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 173 14 49 16 - 180: 11(int) Constant 85 - 182(Particle): TypeStruct 85(fvec4) 85(fvec4) 85(fvec4) 85(fvec4) 8(float) - 185: 11(int) Constant 30 - 186: 11(int) Constant 15 - 183: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 184 86 34 185 186 16 16 17 - 187: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 184 86 34 185 186 16 16 17 - 188: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 184 86 34 185 186 16 16 17 - 189: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 184 86 34 185 186 16 16 17 - 192: 11(int) Constant 31 - 193: 11(int) Constant 14 - 190: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 191 10 34 192 193 16 16 17 - 196: 11(int) Constant 88 - 194: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 195 38 34 196 16 37 195 16 17 183 187 188 189 190 - 197: TypeRuntimeArray 182(Particle) - 198: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 194 16 - 199(particleIn): TypeStruct 197 - 202: 11(int) Constant 35 - 203: 11(int) Constant 28 - 200: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 201 198 34 202 203 16 16 17 - 204: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 205 38 34 196 16 37 205 16 17 200 - 206: TypePointer Uniform 199(particleIn) - 207: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 204 49 16 - 208(particleIn): 206(ptr) Variable Uniform - 209: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 205 204 34 196 16 37 205 208(particleIn) 125 - 213: 87(int) Constant 4 - 216: 8(float) Constant 1065353216 - 220: TypeRuntimeArray 182(Particle) - 221: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 194 16 -222(particleOut): TypeStruct 220 - 224: 11(int) Constant 37 - 223: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 201 221 34 224 185 16 16 17 - 227: 11(int) Constant 89 - 225: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 226 38 34 227 16 37 226 16 17 223 - 228: TypePointer Uniform 222(particleOut) - 229: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 225 49 16 -230(particleOut): 228(ptr) Variable Uniform - 231: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 226 225 34 227 16 37 226 230(particleOut) 125 - 236: TypePointer Uniform 85(fvec4) - 237: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 86 49 16 - 243: 11(int) Constant 90 - 244: 87(int) Constant 1 - 245: 8(float) Constant 0 - 246: 85(fvec4) ConstantComposite 245 245 245 245 - 249: 11(int) Constant 91 - 254: 11(int) Constant 95 - 252: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 253 19 34 254 16 64 39 - 258: 87(int) Constant 9 - 268: 11(int) Constant 97 - 266: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 267 19 34 268 16 64 39 - 278: 11(int) Constant 98 - 276: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 277 19 34 278 16 64 39 - 287: 11(int) Constant 102 - 295: 11(int) Constant 103 - 312: 11(int) Constant 106 - 324: 11(int) Constant 107 - 341: 11(int) Constant 110 - 353: 11(int) Constant 111 - 358: 87(int) Constant 5 - 374: 11(int) Constant 114 - 382: 11(int) Constant 115 - 402: 11(int) Constant 118 - 418: 11(int) Constant 119 - 424: 87(int) Constant 6 - 440: 11(int) Constant 122 - 452: 11(int) Constant 123 - 473: 11(int) Constant 126 - 493: 11(int) Constant 127 - 514: 11(int) Constant 130 - 530: 11(int) Constant 131 - 548: 87(int) Constant 3 - 552: 11(int) Constant 134 - 562: 11(int) Constant 137 - 560: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 561 19 34 562 16 64 39 - 572: 11(int) Constant 138 - 579: 8(float) Constant 1056964608 - 596: 11(int) Constant 139 - 611: 11(int) Constant 142 - 609: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 610 19 34 611 16 64 39 - 618: 87(int) Constant 8 - 625: 11(int) Constant 143 - 627: 87(int) Constant 7 - 630: 8(float) Constant 1008981770 - 638: 11(int) Constant 145 - 657: 11(int) Constant 147 -659(PushConstants): TypeStruct 11(int) - 662: 11(int) Constant 67 - 663: 11(int) Constant 23 - 660: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 661 13 34 662 663 16 16 17 - 666: 11(int) Constant 151 - 664: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 665 38 34 666 16 37 665 16 17 660 - 667($Global): TypeStruct 659(PushConstants) - 670: 11(int) Constant 71 - 668: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 669 664 34 670 186 16 16 17 - 671: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 672 38 34 666 16 37 672 16 17 668 - 673: TypePointer Uniform 667($Global) - 674: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 671 49 16 - 675: 673(ptr) Variable Uniform - 676: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 2 671 34 666 16 37 2 675 125 - 677: TypePointer Uniform 11(int) - 678: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 13 49 16 - 688: 11(int) Constant 152 - 687: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 184 19 34 688 16 64 39 - 692: 18(fvec3) ConstantComposite 245 245 245 - 695: 11(int) Constant 154 - 703: 11(int) Constant 155 - 711: 11(int) Constant 156 - 709: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 710 19 34 711 16 64 39 - 725: 11(int) Constant 157 - 723: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 724 19 34 725 16 64 39 - 742: 11(int) Constant 158 - 740: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 741 19 34 742 16 64 39 - 757: 11(int) Constant 159 - 769: 11(int) Constant 161 - 781: 11(int) Constant 162 - 793: 11(int) Constant 163 - 806: 11(int) Constant 164 - 815: 11(int) Constant 165 - 827: 11(int) Constant 168 - 839: 11(int) Constant 169 - 847: 11(int) Constant 170 - 859: 11(int) Constant 171 - 872: 11(int) Constant 172 - 881: 11(int) Constant 173 - 893: 11(int) Constant 175 - 905: 11(int) Constant 176 - 914: 11(int) Constant 177 - 927: 11(int) Constant 178 - 939: 11(int) Constant 179 - 951: 11(int) Constant 182 - 962: TypePointer Input 54(ivec3) - 963(id): 962(ptr) Variable Input + 72: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 33 + 76: 11(int) Constant 76 + 74: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 75 19 34 76 16 72 39 + 85: 11(int) Constant 77 + 87: TypeVector 8(float) 4 + 88: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 39 + 89: TypeInt 32 1 + 91: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 90 14 39 16 + 92: TypeVector 89(int) 2 + 93: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 91 49 + 94(UBO): TypeStruct 8(float) 8(float) 8(float) 8(float) 8(float) 8(float) 8(float) 8(float) 87(fvec4) 87(fvec4) 92(ivec2) + 97: 11(int) Constant 48 + 98: 11(int) Constant 20 + 95: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 96 10 34 97 98 16 16 17 + 99: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 96 10 34 97 98 16 16 17 + 100: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 96 10 34 97 98 16 16 17 + 101: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 96 10 34 97 98 16 16 17 + 102: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 96 10 34 97 98 16 16 17 + 103: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 96 10 34 97 98 16 16 17 + 104: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 96 10 34 97 98 16 16 17 + 105: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 96 10 34 97 98 16 16 17 + 108: 11(int) Constant 50 + 109: 11(int) Constant 16 + 106: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 107 88 34 108 109 16 16 17 + 110: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 107 88 34 108 109 16 16 17 + 113: 11(int) Constant 51 + 111: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 112 93 34 113 98 16 16 17 + 114: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 115 38 34 85 16 37 115 16 17 95 99 100 101 102 103 104 105 106 110 111 + 116(ubo): TypeStruct 94(UBO) + 119: 11(int) Constant 56 + 120: 11(int) Constant 12 + 117: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 118 114 34 119 120 16 16 17 + 121: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 122 38 34 85 16 37 122 16 17 117 + 123: TypePointer Uniform 116(ubo) + 124: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 121 49 16 + 125: 123(ptr) Variable Uniform + 128: 11(int) Constant 8 + 126: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 127 121 34 85 16 37 127 125 128 + 129: 89(int) Constant 0 + 130: 89(int) Constant 2 + 131: TypePointer Uniform 8(float) + 132: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 49 16 + 146: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 64 + 147: TypePointer Function 11(int) + 148: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 13 21 16 + 152: 11(int) Constant 83 + 150: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 151 13 34 152 16 146 39 + 158: 89(int) Constant 10 + 159: TypePointer Uniform 89(int) + 160: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 91 49 16 + 170: 11(int) Constant 84 + 177: TypeBool + 179: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 178 14 49 16 + 185: 11(int) Constant 85 + 187(Particle): TypeStruct 87(fvec4) 87(fvec4) 87(fvec4) 87(fvec4) 8(float) + 190: 11(int) Constant 30 + 191: 11(int) Constant 15 + 188: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 189 88 34 190 191 16 16 17 + 192: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 189 88 34 190 191 16 16 17 + 193: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 189 88 34 190 191 16 16 17 + 194: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 189 88 34 190 191 16 16 17 + 197: 11(int) Constant 31 + 198: 11(int) Constant 14 + 195: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 196 10 34 197 198 16 16 17 + 201: 11(int) Constant 88 + 199: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 200 38 34 201 16 37 200 16 17 188 192 193 194 195 + 202: TypeRuntimeArray 187(Particle) + 203: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 199 16 + 204(particleIn): TypeStruct 202 + 207: 11(int) Constant 35 + 208: 11(int) Constant 28 + 205: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 206 203 34 207 208 16 16 17 + 209: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 210 38 34 201 16 37 210 16 17 205 + 211: TypePointer Uniform 204(particleIn) + 212: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 209 49 16 + 213(particleIn): 211(ptr) Variable Uniform + 214: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 210 209 34 201 16 37 210 213(particleIn) 128 + 218: 89(int) Constant 4 + 221: 8(float) Constant 1065353216 + 225: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 146 + 226: TypeRuntimeArray 187(Particle) + 227: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 199 16 +228(particleOut): TypeStruct 226 + 230: 11(int) Constant 37 + 229: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 206 227 34 230 190 16 16 17 + 233: 11(int) Constant 89 + 231: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 232 38 34 233 16 37 232 16 17 229 + 234: TypePointer Uniform 228(particleOut) + 235: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 231 49 16 +236(particleOut): 234(ptr) Variable Uniform + 237: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 232 231 34 233 16 37 232 236(particleOut) 128 + 242: TypePointer Uniform 87(fvec4) + 243: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 88 49 16 + 249: 11(int) Constant 90 + 250: 89(int) Constant 1 + 251: 8(float) Constant 0 + 252: 87(fvec4) ConstantComposite 251 251 251 251 + 255: 11(int) Constant 91 + 260: 11(int) Constant 95 + 258: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 259 19 34 260 16 146 39 + 264: 89(int) Constant 9 + 274: 11(int) Constant 97 + 272: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 273 19 34 274 16 146 39 + 284: 11(int) Constant 98 + 282: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 283 19 34 284 16 146 39 + 293: 11(int) Constant 102 + 298: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 146 + 302: 11(int) Constant 103 + 319: 11(int) Constant 106 + 328: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 146 + 332: 11(int) Constant 107 + 349: 11(int) Constant 110 + 358: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 146 + 362: 11(int) Constant 111 + 367: 89(int) Constant 5 + 383: 11(int) Constant 114 + 388: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 146 + 392: 11(int) Constant 115 + 412: 11(int) Constant 118 + 425: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 146 + 429: 11(int) Constant 119 + 435: 89(int) Constant 6 + 451: 11(int) Constant 122 + 460: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 146 + 464: 11(int) Constant 123 + 485: 11(int) Constant 126 + 502: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 146 + 506: 11(int) Constant 127 + 527: 11(int) Constant 130 + 540: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 146 + 544: 11(int) Constant 131 + 562: 89(int) Constant 3 + 566: 11(int) Constant 134 + 576: 11(int) Constant 137 + 574: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 575 19 34 576 16 146 39 + 586: 11(int) Constant 138 + 593: 8(float) Constant 1056964608 + 610: 11(int) Constant 139 + 625: 11(int) Constant 142 + 623: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 624 19 34 625 16 146 39 + 632: 89(int) Constant 8 + 639: 11(int) Constant 143 + 641: 89(int) Constant 7 + 644: 8(float) Constant 1008981770 + 649: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 146 + 653: 11(int) Constant 145 + 672: 11(int) Constant 147 +674(PushConstants): TypeStruct 11(int) + 677: 11(int) Constant 67 + 678: 11(int) Constant 23 + 675: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 676 13 34 677 678 16 16 17 + 681: 11(int) Constant 151 + 679: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 680 38 34 681 16 37 680 16 17 675 + 682($Global): TypeStruct 674(PushConstants) + 685: 11(int) Constant 71 + 683: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 684 679 34 685 191 16 16 17 + 686: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 687 38 34 681 16 37 687 16 17 683 + 688: TypePointer Uniform 682($Global) + 689: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 686 49 16 + 690: 688(ptr) Variable Uniform + 691: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 127 686 34 681 16 37 127 690 128 + 692: TypePointer Uniform 11(int) + 693: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 13 49 16 + 701: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 146 + 704: 11(int) Constant 152 + 703: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 189 19 34 704 16 701 39 + 708: 18(fvec3) ConstantComposite 251 251 251 + 712: 11(int) Constant 153 + 710: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 711 19 34 712 16 701 39 + 716: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 717 19 34 712 16 701 39 + 720: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 721 19 34 712 16 701 39 + 725: 11(int) Constant 154 + 730: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 701 + 734: 11(int) Constant 155 + 739: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 730 + 743: 11(int) Constant 156 + 752: 11(int) Constant 157 + 765: 11(int) Constant 158 + 777: 11(int) Constant 159 + 789: 11(int) Constant 161 + 798: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 730 + 802: 11(int) Constant 162 + 814: 11(int) Constant 163 + 827: 11(int) Constant 164 + 836: 11(int) Constant 165 + 848: 11(int) Constant 168 + 857: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 701 + 861: 11(int) Constant 169 + 866: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 857 + 870: 11(int) Constant 170 + 882: 11(int) Constant 171 + 895: 11(int) Constant 172 + 904: 11(int) Constant 173 + 916: 11(int) Constant 175 + 925: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 34 16 16 857 + 929: 11(int) Constant 176 + 938: 11(int) Constant 177 + 951: 11(int) Constant 178 + 963: 11(int) Constant 179 + 975: 11(int) Constant 182 + 986: TypePointer Input 54(ivec3) + 987(id): 986(ptr) Variable Input 6(main): 4 Function None 5 7: Label - 961(id): 56(ptr) Variable Function - 965(param): 56(ptr) Variable Function - 964: 54(ivec3) Load 963(id) - Store 961(id) 964 - 966: 54(ivec3) Load 961(id) - Store 965(param) 966 - 967: 4 FunctionCall 61(@main(vu3;) 965(param) + 985(id): 56(ptr) Variable Function + 989(param): 56(ptr) Variable Function + 988: 54(ivec3) Load 987(id) + Store 985(id) 988 + 990: 54(ivec3) Load 985(id) + Store 989(param) 990 + 991: 4 FunctionCall 61(@main(vu3;) 989(param) Return FunctionEnd 30(springForce(vf3;vf3;f1;): 18(fvec3) Function None 25 @@ -409,814 +614,817 @@ spv.debuginfo.hlsl.comp 28(p1): 20(ptr) FunctionParameter 29(restDist): 23(ptr) FunctionParameter 31: Label - 72(dist): 20(ptr) Variable Function + 73(dist): 20(ptr) Variable Function 45: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 33 46: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 36 36 16 16 43: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 41 27(p0) 44 50: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 47 28(p1) 44 53: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 51 29(restDist) 44 71: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 33 30(springForce(vf3;vf3;f1;) - 77: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 75 75 16 16 - 76: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 73 72(dist) 44 - 78: 18(fvec3) Load 27(p0) - 79: 18(fvec3) Load 28(p1) - 80: 18(fvec3) FSub 78 79 - Store 72(dist) 80 - 82: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 83 83 16 16 - 81: 18(fvec3) Load 72(dist) - 84: 18(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 81 - 130: 128(ptr) AccessChain 123 126 127 - 131: 8(float) Load 130 - 132: 18(fvec3) VectorTimesScalar 84 131 - 133: 18(fvec3) Load 72(dist) - 134: 8(float) ExtInst 3(GLSL.std.450) 66(Length) 133 - 135: 8(float) Load 29(restDist) - 136: 8(float) FSub 134 135 - 137: 18(fvec3) VectorTimesScalar 132 136 - ReturnValue 137 + 78: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 72 + 79: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 76 76 16 16 + 77: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 74 73(dist) 44 + 80: 18(fvec3) Load 27(p0) + 81: 18(fvec3) Load 28(p1) + 82: 18(fvec3) FSub 80 81 + Store 73(dist) 82 + 84: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 85 85 16 16 + 83: 18(fvec3) Load 73(dist) + 86: 18(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 83 + 133: 131(ptr) AccessChain 125 129 130 + 134: 8(float) Load 133 + 135: 18(fvec3) VectorTimesScalar 86 134 + 136: 18(fvec3) Load 73(dist) + 137: 8(float) ExtInst 3(GLSL.std.450) 66(Length) 136 + 138: 8(float) Load 29(restDist) + 139: 8(float) FSub 137 138 + 140: 18(fvec3) VectorTimesScalar 135 139 + ReturnValue 140 FunctionEnd 61(@main(vu3;): 4 Function None 58 60(id): 56(ptr) FunctionParameter 62: Label - 145(index): 143(ptr) Variable Function - 251(force): 20(ptr) Variable Function - 265(pos): 20(ptr) Variable Function - 275(vel): 20(ptr) Variable Function - 297(param): 20(ptr) Variable Function - 301(param): 20(ptr) Variable Function - 303(param): 23(ptr) Variable Function - 326(param): 20(ptr) Variable Function - 330(param): 20(ptr) Variable Function - 332(param): 23(ptr) Variable Function - 359(param): 20(ptr) Variable Function - 363(param): 20(ptr) Variable Function - 365(param): 23(ptr) Variable Function - 387(param): 20(ptr) Variable Function - 391(param): 20(ptr) Variable Function - 393(param): 23(ptr) Variable Function - 425(param): 20(ptr) Variable Function - 429(param): 20(ptr) Variable Function - 431(param): 23(ptr) Variable Function - 458(param): 20(ptr) Variable Function - 462(param): 20(ptr) Variable Function - 464(param): 23(ptr) Variable Function - 499(param): 20(ptr) Variable Function - 503(param): 20(ptr) Variable Function - 505(param): 23(ptr) Variable Function - 536(param): 20(ptr) Variable Function - 540(param): 20(ptr) Variable Function - 542(param): 23(ptr) Variable Function - 559(f): 20(ptr) Variable Function - 608(sphereDist): 20(ptr) Variable Function - 686(normal): 20(ptr) Variable Function - 708(a): 20(ptr) Variable Function - 722(b): 20(ptr) Variable Function - 739(c): 20(ptr) Variable Function + 149(index): 147(ptr) Variable Function + 257(force): 20(ptr) Variable Function + 271(pos): 20(ptr) Variable Function + 281(vel): 20(ptr) Variable Function + 304(param): 20(ptr) Variable Function + 308(param): 20(ptr) Variable Function + 310(param): 23(ptr) Variable Function + 334(param): 20(ptr) Variable Function + 338(param): 20(ptr) Variable Function + 340(param): 23(ptr) Variable Function + 368(param): 20(ptr) Variable Function + 372(param): 20(ptr) Variable Function + 374(param): 23(ptr) Variable Function + 397(param): 20(ptr) Variable Function + 401(param): 20(ptr) Variable Function + 403(param): 23(ptr) Variable Function + 436(param): 20(ptr) Variable Function + 440(param): 20(ptr) Variable Function + 442(param): 23(ptr) Variable Function + 470(param): 20(ptr) Variable Function + 474(param): 20(ptr) Variable Function + 476(param): 23(ptr) Variable Function + 512(param): 20(ptr) Variable Function + 516(param): 20(ptr) Variable Function + 518(param): 23(ptr) Variable Function + 550(param): 20(ptr) Variable Function + 554(param): 20(ptr) Variable Function + 556(param): 23(ptr) Variable Function + 573(f): 20(ptr) Variable Function + 622(sphereDist): 20(ptr) Variable Function + 702(normal): 20(ptr) Variable Function + 709(a): 20(ptr) Variable Function + 715(b): 20(ptr) Variable Function + 719(c): 20(ptr) Variable Function 69: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 70: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 65 65 16 16 68: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 66 60(id) 44 - 142: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 64 61(@main(vu3;) - 150: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 148 148 16 16 - 149: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 146 145(index) 44 - 151: 143(ptr) AccessChain 60(id) 38 - 152: 11(int) Load 151 - 156: 154(ptr) AccessChain 123 126 153 16 - 157: 87(int) Load 156 - 158: 11(int) Bitcast 157 - 159: 11(int) IMul 152 158 - 160: 143(ptr) AccessChain 60(id) 16 - 161: 11(int) Load 160 - 162: 11(int) IAdd 159 161 - Store 145(index) 162 - 164: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 165 165 16 16 - 163: 11(int) Load 145(index) - 166: 154(ptr) AccessChain 123 126 153 16 - 167: 87(int) Load 166 - 168: 154(ptr) AccessChain 123 126 153 38 - 169: 87(int) Load 168 - 170: 87(int) IMul 167 169 - 171: 11(int) Bitcast 170 - 175: 172(bool) UGreaterThan 163 171 - SelectionMerge 177 None - BranchConditional 175 176 177 - 176: Label - 178: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 179: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 180 180 16 16 + 145: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 64 61(@main(vu3;) + 154: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 155: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 152 152 16 16 + 153: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 150 149(index) 44 + 156: 147(ptr) AccessChain 60(id) 38 + 157: 11(int) Load 156 + 161: 159(ptr) AccessChain 125 129 158 16 + 162: 89(int) Load 161 + 163: 11(int) Bitcast 162 + 164: 11(int) IMul 157 163 + 165: 147(ptr) AccessChain 60(id) 16 + 166: 11(int) Load 165 + 167: 11(int) IAdd 164 166 + Store 149(index) 167 + 169: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 170 170 16 16 + 168: 11(int) Load 149(index) + 171: 159(ptr) AccessChain 125 129 158 16 + 172: 89(int) Load 171 + 173: 159(ptr) AccessChain 125 129 158 38 + 174: 89(int) Load 173 + 175: 89(int) IMul 172 174 + 176: 11(int) Bitcast 175 + 180: 177(bool) UGreaterThan 168 176 + SelectionMerge 182 None + BranchConditional 180 181 182 + 181: Label + 183: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 184: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 185 185 16 16 Return - 177: Label - 211: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 212: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 196 196 16 16 - 210: 11(int) Load 145(index) - 214: 128(ptr) AccessChain 208(particleIn) 126 210 213 - 215: 8(float) Load 214 - 217: 172(bool) FOrdEqual 215 216 - SelectionMerge 219 None - BranchConditional 217 218 219 - 218: Label - 233: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 234: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 227 227 16 16 - 232: 11(int) Load 145(index) - 235: 11(int) Load 145(index) - 238: 236(ptr) AccessChain 230(particleOut) 126 235 126 - 239: 85(fvec4) Load 238 - 240: 236(ptr) AccessChain 230(particleOut) 126 232 126 - Store 240 239 - 242: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 243 243 16 16 - 241: 11(int) Load 145(index) - 247: 236(ptr) AccessChain 230(particleOut) 126 241 244 - Store 247 246 + 182: Label + 216: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 217: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 201 201 16 16 + 215: 11(int) Load 149(index) + 219: 131(ptr) AccessChain 213(particleIn) 129 215 218 + 220: 8(float) Load 219 + 222: 177(bool) FOrdEqual 220 221 + SelectionMerge 224 None + BranchConditional 222 223 224 + 223: Label + 239: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 225 + 240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 233 233 16 16 + 238: 11(int) Load 149(index) + 241: 11(int) Load 149(index) + 244: 242(ptr) AccessChain 236(particleOut) 129 241 129 + 245: 87(fvec4) Load 244 + 246: 242(ptr) AccessChain 236(particleOut) 129 238 129 + Store 246 245 248: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 249 249 16 16 + 247: 11(int) Load 149(index) + 253: 242(ptr) AccessChain 236(particleOut) 129 247 250 + Store 253 252 + 254: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 255 255 16 16 Return - 219: Label - 256: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 257: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 254 254 16 16 - 255: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 252 251(force) 44 - 259: 236(ptr) AccessChain 123 126 258 - 260: 85(fvec4) Load 259 - 261: 18(fvec3) VectorShuffle 260 260 0 1 2 - 262: 128(ptr) AccessChain 123 126 244 - 263: 8(float) Load 262 - 264: 18(fvec3) VectorTimesScalar 261 263 - Store 251(force) 264 - 270: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 268 268 16 16 - 269: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 266 265(pos) 44 - 271: 11(int) Load 145(index) - 272: 236(ptr) AccessChain 208(particleIn) 126 271 126 - 273: 85(fvec4) Load 272 - 274: 18(fvec3) VectorShuffle 273 273 0 1 2 - Store 265(pos) 274 - 280: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 278 278 16 16 - 279: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 276 275(vel) 44 - 281: 11(int) Load 145(index) - 282: 236(ptr) AccessChain 208(particleIn) 126 281 244 - 283: 85(fvec4) Load 282 - 284: 18(fvec3) VectorShuffle 283 283 0 1 2 - Store 275(vel) 284 - 286: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 287 287 16 16 - 285: 143(ptr) AccessChain 60(id) 16 - 288: 11(int) Load 285 - 289: 172(bool) UGreaterThan 288 16 - SelectionMerge 291 None - BranchConditional 289 290 291 - 290: Label - 293: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 294: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 295 295 16 16 - 292: 11(int) Load 145(index) - 296: 11(int) ISub 292 38 - 298: 236(ptr) AccessChain 208(particleIn) 126 296 126 - 299: 85(fvec4) Load 298 - 300: 18(fvec3) VectorShuffle 299 299 0 1 2 - Store 297(param) 300 - 302: 18(fvec3) Load 265(pos) - Store 301(param) 302 - 304: 128(ptr) AccessChain 123 126 213 - 305: 8(float) Load 304 - Store 303(param) 305 - 306: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 297(param) 301(param) 303(param) - 307: 18(fvec3) Load 251(force) - 308: 18(fvec3) FAdd 307 306 - Store 251(force) 308 - Branch 291 - 291: Label - 310: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 311: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 312 312 16 16 - 309: 143(ptr) AccessChain 60(id) 16 - 313: 11(int) Load 309 - 314: 154(ptr) AccessChain 123 126 153 16 - 315: 87(int) Load 314 - 316: 87(int) ISub 315 244 - 317: 11(int) Bitcast 316 - 318: 172(bool) ULessThan 313 317 - SelectionMerge 320 None - BranchConditional 318 319 320 - 319: Label - 322: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 323: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 324 324 16 16 - 321: 11(int) Load 145(index) - 325: 11(int) IAdd 321 38 - 327: 236(ptr) AccessChain 208(particleIn) 126 325 126 - 328: 85(fvec4) Load 327 - 329: 18(fvec3) VectorShuffle 328 328 0 1 2 - Store 326(param) 329 - 331: 18(fvec3) Load 265(pos) - Store 330(param) 331 - 333: 128(ptr) AccessChain 123 126 213 - 334: 8(float) Load 333 - Store 332(param) 334 - 335: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 326(param) 330(param) 332(param) - 336: 18(fvec3) Load 251(force) - 337: 18(fvec3) FAdd 336 335 - Store 251(force) 337 - Branch 320 - 320: Label - 339: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 340: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 341 341 16 16 - 338: 143(ptr) AccessChain 60(id) 38 - 342: 11(int) Load 338 - 343: 154(ptr) AccessChain 123 126 153 38 - 344: 87(int) Load 343 - 345: 87(int) ISub 344 244 - 346: 11(int) Bitcast 345 - 347: 172(bool) ULessThan 342 346 - SelectionMerge 349 None - BranchConditional 347 348 349 - 348: Label - 351: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 352: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 353 353 16 16 - 350: 11(int) Load 145(index) - 354: 154(ptr) AccessChain 123 126 153 16 - 355: 87(int) Load 354 - 356: 11(int) Bitcast 355 - 357: 11(int) IAdd 350 356 - 360: 236(ptr) AccessChain 208(particleIn) 126 357 126 - 361: 85(fvec4) Load 360 - 362: 18(fvec3) VectorShuffle 361 361 0 1 2 - Store 359(param) 362 - 364: 18(fvec3) Load 265(pos) - Store 363(param) 364 - 366: 128(ptr) AccessChain 123 126 358 - 367: 8(float) Load 366 - Store 365(param) 367 - 368: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 359(param) 363(param) 365(param) - 369: 18(fvec3) Load 251(force) - 370: 18(fvec3) FAdd 369 368 - Store 251(force) 370 - Branch 349 - 349: Label - 372: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 373: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 374 374 16 16 - 371: 143(ptr) AccessChain 60(id) 38 - 375: 11(int) Load 371 - 376: 172(bool) UGreaterThan 375 16 - SelectionMerge 378 None - BranchConditional 376 377 378 - 377: Label - 380: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 381: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 382 382 16 16 - 379: 11(int) Load 145(index) - 383: 154(ptr) AccessChain 123 126 153 16 - 384: 87(int) Load 383 - 385: 11(int) Bitcast 384 - 386: 11(int) ISub 379 385 - 388: 236(ptr) AccessChain 208(particleIn) 126 386 126 - 389: 85(fvec4) Load 388 - 390: 18(fvec3) VectorShuffle 389 389 0 1 2 - Store 387(param) 390 - 392: 18(fvec3) Load 265(pos) - Store 391(param) 392 - 394: 128(ptr) AccessChain 123 126 358 - 395: 8(float) Load 394 - Store 393(param) 395 - 396: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 387(param) 391(param) 393(param) - 397: 18(fvec3) Load 251(force) - 398: 18(fvec3) FAdd 397 396 - Store 251(force) 398 - Branch 378 - 378: Label - 400: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 401: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 402 402 16 16 - 399: 143(ptr) AccessChain 60(id) 16 - 403: 11(int) Load 399 - 404: 172(bool) UGreaterThan 403 16 - 405: 143(ptr) AccessChain 60(id) 38 - 406: 11(int) Load 405 - 407: 154(ptr) AccessChain 123 126 153 38 - 408: 87(int) Load 407 - 409: 87(int) ISub 408 244 - 410: 11(int) Bitcast 409 - 411: 172(bool) ULessThan 406 410 - 412: 172(bool) LogicalAnd 404 411 - SelectionMerge 414 None - BranchConditional 412 413 414 - 413: Label - 416: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 417: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 418 418 16 16 - 415: 11(int) Load 145(index) - 419: 154(ptr) AccessChain 123 126 153 16 - 420: 87(int) Load 419 - 421: 11(int) Bitcast 420 - 422: 11(int) IAdd 415 421 - 423: 11(int) ISub 422 38 - 426: 236(ptr) AccessChain 208(particleIn) 126 423 126 - 427: 85(fvec4) Load 426 - 428: 18(fvec3) VectorShuffle 427 427 0 1 2 - Store 425(param) 428 - 430: 18(fvec3) Load 265(pos) - Store 429(param) 430 - 432: 128(ptr) AccessChain 123 126 424 - 433: 8(float) Load 432 - Store 431(param) 433 - 434: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 425(param) 429(param) 431(param) - 435: 18(fvec3) Load 251(force) - 436: 18(fvec3) FAdd 435 434 - Store 251(force) 436 - Branch 414 - 414: Label - 438: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 439: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 440 440 16 16 - 437: 143(ptr) AccessChain 60(id) 16 - 441: 11(int) Load 437 - 442: 172(bool) UGreaterThan 441 16 - 443: 143(ptr) AccessChain 60(id) 38 - 444: 11(int) Load 443 - 445: 172(bool) UGreaterThan 444 16 - 446: 172(bool) LogicalAnd 442 445 - SelectionMerge 448 None - BranchConditional 446 447 448 - 447: Label - 450: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 451: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 452 452 16 16 - 449: 11(int) Load 145(index) - 453: 154(ptr) AccessChain 123 126 153 16 - 454: 87(int) Load 453 - 455: 11(int) Bitcast 454 - 456: 11(int) ISub 449 455 - 457: 11(int) ISub 456 38 - 459: 236(ptr) AccessChain 208(particleIn) 126 457 126 - 460: 85(fvec4) Load 459 - 461: 18(fvec3) VectorShuffle 460 460 0 1 2 - Store 458(param) 461 - 463: 18(fvec3) Load 265(pos) - Store 462(param) 463 - 465: 128(ptr) AccessChain 123 126 424 - 466: 8(float) Load 465 - Store 464(param) 466 - 467: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 458(param) 462(param) 464(param) - 468: 18(fvec3) Load 251(force) - 469: 18(fvec3) FAdd 468 467 - Store 251(force) 469 - Branch 448 - 448: Label - 471: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 472: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 473 473 16 16 - 470: 143(ptr) AccessChain 60(id) 16 - 474: 11(int) Load 470 - 475: 154(ptr) AccessChain 123 126 153 16 - 476: 87(int) Load 475 - 477: 87(int) ISub 476 244 - 478: 11(int) Bitcast 477 - 479: 172(bool) ULessThan 474 478 - 480: 143(ptr) AccessChain 60(id) 38 - 481: 11(int) Load 480 - 482: 154(ptr) AccessChain 123 126 153 38 - 483: 87(int) Load 482 - 484: 87(int) ISub 483 244 - 485: 11(int) Bitcast 484 - 486: 172(bool) ULessThan 481 485 - 487: 172(bool) LogicalAnd 479 486 - SelectionMerge 489 None - BranchConditional 487 488 489 - 488: Label - 491: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 492: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 493 493 16 16 - 490: 11(int) Load 145(index) - 494: 154(ptr) AccessChain 123 126 153 16 - 495: 87(int) Load 494 - 496: 11(int) Bitcast 495 - 497: 11(int) IAdd 490 496 - 498: 11(int) IAdd 497 38 - 500: 236(ptr) AccessChain 208(particleIn) 126 498 126 - 501: 85(fvec4) Load 500 - 502: 18(fvec3) VectorShuffle 501 501 0 1 2 - Store 499(param) 502 - 504: 18(fvec3) Load 265(pos) - Store 503(param) 504 - 506: 128(ptr) AccessChain 123 126 424 - 507: 8(float) Load 506 - Store 505(param) 507 - 508: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 499(param) 503(param) 505(param) - 509: 18(fvec3) Load 251(force) - 510: 18(fvec3) FAdd 509 508 - Store 251(force) 510 - Branch 489 - 489: Label - 512: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 513: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 514 514 16 16 - 511: 143(ptr) AccessChain 60(id) 16 - 515: 11(int) Load 511 - 516: 154(ptr) AccessChain 123 126 153 16 - 517: 87(int) Load 516 - 518: 87(int) ISub 517 244 - 519: 11(int) Bitcast 518 - 520: 172(bool) ULessThan 515 519 - 521: 143(ptr) AccessChain 60(id) 38 - 522: 11(int) Load 521 - 523: 172(bool) UGreaterThan 522 16 - 524: 172(bool) LogicalAnd 520 523 - SelectionMerge 526 None - BranchConditional 524 525 526 - 525: Label - 528: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 529: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 530 530 16 16 - 527: 11(int) Load 145(index) - 531: 154(ptr) AccessChain 123 126 153 16 - 532: 87(int) Load 531 - 533: 11(int) Bitcast 532 - 534: 11(int) ISub 527 533 - 535: 11(int) IAdd 534 38 - 537: 236(ptr) AccessChain 208(particleIn) 126 535 126 - 538: 85(fvec4) Load 537 - 539: 18(fvec3) VectorShuffle 538 538 0 1 2 - Store 536(param) 539 - 541: 18(fvec3) Load 265(pos) - Store 540(param) 541 - 543: 128(ptr) AccessChain 123 126 424 - 544: 8(float) Load 543 - Store 542(param) 544 - 545: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 536(param) 540(param) 542(param) - 546: 18(fvec3) Load 251(force) - 547: 18(fvec3) FAdd 546 545 - Store 251(force) 547 - Branch 526 - 526: Label - 550: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 551: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 552 552 16 16 - 549: 128(ptr) AccessChain 123 126 548 - 553: 8(float) Load 549 - 554: 8(float) FNegate 553 - 555: 18(fvec3) Load 275(vel) - 556: 18(fvec3) VectorTimesScalar 555 554 - 557: 18(fvec3) Load 251(force) - 558: 18(fvec3) FAdd 557 556 - Store 251(force) 558 - 564: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 562 562 16 16 - 563: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 560 559(f) 44 - 565: 18(fvec3) Load 251(force) - 566: 128(ptr) AccessChain 123 126 244 - 567: 8(float) Load 566 - 568: 8(float) FDiv 216 567 - 569: 18(fvec3) VectorTimesScalar 565 568 - Store 559(f) 569 - 571: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 572 572 16 16 - 570: 11(int) Load 145(index) - 573: 18(fvec3) Load 265(pos) - 574: 18(fvec3) Load 275(vel) - 575: 128(ptr) AccessChain 123 126 126 - 576: 8(float) Load 575 - 577: 18(fvec3) VectorTimesScalar 574 576 - 578: 18(fvec3) FAdd 573 577 - 580: 18(fvec3) Load 559(f) - 581: 18(fvec3) VectorTimesScalar 580 579 - 582: 128(ptr) AccessChain 123 126 126 - 583: 8(float) Load 582 - 584: 18(fvec3) VectorTimesScalar 581 583 - 585: 128(ptr) AccessChain 123 126 126 - 586: 8(float) Load 585 - 587: 18(fvec3) VectorTimesScalar 584 586 - 588: 18(fvec3) FAdd 578 587 - 589: 8(float) CompositeExtract 588 0 - 590: 8(float) CompositeExtract 588 1 - 591: 8(float) CompositeExtract 588 2 - 592: 85(fvec4) CompositeConstruct 589 590 591 216 - 593: 236(ptr) AccessChain 230(particleOut) 126 570 126 - Store 593 592 - 595: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 596 596 16 16 - 594: 11(int) Load 145(index) - 597: 18(fvec3) Load 275(vel) - 598: 18(fvec3) Load 559(f) - 599: 128(ptr) AccessChain 123 126 126 + 224: Label + 262: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 263: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 260 260 16 16 + 261: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 258 257(force) 44 + 265: 242(ptr) AccessChain 125 129 264 + 266: 87(fvec4) Load 265 + 267: 18(fvec3) VectorShuffle 266 266 0 1 2 + 268: 131(ptr) AccessChain 125 129 250 + 269: 8(float) Load 268 + 270: 18(fvec3) VectorTimesScalar 267 269 + Store 257(force) 270 + 276: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 274 274 16 16 + 275: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 272 271(pos) 44 + 277: 11(int) Load 149(index) + 278: 242(ptr) AccessChain 213(particleIn) 129 277 129 + 279: 87(fvec4) Load 278 + 280: 18(fvec3) VectorShuffle 279 279 0 1 2 + Store 271(pos) 280 + 286: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 284 284 16 16 + 285: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 282 281(vel) 44 + 287: 11(int) Load 149(index) + 288: 242(ptr) AccessChain 213(particleIn) 129 287 250 + 289: 87(fvec4) Load 288 + 290: 18(fvec3) VectorShuffle 289 289 0 1 2 + Store 281(vel) 290 + 292: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 293 293 16 16 + 291: 147(ptr) AccessChain 60(id) 16 + 294: 11(int) Load 291 + 295: 177(bool) UGreaterThan 294 16 + SelectionMerge 297 None + BranchConditional 295 296 297 + 296: Label + 300: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 298 + 301: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 302 302 16 16 + 299: 11(int) Load 149(index) + 303: 11(int) ISub 299 38 + 305: 242(ptr) AccessChain 213(particleIn) 129 303 129 + 306: 87(fvec4) Load 305 + 307: 18(fvec3) VectorShuffle 306 306 0 1 2 + Store 304(param) 307 + 309: 18(fvec3) Load 271(pos) + Store 308(param) 309 + 311: 131(ptr) AccessChain 125 129 218 + 312: 8(float) Load 311 + Store 310(param) 312 + 313: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 304(param) 308(param) 310(param) + 314: 18(fvec3) Load 257(force) + 315: 18(fvec3) FAdd 314 313 + Store 257(force) 315 + Branch 297 + 297: Label + 317: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 318: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 319 319 16 16 + 316: 147(ptr) AccessChain 60(id) 16 + 320: 11(int) Load 316 + 321: 159(ptr) AccessChain 125 129 158 16 + 322: 89(int) Load 321 + 323: 89(int) ISub 322 250 + 324: 11(int) Bitcast 323 + 325: 177(bool) ULessThan 320 324 + SelectionMerge 327 None + BranchConditional 325 326 327 + 326: Label + 330: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 328 + 331: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 332 332 16 16 + 329: 11(int) Load 149(index) + 333: 11(int) IAdd 329 38 + 335: 242(ptr) AccessChain 213(particleIn) 129 333 129 + 336: 87(fvec4) Load 335 + 337: 18(fvec3) VectorShuffle 336 336 0 1 2 + Store 334(param) 337 + 339: 18(fvec3) Load 271(pos) + Store 338(param) 339 + 341: 131(ptr) AccessChain 125 129 218 + 342: 8(float) Load 341 + Store 340(param) 342 + 343: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 334(param) 338(param) 340(param) + 344: 18(fvec3) Load 257(force) + 345: 18(fvec3) FAdd 344 343 + Store 257(force) 345 + Branch 327 + 327: Label + 347: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 348: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 349 349 16 16 + 346: 147(ptr) AccessChain 60(id) 38 + 350: 11(int) Load 346 + 351: 159(ptr) AccessChain 125 129 158 38 + 352: 89(int) Load 351 + 353: 89(int) ISub 352 250 + 354: 11(int) Bitcast 353 + 355: 177(bool) ULessThan 350 354 + SelectionMerge 357 None + BranchConditional 355 356 357 + 356: Label + 360: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 358 + 361: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 362 362 16 16 + 359: 11(int) Load 149(index) + 363: 159(ptr) AccessChain 125 129 158 16 + 364: 89(int) Load 363 + 365: 11(int) Bitcast 364 + 366: 11(int) IAdd 359 365 + 369: 242(ptr) AccessChain 213(particleIn) 129 366 129 + 370: 87(fvec4) Load 369 + 371: 18(fvec3) VectorShuffle 370 370 0 1 2 + Store 368(param) 371 + 373: 18(fvec3) Load 271(pos) + Store 372(param) 373 + 375: 131(ptr) AccessChain 125 129 367 + 376: 8(float) Load 375 + Store 374(param) 376 + 377: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 368(param) 372(param) 374(param) + 378: 18(fvec3) Load 257(force) + 379: 18(fvec3) FAdd 378 377 + Store 257(force) 379 + Branch 357 + 357: Label + 381: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 382: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 383 383 16 16 + 380: 147(ptr) AccessChain 60(id) 38 + 384: 11(int) Load 380 + 385: 177(bool) UGreaterThan 384 16 + SelectionMerge 387 None + BranchConditional 385 386 387 + 386: Label + 390: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 388 + 391: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 392 392 16 16 + 389: 11(int) Load 149(index) + 393: 159(ptr) AccessChain 125 129 158 16 + 394: 89(int) Load 393 + 395: 11(int) Bitcast 394 + 396: 11(int) ISub 389 395 + 398: 242(ptr) AccessChain 213(particleIn) 129 396 129 + 399: 87(fvec4) Load 398 + 400: 18(fvec3) VectorShuffle 399 399 0 1 2 + Store 397(param) 400 + 402: 18(fvec3) Load 271(pos) + Store 401(param) 402 + 404: 131(ptr) AccessChain 125 129 367 + 405: 8(float) Load 404 + Store 403(param) 405 + 406: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 397(param) 401(param) 403(param) + 407: 18(fvec3) Load 257(force) + 408: 18(fvec3) FAdd 407 406 + Store 257(force) 408 + Branch 387 + 387: Label + 410: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 411: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 412 412 16 16 + 409: 147(ptr) AccessChain 60(id) 16 + 413: 11(int) Load 409 + 414: 177(bool) UGreaterThan 413 16 + 415: 147(ptr) AccessChain 60(id) 38 + 416: 11(int) Load 415 + 417: 159(ptr) AccessChain 125 129 158 38 + 418: 89(int) Load 417 + 419: 89(int) ISub 418 250 + 420: 11(int) Bitcast 419 + 421: 177(bool) ULessThan 416 420 + 422: 177(bool) LogicalAnd 414 421 + SelectionMerge 424 None + BranchConditional 422 423 424 + 423: Label + 427: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 425 + 428: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 429 429 16 16 + 426: 11(int) Load 149(index) + 430: 159(ptr) AccessChain 125 129 158 16 + 431: 89(int) Load 430 + 432: 11(int) Bitcast 431 + 433: 11(int) IAdd 426 432 + 434: 11(int) ISub 433 38 + 437: 242(ptr) AccessChain 213(particleIn) 129 434 129 + 438: 87(fvec4) Load 437 + 439: 18(fvec3) VectorShuffle 438 438 0 1 2 + Store 436(param) 439 + 441: 18(fvec3) Load 271(pos) + Store 440(param) 441 + 443: 131(ptr) AccessChain 125 129 435 + 444: 8(float) Load 443 + Store 442(param) 444 + 445: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 436(param) 440(param) 442(param) + 446: 18(fvec3) Load 257(force) + 447: 18(fvec3) FAdd 446 445 + Store 257(force) 447 + Branch 424 + 424: Label + 449: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 450: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 451 451 16 16 + 448: 147(ptr) AccessChain 60(id) 16 + 452: 11(int) Load 448 + 453: 177(bool) UGreaterThan 452 16 + 454: 147(ptr) AccessChain 60(id) 38 + 455: 11(int) Load 454 + 456: 177(bool) UGreaterThan 455 16 + 457: 177(bool) LogicalAnd 453 456 + SelectionMerge 459 None + BranchConditional 457 458 459 + 458: Label + 462: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 460 + 463: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 464 464 16 16 + 461: 11(int) Load 149(index) + 465: 159(ptr) AccessChain 125 129 158 16 + 466: 89(int) Load 465 + 467: 11(int) Bitcast 466 + 468: 11(int) ISub 461 467 + 469: 11(int) ISub 468 38 + 471: 242(ptr) AccessChain 213(particleIn) 129 469 129 + 472: 87(fvec4) Load 471 + 473: 18(fvec3) VectorShuffle 472 472 0 1 2 + Store 470(param) 473 + 475: 18(fvec3) Load 271(pos) + Store 474(param) 475 + 477: 131(ptr) AccessChain 125 129 435 + 478: 8(float) Load 477 + Store 476(param) 478 + 479: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 470(param) 474(param) 476(param) + 480: 18(fvec3) Load 257(force) + 481: 18(fvec3) FAdd 480 479 + Store 257(force) 481 + Branch 459 + 459: Label + 483: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 484: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 485 485 16 16 + 482: 147(ptr) AccessChain 60(id) 16 + 486: 11(int) Load 482 + 487: 159(ptr) AccessChain 125 129 158 16 + 488: 89(int) Load 487 + 489: 89(int) ISub 488 250 + 490: 11(int) Bitcast 489 + 491: 177(bool) ULessThan 486 490 + 492: 147(ptr) AccessChain 60(id) 38 + 493: 11(int) Load 492 + 494: 159(ptr) AccessChain 125 129 158 38 + 495: 89(int) Load 494 + 496: 89(int) ISub 495 250 + 497: 11(int) Bitcast 496 + 498: 177(bool) ULessThan 493 497 + 499: 177(bool) LogicalAnd 491 498 + SelectionMerge 501 None + BranchConditional 499 500 501 + 500: Label + 504: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 502 + 505: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 506 506 16 16 + 503: 11(int) Load 149(index) + 507: 159(ptr) AccessChain 125 129 158 16 + 508: 89(int) Load 507 + 509: 11(int) Bitcast 508 + 510: 11(int) IAdd 503 509 + 511: 11(int) IAdd 510 38 + 513: 242(ptr) AccessChain 213(particleIn) 129 511 129 + 514: 87(fvec4) Load 513 + 515: 18(fvec3) VectorShuffle 514 514 0 1 2 + Store 512(param) 515 + 517: 18(fvec3) Load 271(pos) + Store 516(param) 517 + 519: 131(ptr) AccessChain 125 129 435 + 520: 8(float) Load 519 + Store 518(param) 520 + 521: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 512(param) 516(param) 518(param) + 522: 18(fvec3) Load 257(force) + 523: 18(fvec3) FAdd 522 521 + Store 257(force) 523 + Branch 501 + 501: Label + 525: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 526: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 527 527 16 16 + 524: 147(ptr) AccessChain 60(id) 16 + 528: 11(int) Load 524 + 529: 159(ptr) AccessChain 125 129 158 16 + 530: 89(int) Load 529 + 531: 89(int) ISub 530 250 + 532: 11(int) Bitcast 531 + 533: 177(bool) ULessThan 528 532 + 534: 147(ptr) AccessChain 60(id) 38 + 535: 11(int) Load 534 + 536: 177(bool) UGreaterThan 535 16 + 537: 177(bool) LogicalAnd 533 536 + SelectionMerge 539 None + BranchConditional 537 538 539 + 538: Label + 542: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 540 + 543: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 544 544 16 16 + 541: 11(int) Load 149(index) + 545: 159(ptr) AccessChain 125 129 158 16 + 546: 89(int) Load 545 + 547: 11(int) Bitcast 546 + 548: 11(int) ISub 541 547 + 549: 11(int) IAdd 548 38 + 551: 242(ptr) AccessChain 213(particleIn) 129 549 129 + 552: 87(fvec4) Load 551 + 553: 18(fvec3) VectorShuffle 552 552 0 1 2 + Store 550(param) 553 + 555: 18(fvec3) Load 271(pos) + Store 554(param) 555 + 557: 131(ptr) AccessChain 125 129 435 + 558: 8(float) Load 557 + Store 556(param) 558 + 559: 18(fvec3) FunctionCall 30(springForce(vf3;vf3;f1;) 550(param) 554(param) 556(param) + 560: 18(fvec3) Load 257(force) + 561: 18(fvec3) FAdd 560 559 + Store 257(force) 561 + Branch 539 + 539: Label + 564: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 565: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 566 566 16 16 + 563: 131(ptr) AccessChain 125 129 562 + 567: 8(float) Load 563 + 568: 8(float) FNegate 567 + 569: 18(fvec3) Load 281(vel) + 570: 18(fvec3) VectorTimesScalar 569 568 + 571: 18(fvec3) Load 257(force) + 572: 18(fvec3) FAdd 571 570 + Store 257(force) 572 + 578: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 576 576 16 16 + 577: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 574 573(f) 44 + 579: 18(fvec3) Load 257(force) + 580: 131(ptr) AccessChain 125 129 250 + 581: 8(float) Load 580 + 582: 8(float) FDiv 221 581 + 583: 18(fvec3) VectorTimesScalar 579 582 + Store 573(f) 583 + 585: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 586 586 16 16 + 584: 11(int) Load 149(index) + 587: 18(fvec3) Load 271(pos) + 588: 18(fvec3) Load 281(vel) + 589: 131(ptr) AccessChain 125 129 129 + 590: 8(float) Load 589 + 591: 18(fvec3) VectorTimesScalar 588 590 + 592: 18(fvec3) FAdd 587 591 + 594: 18(fvec3) Load 573(f) + 595: 18(fvec3) VectorTimesScalar 594 593 + 596: 131(ptr) AccessChain 125 129 129 + 597: 8(float) Load 596 + 598: 18(fvec3) VectorTimesScalar 595 597 + 599: 131(ptr) AccessChain 125 129 129 600: 8(float) Load 599 601: 18(fvec3) VectorTimesScalar 598 600 - 602: 18(fvec3) FAdd 597 601 + 602: 18(fvec3) FAdd 592 601 603: 8(float) CompositeExtract 602 0 604: 8(float) CompositeExtract 602 1 605: 8(float) CompositeExtract 602 2 - 606: 85(fvec4) CompositeConstruct 603 604 605 245 - 607: 236(ptr) AccessChain 230(particleOut) 126 594 244 + 606: 87(fvec4) CompositeConstruct 603 604 605 221 + 607: 242(ptr) AccessChain 236(particleOut) 129 584 129 Store 607 606 - 613: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 611 611 16 16 - 612: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 609 608(sphereDist) 44 - 614: 11(int) Load 145(index) - 615: 236(ptr) AccessChain 230(particleOut) 126 614 126 - 616: 85(fvec4) Load 615 - 617: 18(fvec3) VectorShuffle 616 616 0 1 2 - 619: 236(ptr) AccessChain 123 126 618 - 620: 85(fvec4) Load 619 - 621: 18(fvec3) VectorShuffle 620 620 0 1 2 - 622: 18(fvec3) FSub 617 621 - Store 608(sphereDist) 622 - 624: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 625 625 16 16 - 623: 18(fvec3) Load 608(sphereDist) - 626: 8(float) ExtInst 3(GLSL.std.450) 66(Length) 623 - 628: 128(ptr) AccessChain 123 126 627 - 629: 8(float) Load 628 - 631: 8(float) FAdd 629 630 - 632: 172(bool) FOrdLessThan 626 631 - SelectionMerge 634 None - BranchConditional 632 633 634 - 633: Label - 636: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 637: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 638 638 16 16 - 635: 11(int) Load 145(index) - 639: 236(ptr) AccessChain 123 126 618 - 640: 85(fvec4) Load 639 - 641: 18(fvec3) VectorShuffle 640 640 0 1 2 - 642: 18(fvec3) Load 608(sphereDist) - 643: 18(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 642 - 644: 128(ptr) AccessChain 123 126 627 - 645: 8(float) Load 644 - 646: 8(float) FAdd 645 630 - 647: 18(fvec3) VectorTimesScalar 643 646 - 648: 18(fvec3) FAdd 641 647 - 649: 128(ptr) AccessChain 230(particleOut) 126 635 126 16 - 650: 8(float) CompositeExtract 648 0 - Store 649 650 - 651: 128(ptr) AccessChain 230(particleOut) 126 635 126 38 - 652: 8(float) CompositeExtract 648 1 - Store 651 652 - 653: 128(ptr) AccessChain 230(particleOut) 126 635 126 49 - 654: 8(float) CompositeExtract 648 2 - Store 653 654 - 656: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 657 657 16 16 - 655: 11(int) Load 145(index) - 658: 236(ptr) AccessChain 230(particleOut) 126 655 244 - Store 658 246 - Branch 634 - 634: Label - 680: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 681: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 666 666 16 16 - 679: 677(ptr) AccessChain 675 126 126 - 682: 11(int) Load 679 - 683: 172(bool) IEqual 682 38 - SelectionMerge 685 None - BranchConditional 683 684 685 - 684: Label - 690: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 691: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 688 688 16 16 - 689: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 687 686(normal) 44 - Store 686(normal) 692 - 694: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 695 695 16 16 - 693: 143(ptr) AccessChain 60(id) 38 - 696: 11(int) Load 693 - 697: 172(bool) UGreaterThan 696 16 - SelectionMerge 699 None - BranchConditional 697 698 699 - 698: Label - 701: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 702: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 703 703 16 16 - 700: 143(ptr) AccessChain 60(id) 16 - 704: 11(int) Load 700 - 705: 172(bool) UGreaterThan 704 16 - SelectionMerge 707 None - BranchConditional 705 706 707 - 706: Label - 713: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 714: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 711 711 16 16 - 712: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 709 708(a) 44 - 715: 11(int) Load 145(index) - 716: 11(int) ISub 715 38 - 717: 236(ptr) AccessChain 208(particleIn) 126 716 126 - 718: 85(fvec4) Load 717 - 719: 18(fvec3) VectorShuffle 718 718 0 1 2 - 720: 18(fvec3) Load 265(pos) - 721: 18(fvec3) FSub 719 720 - Store 708(a) 721 - 727: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 725 725 16 16 - 726: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 723 722(b) 44 - 728: 11(int) Load 145(index) - 729: 154(ptr) AccessChain 123 126 153 16 - 730: 87(int) Load 729 - 731: 11(int) Bitcast 730 - 732: 11(int) ISub 728 731 - 733: 11(int) ISub 732 38 - 734: 236(ptr) AccessChain 208(particleIn) 126 733 126 - 735: 85(fvec4) Load 734 - 736: 18(fvec3) VectorShuffle 735 735 0 1 2 - 737: 18(fvec3) Load 265(pos) - 738: 18(fvec3) FSub 736 737 - Store 722(b) 738 - 744: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 742 742 16 16 - 743: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 740 739(c) 44 - 745: 11(int) Load 145(index) - 746: 154(ptr) AccessChain 123 126 153 16 - 747: 87(int) Load 746 - 748: 11(int) Bitcast 747 - 749: 11(int) ISub 745 748 - 750: 236(ptr) AccessChain 208(particleIn) 126 749 126 - 751: 85(fvec4) Load 750 - 752: 18(fvec3) VectorShuffle 751 751 0 1 2 - 753: 18(fvec3) Load 265(pos) - 754: 18(fvec3) FSub 752 753 - Store 739(c) 754 - 756: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 757 757 16 16 - 755: 18(fvec3) Load 708(a) - 758: 18(fvec3) Load 722(b) - 759: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 755 758 - 760: 18(fvec3) Load 722(b) - 761: 18(fvec3) Load 739(c) - 762: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 760 761 - 763: 18(fvec3) FAdd 759 762 - 764: 18(fvec3) Load 686(normal) - 765: 18(fvec3) FAdd 764 763 - Store 686(normal) 765 - Branch 707 - 707: Label - 767: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 768: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 769 769 16 16 - 766: 143(ptr) AccessChain 60(id) 16 - 770: 11(int) Load 766 - 771: 154(ptr) AccessChain 123 126 153 16 - 772: 87(int) Load 771 - 773: 87(int) ISub 772 244 - 774: 11(int) Bitcast 773 - 775: 172(bool) ULessThan 770 774 - SelectionMerge 777 None - BranchConditional 775 776 777 - 776: Label - 779: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 780: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 781 781 16 16 - 778: 11(int) Load 145(index) - 782: 154(ptr) AccessChain 123 126 153 16 - 783: 87(int) Load 782 - 784: 11(int) Bitcast 783 - 785: 11(int) ISub 778 784 - 786: 236(ptr) AccessChain 208(particleIn) 126 785 126 - 787: 85(fvec4) Load 786 - 788: 18(fvec3) VectorShuffle 787 787 0 1 2 - 789: 18(fvec3) Load 265(pos) - 790: 18(fvec3) FSub 788 789 - Store 708(a) 790 - 792: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 793 793 16 16 - 791: 11(int) Load 145(index) - 794: 154(ptr) AccessChain 123 126 153 16 - 795: 87(int) Load 794 - 796: 11(int) Bitcast 795 - 797: 11(int) ISub 791 796 - 798: 11(int) IAdd 797 38 - 799: 236(ptr) AccessChain 208(particleIn) 126 798 126 - 800: 85(fvec4) Load 799 - 801: 18(fvec3) VectorShuffle 800 800 0 1 2 - 802: 18(fvec3) Load 265(pos) - 803: 18(fvec3) FSub 801 802 - Store 722(b) 803 - 805: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 806 806 16 16 - 804: 11(int) Load 145(index) - 807: 11(int) IAdd 804 38 - 808: 236(ptr) AccessChain 208(particleIn) 126 807 126 - 809: 85(fvec4) Load 808 - 810: 18(fvec3) VectorShuffle 809 809 0 1 2 - 811: 18(fvec3) Load 265(pos) - 812: 18(fvec3) FSub 810 811 - Store 739(c) 812 - 814: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 815 815 16 16 - 813: 18(fvec3) Load 708(a) - 816: 18(fvec3) Load 722(b) - 817: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 813 816 - 818: 18(fvec3) Load 722(b) - 819: 18(fvec3) Load 739(c) - 820: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 818 819 - 821: 18(fvec3) FAdd 817 820 - 822: 18(fvec3) Load 686(normal) - 823: 18(fvec3) FAdd 822 821 - Store 686(normal) 823 - Branch 777 - 777: Label - Branch 699 + 609: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 610 610 16 16 + 608: 11(int) Load 149(index) + 611: 18(fvec3) Load 281(vel) + 612: 18(fvec3) Load 573(f) + 613: 131(ptr) AccessChain 125 129 129 + 614: 8(float) Load 613 + 615: 18(fvec3) VectorTimesScalar 612 614 + 616: 18(fvec3) FAdd 611 615 + 617: 8(float) CompositeExtract 616 0 + 618: 8(float) CompositeExtract 616 1 + 619: 8(float) CompositeExtract 616 2 + 620: 87(fvec4) CompositeConstruct 617 618 619 251 + 621: 242(ptr) AccessChain 236(particleOut) 129 608 250 + Store 621 620 + 627: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 625 625 16 16 + 626: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 623 622(sphereDist) 44 + 628: 11(int) Load 149(index) + 629: 242(ptr) AccessChain 236(particleOut) 129 628 129 + 630: 87(fvec4) Load 629 + 631: 18(fvec3) VectorShuffle 630 630 0 1 2 + 633: 242(ptr) AccessChain 125 129 632 + 634: 87(fvec4) Load 633 + 635: 18(fvec3) VectorShuffle 634 634 0 1 2 + 636: 18(fvec3) FSub 631 635 + Store 622(sphereDist) 636 + 638: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 639 639 16 16 + 637: 18(fvec3) Load 622(sphereDist) + 640: 8(float) ExtInst 3(GLSL.std.450) 66(Length) 637 + 642: 131(ptr) AccessChain 125 129 641 + 643: 8(float) Load 642 + 645: 8(float) FAdd 643 644 + 646: 177(bool) FOrdLessThan 640 645 + SelectionMerge 648 None + BranchConditional 646 647 648 + 647: Label + 651: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 649 + 652: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 653 653 16 16 + 650: 11(int) Load 149(index) + 654: 242(ptr) AccessChain 125 129 632 + 655: 87(fvec4) Load 654 + 656: 18(fvec3) VectorShuffle 655 655 0 1 2 + 657: 18(fvec3) Load 622(sphereDist) + 658: 18(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 657 + 659: 131(ptr) AccessChain 125 129 641 + 660: 8(float) Load 659 + 661: 8(float) FAdd 660 644 + 662: 18(fvec3) VectorTimesScalar 658 661 + 663: 18(fvec3) FAdd 656 662 + 664: 131(ptr) AccessChain 236(particleOut) 129 650 129 16 + 665: 8(float) CompositeExtract 663 0 + Store 664 665 + 666: 131(ptr) AccessChain 236(particleOut) 129 650 129 38 + 667: 8(float) CompositeExtract 663 1 + Store 666 667 + 668: 131(ptr) AccessChain 236(particleOut) 129 650 129 49 + 669: 8(float) CompositeExtract 663 2 + Store 668 669 + 671: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 672 672 16 16 + 670: 11(int) Load 149(index) + 673: 242(ptr) AccessChain 236(particleOut) 129 670 250 + Store 673 252 + Branch 648 + 648: Label + 695: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 146 + 696: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 681 681 16 16 + 694: 692(ptr) AccessChain 690 129 129 + 697: 11(int) Load 694 + 698: 177(bool) IEqual 697 38 + SelectionMerge 700 None + BranchConditional 698 699 700 699: Label - 825: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 826: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 827 827 16 16 - 824: 143(ptr) AccessChain 60(id) 38 - 828: 11(int) Load 824 - 829: 154(ptr) AccessChain 123 126 153 38 - 830: 87(int) Load 829 - 831: 87(int) ISub 830 244 - 832: 11(int) Bitcast 831 - 833: 172(bool) ULessThan 828 832 - SelectionMerge 835 None - BranchConditional 833 834 835 - 834: Label - 837: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 838: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 839 839 16 16 - 836: 143(ptr) AccessChain 60(id) 16 - 840: 11(int) Load 836 - 841: 172(bool) UGreaterThan 840 16 - SelectionMerge 843 None - BranchConditional 841 842 843 - 842: Label - 845: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 846: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 847 847 16 16 - 844: 11(int) Load 145(index) - 848: 154(ptr) AccessChain 123 126 153 16 - 849: 87(int) Load 848 - 850: 11(int) Bitcast 849 - 851: 11(int) IAdd 844 850 - 852: 236(ptr) AccessChain 208(particleIn) 126 851 126 - 853: 85(fvec4) Load 852 - 854: 18(fvec3) VectorShuffle 853 853 0 1 2 - 855: 18(fvec3) Load 265(pos) - 856: 18(fvec3) FSub 854 855 - Store 708(a) 856 - 858: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 859 859 16 16 - 857: 11(int) Load 145(index) - 860: 154(ptr) AccessChain 123 126 153 16 - 861: 87(int) Load 860 - 862: 11(int) Bitcast 861 - 863: 11(int) IAdd 857 862 - 864: 11(int) ISub 863 38 - 865: 236(ptr) AccessChain 208(particleIn) 126 864 126 - 866: 85(fvec4) Load 865 - 867: 18(fvec3) VectorShuffle 866 866 0 1 2 - 868: 18(fvec3) Load 265(pos) - 869: 18(fvec3) FSub 867 868 - Store 722(b) 869 - 871: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 872 872 16 16 - 870: 11(int) Load 145(index) - 873: 11(int) ISub 870 38 - 874: 236(ptr) AccessChain 208(particleIn) 126 873 126 - 875: 85(fvec4) Load 874 - 876: 18(fvec3) VectorShuffle 875 875 0 1 2 - 877: 18(fvec3) Load 265(pos) - 878: 18(fvec3) FSub 876 877 - Store 739(c) 878 - 880: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 881 881 16 16 - 879: 18(fvec3) Load 708(a) - 882: 18(fvec3) Load 722(b) - 883: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 879 882 - 884: 18(fvec3) Load 722(b) - 885: 18(fvec3) Load 739(c) - 886: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 884 885 - 887: 18(fvec3) FAdd 883 886 - 888: 18(fvec3) Load 686(normal) - 889: 18(fvec3) FAdd 888 887 - Store 686(normal) 889 - Branch 843 - 843: Label - 891: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 892: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 893 893 16 16 - 890: 143(ptr) AccessChain 60(id) 16 - 894: 11(int) Load 890 - 895: 154(ptr) AccessChain 123 126 153 16 - 896: 87(int) Load 895 - 897: 87(int) ISub 896 244 - 898: 11(int) Bitcast 897 - 899: 172(bool) ULessThan 894 898 - SelectionMerge 901 None - BranchConditional 899 900 901 - 900: Label - 903: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 904: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 905 905 16 16 - 902: 11(int) Load 145(index) - 906: 11(int) IAdd 902 38 - 907: 236(ptr) AccessChain 208(particleIn) 126 906 126 - 908: 85(fvec4) Load 907 - 909: 18(fvec3) VectorShuffle 908 908 0 1 2 - 910: 18(fvec3) Load 265(pos) - 911: 18(fvec3) FSub 909 910 - Store 708(a) 911 - 913: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 914 914 16 16 - 912: 11(int) Load 145(index) - 915: 154(ptr) AccessChain 123 126 153 16 - 916: 87(int) Load 915 - 917: 11(int) Bitcast 916 - 918: 11(int) IAdd 912 917 - 919: 11(int) IAdd 918 38 - 920: 236(ptr) AccessChain 208(particleIn) 126 919 126 - 921: 85(fvec4) Load 920 - 922: 18(fvec3) VectorShuffle 921 921 0 1 2 - 923: 18(fvec3) Load 265(pos) - 924: 18(fvec3) FSub 922 923 - Store 722(b) 924 - 926: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 927 927 16 16 - 925: 11(int) Load 145(index) - 928: 154(ptr) AccessChain 123 126 153 16 - 929: 87(int) Load 928 - 930: 11(int) Bitcast 929 - 931: 11(int) IAdd 925 930 - 932: 236(ptr) AccessChain 208(particleIn) 126 931 126 - 933: 85(fvec4) Load 932 - 934: 18(fvec3) VectorShuffle 933 933 0 1 2 - 935: 18(fvec3) Load 265(pos) - 936: 18(fvec3) FSub 934 935 - Store 739(c) 936 - 938: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 939 939 16 16 - 937: 18(fvec3) Load 708(a) - 940: 18(fvec3) Load 722(b) - 941: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 937 940 - 942: 18(fvec3) Load 722(b) - 943: 18(fvec3) Load 739(c) - 944: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 942 943 - 945: 18(fvec3) FAdd 941 944 - 946: 18(fvec3) Load 686(normal) - 947: 18(fvec3) FAdd 946 945 - Store 686(normal) 947 - Branch 901 - 901: Label - Branch 835 - 835: Label - 949: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 950: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 951 951 16 16 - 948: 11(int) Load 145(index) - 952: 18(fvec3) Load 686(normal) - 953: 18(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 952 - 954: 8(float) CompositeExtract 953 0 - 955: 8(float) CompositeExtract 953 1 - 956: 8(float) CompositeExtract 953 2 - 957: 85(fvec4) CompositeConstruct 954 955 956 245 - 958: 236(ptr) AccessChain 230(particleOut) 126 948 548 - Store 958 957 - Branch 685 - 685: Label - 959: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 - 960: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 951 951 16 16 + 706: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 701 + 707: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 704 704 16 16 + 705: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 703 702(normal) 44 + Store 702(normal) 708 + 714: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 712 712 16 16 + 713: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 710 709(a) 44 + 718: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 716 715(b) 44 + 722: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 720 719(c) 44 + 724: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 725 725 16 16 + 723: 147(ptr) AccessChain 60(id) 38 + 726: 11(int) Load 723 + 727: 177(bool) UGreaterThan 726 16 + SelectionMerge 729 None + BranchConditional 727 728 729 + 728: Label + 732: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 730 + 733: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 734 734 16 16 + 731: 147(ptr) AccessChain 60(id) 16 + 735: 11(int) Load 731 + 736: 177(bool) UGreaterThan 735 16 + SelectionMerge 738 None + BranchConditional 736 737 738 + 737: Label + 741: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 739 + 742: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 743 743 16 16 + 740: 11(int) Load 149(index) + 744: 11(int) ISub 740 38 + 745: 242(ptr) AccessChain 213(particleIn) 129 744 129 + 746: 87(fvec4) Load 745 + 747: 18(fvec3) VectorShuffle 746 746 0 1 2 + 748: 18(fvec3) Load 271(pos) + 749: 18(fvec3) FSub 747 748 + Store 709(a) 749 + 751: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 752 752 16 16 + 750: 11(int) Load 149(index) + 753: 159(ptr) AccessChain 125 129 158 16 + 754: 89(int) Load 753 + 755: 11(int) Bitcast 754 + 756: 11(int) ISub 750 755 + 757: 11(int) ISub 756 38 + 758: 242(ptr) AccessChain 213(particleIn) 129 757 129 + 759: 87(fvec4) Load 758 + 760: 18(fvec3) VectorShuffle 759 759 0 1 2 + 761: 18(fvec3) Load 271(pos) + 762: 18(fvec3) FSub 760 761 + Store 715(b) 762 + 764: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 765 765 16 16 + 763: 11(int) Load 149(index) + 766: 159(ptr) AccessChain 125 129 158 16 + 767: 89(int) Load 766 + 768: 11(int) Bitcast 767 + 769: 11(int) ISub 763 768 + 770: 242(ptr) AccessChain 213(particleIn) 129 769 129 + 771: 87(fvec4) Load 770 + 772: 18(fvec3) VectorShuffle 771 771 0 1 2 + 773: 18(fvec3) Load 271(pos) + 774: 18(fvec3) FSub 772 773 + Store 719(c) 774 + 776: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 777 777 16 16 + 775: 18(fvec3) Load 709(a) + 778: 18(fvec3) Load 715(b) + 779: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 775 778 + 780: 18(fvec3) Load 715(b) + 781: 18(fvec3) Load 719(c) + 782: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 780 781 + 783: 18(fvec3) FAdd 779 782 + 784: 18(fvec3) Load 702(normal) + 785: 18(fvec3) FAdd 784 783 + Store 702(normal) 785 + Branch 738 + 738: Label + 787: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 730 + 788: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 789 789 16 16 + 786: 147(ptr) AccessChain 60(id) 16 + 790: 11(int) Load 786 + 791: 159(ptr) AccessChain 125 129 158 16 + 792: 89(int) Load 791 + 793: 89(int) ISub 792 250 + 794: 11(int) Bitcast 793 + 795: 177(bool) ULessThan 790 794 + SelectionMerge 797 None + BranchConditional 795 796 797 + 796: Label + 800: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 798 + 801: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 802 802 16 16 + 799: 11(int) Load 149(index) + 803: 159(ptr) AccessChain 125 129 158 16 + 804: 89(int) Load 803 + 805: 11(int) Bitcast 804 + 806: 11(int) ISub 799 805 + 807: 242(ptr) AccessChain 213(particleIn) 129 806 129 + 808: 87(fvec4) Load 807 + 809: 18(fvec3) VectorShuffle 808 808 0 1 2 + 810: 18(fvec3) Load 271(pos) + 811: 18(fvec3) FSub 809 810 + Store 709(a) 811 + 813: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 814 814 16 16 + 812: 11(int) Load 149(index) + 815: 159(ptr) AccessChain 125 129 158 16 + 816: 89(int) Load 815 + 817: 11(int) Bitcast 816 + 818: 11(int) ISub 812 817 + 819: 11(int) IAdd 818 38 + 820: 242(ptr) AccessChain 213(particleIn) 129 819 129 + 821: 87(fvec4) Load 820 + 822: 18(fvec3) VectorShuffle 821 821 0 1 2 + 823: 18(fvec3) Load 271(pos) + 824: 18(fvec3) FSub 822 823 + Store 715(b) 824 + 826: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 827 827 16 16 + 825: 11(int) Load 149(index) + 828: 11(int) IAdd 825 38 + 829: 242(ptr) AccessChain 213(particleIn) 129 828 129 + 830: 87(fvec4) Load 829 + 831: 18(fvec3) VectorShuffle 830 830 0 1 2 + 832: 18(fvec3) Load 271(pos) + 833: 18(fvec3) FSub 831 832 + Store 719(c) 833 + 835: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 836 836 16 16 + 834: 18(fvec3) Load 709(a) + 837: 18(fvec3) Load 715(b) + 838: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 834 837 + 839: 18(fvec3) Load 715(b) + 840: 18(fvec3) Load 719(c) + 841: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 839 840 + 842: 18(fvec3) FAdd 838 841 + 843: 18(fvec3) Load 702(normal) + 844: 18(fvec3) FAdd 843 842 + Store 702(normal) 844 + Branch 797 + 797: Label + Branch 729 + 729: Label + 846: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 701 + 847: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 848 848 16 16 + 845: 147(ptr) AccessChain 60(id) 38 + 849: 11(int) Load 845 + 850: 159(ptr) AccessChain 125 129 158 38 + 851: 89(int) Load 850 + 852: 89(int) ISub 851 250 + 853: 11(int) Bitcast 852 + 854: 177(bool) ULessThan 849 853 + SelectionMerge 856 None + BranchConditional 854 855 856 + 855: Label + 859: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 857 + 860: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 861 861 16 16 + 858: 147(ptr) AccessChain 60(id) 16 + 862: 11(int) Load 858 + 863: 177(bool) UGreaterThan 862 16 + SelectionMerge 865 None + BranchConditional 863 864 865 + 864: Label + 868: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 866 + 869: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 870 870 16 16 + 867: 11(int) Load 149(index) + 871: 159(ptr) AccessChain 125 129 158 16 + 872: 89(int) Load 871 + 873: 11(int) Bitcast 872 + 874: 11(int) IAdd 867 873 + 875: 242(ptr) AccessChain 213(particleIn) 129 874 129 + 876: 87(fvec4) Load 875 + 877: 18(fvec3) VectorShuffle 876 876 0 1 2 + 878: 18(fvec3) Load 271(pos) + 879: 18(fvec3) FSub 877 878 + Store 709(a) 879 + 881: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 882 882 16 16 + 880: 11(int) Load 149(index) + 883: 159(ptr) AccessChain 125 129 158 16 + 884: 89(int) Load 883 + 885: 11(int) Bitcast 884 + 886: 11(int) IAdd 880 885 + 887: 11(int) ISub 886 38 + 888: 242(ptr) AccessChain 213(particleIn) 129 887 129 + 889: 87(fvec4) Load 888 + 890: 18(fvec3) VectorShuffle 889 889 0 1 2 + 891: 18(fvec3) Load 271(pos) + 892: 18(fvec3) FSub 890 891 + Store 715(b) 892 + 894: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 895 895 16 16 + 893: 11(int) Load 149(index) + 896: 11(int) ISub 893 38 + 897: 242(ptr) AccessChain 213(particleIn) 129 896 129 + 898: 87(fvec4) Load 897 + 899: 18(fvec3) VectorShuffle 898 898 0 1 2 + 900: 18(fvec3) Load 271(pos) + 901: 18(fvec3) FSub 899 900 + Store 719(c) 901 + 903: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 904 904 16 16 + 902: 18(fvec3) Load 709(a) + 905: 18(fvec3) Load 715(b) + 906: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 902 905 + 907: 18(fvec3) Load 715(b) + 908: 18(fvec3) Load 719(c) + 909: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 907 908 + 910: 18(fvec3) FAdd 906 909 + 911: 18(fvec3) Load 702(normal) + 912: 18(fvec3) FAdd 911 910 + Store 702(normal) 912 + Branch 865 + 865: Label + 914: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 857 + 915: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 916 916 16 16 + 913: 147(ptr) AccessChain 60(id) 16 + 917: 11(int) Load 913 + 918: 159(ptr) AccessChain 125 129 158 16 + 919: 89(int) Load 918 + 920: 89(int) ISub 919 250 + 921: 11(int) Bitcast 920 + 922: 177(bool) ULessThan 917 921 + SelectionMerge 924 None + BranchConditional 922 923 924 + 923: Label + 927: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 925 + 928: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 929 929 16 16 + 926: 11(int) Load 149(index) + 930: 11(int) IAdd 926 38 + 931: 242(ptr) AccessChain 213(particleIn) 129 930 129 + 932: 87(fvec4) Load 931 + 933: 18(fvec3) VectorShuffle 932 932 0 1 2 + 934: 18(fvec3) Load 271(pos) + 935: 18(fvec3) FSub 933 934 + Store 709(a) 935 + 937: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 938 938 16 16 + 936: 11(int) Load 149(index) + 939: 159(ptr) AccessChain 125 129 158 16 + 940: 89(int) Load 939 + 941: 11(int) Bitcast 940 + 942: 11(int) IAdd 936 941 + 943: 11(int) IAdd 942 38 + 944: 242(ptr) AccessChain 213(particleIn) 129 943 129 + 945: 87(fvec4) Load 944 + 946: 18(fvec3) VectorShuffle 945 945 0 1 2 + 947: 18(fvec3) Load 271(pos) + 948: 18(fvec3) FSub 946 947 + Store 715(b) 948 + 950: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 951 951 16 16 + 949: 11(int) Load 149(index) + 952: 159(ptr) AccessChain 125 129 158 16 + 953: 89(int) Load 952 + 954: 11(int) Bitcast 953 + 955: 11(int) IAdd 949 954 + 956: 242(ptr) AccessChain 213(particleIn) 129 955 129 + 957: 87(fvec4) Load 956 + 958: 18(fvec3) VectorShuffle 957 957 0 1 2 + 959: 18(fvec3) Load 271(pos) + 960: 18(fvec3) FSub 958 959 + Store 719(c) 960 + 962: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 963 963 16 16 + 961: 18(fvec3) Load 709(a) + 964: 18(fvec3) Load 715(b) + 965: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 961 964 + 966: 18(fvec3) Load 715(b) + 967: 18(fvec3) Load 719(c) + 968: 18(fvec3) ExtInst 3(GLSL.std.450) 68(Cross) 966 967 + 969: 18(fvec3) FAdd 965 968 + 970: 18(fvec3) Load 702(normal) + 971: 18(fvec3) FAdd 970 969 + Store 702(normal) 971 + Branch 924 + 924: Label + Branch 856 + 856: Label + 973: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 701 + 974: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 975 975 16 16 + 972: 11(int) Load 149(index) + 976: 18(fvec3) Load 702(normal) + 977: 18(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 976 + 978: 8(float) CompositeExtract 977 0 + 979: 8(float) CompositeExtract 977 1 + 980: 8(float) CompositeExtract 977 2 + 981: 87(fvec4) CompositeConstruct 978 979 980 251 + 982: 242(ptr) AccessChain 236(particleOut) 129 972 562 + Store 982 981 + Branch 700 + 700: Label + 983: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 64 + 984: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 34 975 975 16 16 Return FunctionEnd diff --git a/Test/baseResults/spv.debuginfo.hlsl.frag.out b/Test/baseResults/spv.debuginfo.hlsl.frag.out index 5d0d7f7c..d8367e10 100644 --- a/Test/baseResults/spv.debuginfo.hlsl.frag.out +++ b/Test/baseResults/spv.debuginfo.hlsl.frag.out @@ -1,7 +1,7 @@ spv.debuginfo.hlsl.frag // Module Version 10000 // Generated by (magic number): 8000b -// Id's are bound by 899 +// Id's are bound by 931 Capability Shader Capability ImageQuery @@ -9,9 +9,9 @@ spv.debuginfo.hlsl.frag 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" 3: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 - EntryPoint Fragment 6 "main" 892 895 + EntryPoint Fragment 6 "main" 924 927 ExecutionMode 6 OriginUpperLeft - 2: String "" + 2: String "spv.debuginfo.hlsl.frag" 9: String "float" 12: String "uint" 38: String "textureProj" @@ -23,6 +23,203 @@ spv.debuginfo.hlsl.frag // OpModuleProcessed keep-uncalled // OpModuleProcessed hlsl-offsets #line 1 +/* +The MIT License (MIT) + +Copyright (c) 2022 Google LLC +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. +*/ + +Texture2D textureposition : register(t1); +SamplerState samplerposition : register(s1); +Texture2D textureNormal : register(t2); +SamplerState samplerNormal : register(s2); +Texture2D textureAlbedo : register(t3); +SamplerState samplerAlbedo : register(s3); +// Depth from the light's point of view +//layout (binding = 5) uniform sampler2DShadow samplerShadowMap; +Texture2DArray textureShadowMap : register(t5); +SamplerState samplerShadowMap : register(s5); + +#define LIGHT_COUNT 3 +#define SHADOW_FACTOR 0.25 +#define AMBIENT_LIGHT 0.1 +#define USE_PCF + +struct Light +{ + float4 position; + float4 target; + float4 color; + float4x4 viewMatrix; +}; + +struct UBO +{ + float4 viewPos; + Light lights[LIGHT_COUNT]; + int useShadows; + int displayDebugTarget; +}; + +cbuffer ubo : register(b4) { UBO ubo; } + +float textureProj(float4 P, float layer, float2 offset) +{ + float shadow = 1.0; + float4 shadowCoord = P / P.w; + shadowCoord.xy = shadowCoord.xy * 0.5 + 0.5; + + if (shadowCoord.z > -1.0 && shadowCoord.z < 1.0) + { + float dist = textureShadowMap.Sample(samplerShadowMap, float3(shadowCoord.xy + offset, layer)).r; + if (shadowCoord.w > 0.0 && dist < shadowCoord.z) + { + shadow = SHADOW_FACTOR; + } + } + return shadow; +} + +float filterPCF(float4 sc, float layer) +{ + int2 texDim; int elements; int levels; + textureShadowMap.GetDimensions(0, texDim.x, texDim.y, elements, levels); + 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, float2(dx*x, dy*y)); + count++; + } + + } + return shadowFactor / count; +} + +float3 shadow(float3 fragcolor, float3 fragPos) { + for (int i = 0; i < LIGHT_COUNT; ++i) + { + float4 shadowClip = mul(ubo.lights[i].viewMatrix, float4(fragPos.xyz, 1.0)); + + float shadowFactor; + #ifdef USE_PCF + shadowFactor= filterPCF(shadowClip, i); + #else + shadowFactor = textureProj(shadowClip, i, float2(0.0, 0.0)); + #endif + + fragcolor *= shadowFactor; + } + return fragcolor; +} + +float4 main([[vk::location(0)]] float2 inUV : TEXCOORD0) : SV_TARGET +{ + // Get G-Buffer values + float3 fragPos = textureposition.Sample(samplerposition, inUV).rgb; + float3 normal = textureNormal.Sample(samplerNormal, inUV).rgb; + float4 albedo = textureAlbedo.Sample(samplerAlbedo, inUV); + + float3 fragcolor; + + // Debug display + if (ubo.displayDebugTarget > 0) { + switch (ubo.displayDebugTarget) { + case 1: + fragcolor.rgb = shadow(float3(1.0, 1.0, 1.0), fragPos); + break; + case 2: + fragcolor.rgb = fragPos; + break; + case 3: + fragcolor.rgb = normal; + break; + case 4: + fragcolor.rgb = albedo.rgb; + break; + case 5: + fragcolor.rgb = albedo.aaa; + break; + } + return float4(fragcolor, 1.0); + } + + // Ambient part + fragcolor = albedo.rgb * AMBIENT_LIGHT; + + float3 N = normalize(normal); + + for(int i = 0; i < LIGHT_COUNT; ++i) + { + // Vector to light + float3 L = ubo.lights[i].position.xyz - fragPos; + // Distance from light to fragment position + float dist = length(L); + L = normalize(L); + + // Viewer to fragment + float3 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 + float3 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)); + float3 diff = NdotL.xxx; + + // Specular lighting + float3 R = reflect(-L, N); + float NdotR = max(0.0, dot(R, V)); + float3 spec = (pow(NdotR, 16.0) * albedo.a * 2.5).xxx; + + fragcolor += float3((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); + } + + return float4(fragcolor, 1); +} " 47: String "P" 53: String "layer" @@ -34,62 +231,63 @@ spv.debuginfo.hlsl.frag 93: String "fragPos" 100: String "@main" 104: String "inUV" - 117: String "shadowCoord" - 144: String "bool" - 155: String "dist" - 162: String "type.2d.image" - 163: String "@type.2d.image" - 169: String "textureShadowMap" - 174: String "type.sampler" - 175: String "@type.sampler" - 180: String "samplerShadowMap" - 184: String "type.sampled.image" - 185: String "@type.sampled.image" - 229: String "sizeQueryTemp" - 236: String "int" - 244: String "texDim" - 260: String "elements" - 267: String "levels" - 274: String "scale" - 281: String "dx" - 293: String "dy" - 305: String "shadowFactor" - 311: String "count" - 318: String "range" - 325: String "x" - 345: String "y" - 410: String "i" - 428: String "shadowClip" - 443: String "color" - 449: String "viewMatrix" - 453: String "Light" - 459: String "lights" - 462: String "displayDebugTarget" - 467: String "UBO" - 470: String "ubo" - 524: String "textureposition" - 529: String "samplerposition" - 539: String "normal" - 545: String "textureNormal" - 550: String "samplerNormal" - 558: String "albedo" - 564: String "textureAlbedo" - 569: String "samplerAlbedo" - 657: String "N" - 681: String "L" - 707: String "V" - 722: String "lightCosInnerAngle" - 729: String "lightCosOuterAngle" - 736: String "lightRange" - 743: String "dir" - 759: String "cosDir" - 768: String "spotEffect" - 778: String "heightAttenuation" - 787: String "NdotL" - 797: String "diff" - 805: String "R" - 815: String "NdotR" - 825: String "spec" + 119: String "shadowCoord" + 146: String "bool" + 158: String "dist" + 165: String "type.2d.image" + 166: String "@type.2d.image" + 172: String "textureShadowMap" + 177: String "type.sampler" + 178: String "@type.sampler" + 183: String "samplerShadowMap" + 187: String "type.sampled.image" + 188: String "@type.sampled.image" + 229: String "int" + 237: String "texDim" + 246: String "elements" + 250: String "levels" + 258: String "sizeQueryTemp" + 282: String "scale" + 289: String "dx" + 301: String "dy" + 313: String "shadowFactor" + 319: String "count" + 326: String "range" + 336: String "x" + 360: String "y" + 428: String "i" + 447: String "shadowClip" + 462: String "color" + 468: String "viewMatrix" + 472: String "Light" + 478: String "lights" + 481: String "displayDebugTarget" + 486: String "UBO" + 489: String "ubo" + 497: String "" + 548: String "textureposition" + 553: String "samplerposition" + 563: String "normal" + 569: String "textureNormal" + 574: String "samplerNormal" + 582: String "albedo" + 588: String "textureAlbedo" + 593: String "samplerAlbedo" + 684: String "N" + 712: String "L" + 738: String "V" + 753: String "lightCosInnerAngle" + 760: String "lightCosOuterAngle" + 767: String "lightRange" + 774: String "dir" + 790: String "cosDir" + 799: String "spotEffect" + 809: String "heightAttenuation" + 818: String "NdotL" + 828: String "diff" + 836: String "R" + 846: String "NdotR" + 856: String "spec" Name 6 "main" Name 36 "textureProj(vf4;f1;vf2;" Name 33 "P" @@ -103,112 +301,112 @@ spv.debuginfo.hlsl.frag Name 81 "fragPos" Name 98 "@main(vf2;" Name 97 "inUV" - Name 109 "shadow" - Name 115 "shadowCoord" - Name 153 "dist" - Name 167 "textureShadowMap" - Name 178 "samplerShadowMap" - Name 227 "sizeQueryTemp" - Name 242 "texDim" - Name 258 "elements" - Name 265 "levels" - Name 272 "scale" - Name 279 "dx" - Name 291 "dy" - Name 303 "shadowFactor" - Name 309 "count" - Name 316 "range" - Name 323 "x" - Name 343 "y" - Name 376 "param" - Name 378 "param" - Name 380 "param" - Name 408 "i" - Name 426 "shadowClip" - Name 441 "Light" - MemberName 441(Light) 0 "position" - MemberName 441(Light) 1 "target" - MemberName 441(Light) 2 "color" - MemberName 441(Light) 3 "viewMatrix" - Name 456 "UBO" - MemberName 456(UBO) 0 "viewPos" - MemberName 456(UBO) 1 "lights" - MemberName 456(UBO) 2 "useShadows" - MemberName 456(UBO) 3 "displayDebugTarget" - Name 468 "ubo" - MemberName 468(ubo) 0 "ubo" - Name 476 "" - Name 484 "shadowFactor" - Name 491 "param" - Name 493 "param" - Name 513 "fragPos" - Name 522 "textureposition" - Name 527 "samplerposition" - Name 537 "normal" - Name 543 "textureNormal" - Name 548 "samplerNormal" - Name 556 "albedo" - Name 562 "textureAlbedo" - Name 567 "samplerAlbedo" - Name 594 "fragcolor" - Name 601 "param" - Name 602 "param" - Name 655 "N" - Name 663 "i" - Name 679 "L" - Name 694 "dist" - Name 705 "V" - Name 720 "lightCosInnerAngle" - Name 727 "lightCosOuterAngle" - Name 734 "lightRange" - Name 741 "dir" - Name 757 "cosDir" - Name 766 "spotEffect" - Name 776 "heightAttenuation" - Name 785 "NdotL" - Name 795 "diff" - Name 803 "R" - Name 813 "NdotR" - Name 823 "spec" - Name 870 "param" - Name 875 "param" - Name 890 "inUV" - Name 892 "inUV" - Name 895 "@entryPointOutput" - Name 896 "param" - Decorate 167(textureShadowMap) Binding 5 - Decorate 167(textureShadowMap) DescriptorSet 0 - Decorate 178(samplerShadowMap) Binding 5 - Decorate 178(samplerShadowMap) DescriptorSet 0 - MemberDecorate 441(Light) 0 Offset 0 - MemberDecorate 441(Light) 1 Offset 16 - MemberDecorate 441(Light) 2 Offset 32 - MemberDecorate 441(Light) 3 RowMajor - MemberDecorate 441(Light) 3 MatrixStride 16 - MemberDecorate 441(Light) 3 Offset 48 - Decorate 454 ArrayStride 112 - MemberDecorate 456(UBO) 0 Offset 0 - MemberDecorate 456(UBO) 1 Offset 16 - MemberDecorate 456(UBO) 2 Offset 352 - MemberDecorate 456(UBO) 3 Offset 356 - Decorate 468(ubo) Block - MemberDecorate 468(ubo) 0 Offset 0 - Decorate 476 Binding 4 - Decorate 476 DescriptorSet 0 - Decorate 522(textureposition) Binding 1 - Decorate 522(textureposition) DescriptorSet 0 - Decorate 527(samplerposition) Binding 1 - Decorate 527(samplerposition) DescriptorSet 0 - Decorate 543(textureNormal) Binding 2 - Decorate 543(textureNormal) DescriptorSet 0 - Decorate 548(samplerNormal) Binding 2 - Decorate 548(samplerNormal) DescriptorSet 0 - Decorate 562(textureAlbedo) Binding 3 - Decorate 562(textureAlbedo) DescriptorSet 0 - Decorate 567(samplerAlbedo) Binding 3 - Decorate 567(samplerAlbedo) DescriptorSet 0 - Decorate 892(inUV) Location 0 - Decorate 895(@entryPointOutput) Location 0 + Name 110 "shadow" + Name 117 "shadowCoord" + Name 156 "dist" + Name 170 "textureShadowMap" + Name 181 "samplerShadowMap" + Name 235 "texDim" + Name 244 "elements" + Name 248 "levels" + Name 256 "sizeQueryTemp" + Name 280 "scale" + Name 287 "dx" + Name 299 "dy" + Name 311 "shadowFactor" + Name 317 "count" + Name 324 "range" + Name 334 "x" + Name 358 "y" + Name 391 "param" + Name 393 "param" + Name 395 "param" + Name 426 "i" + Name 445 "shadowClip" + Name 460 "Light" + MemberName 460(Light) 0 "position" + MemberName 460(Light) 1 "target" + MemberName 460(Light) 2 "color" + MemberName 460(Light) 3 "viewMatrix" + Name 475 "UBO" + MemberName 475(UBO) 0 "viewPos" + MemberName 475(UBO) 1 "lights" + MemberName 475(UBO) 2 "useShadows" + MemberName 475(UBO) 3 "displayDebugTarget" + Name 487 "ubo" + MemberName 487(ubo) 0 "ubo" + Name 495 "" + Name 504 "shadowFactor" + Name 513 "param" + Name 515 "param" + Name 536 "fragPos" + Name 546 "textureposition" + Name 551 "samplerposition" + Name 561 "normal" + Name 567 "textureNormal" + Name 572 "samplerNormal" + Name 580 "albedo" + Name 586 "textureAlbedo" + Name 591 "samplerAlbedo" + Name 598 "fragcolor" + Name 625 "param" + Name 629 "param" + Name 682 "N" + Name 693 "i" + Name 710 "L" + Name 725 "dist" + Name 736 "V" + Name 751 "lightCosInnerAngle" + Name 758 "lightCosOuterAngle" + Name 765 "lightRange" + Name 772 "dir" + Name 788 "cosDir" + Name 797 "spotEffect" + Name 807 "heightAttenuation" + Name 816 "NdotL" + Name 826 "diff" + Name 834 "R" + Name 844 "NdotR" + Name 854 "spec" + Name 902 "param" + Name 907 "param" + Name 922 "inUV" + Name 924 "inUV" + Name 927 "@entryPointOutput" + Name 928 "param" + Decorate 170(textureShadowMap) Binding 5 + Decorate 170(textureShadowMap) DescriptorSet 0 + Decorate 181(samplerShadowMap) Binding 5 + Decorate 181(samplerShadowMap) DescriptorSet 0 + MemberDecorate 460(Light) 0 Offset 0 + MemberDecorate 460(Light) 1 Offset 16 + MemberDecorate 460(Light) 2 Offset 32 + MemberDecorate 460(Light) 3 RowMajor + MemberDecorate 460(Light) 3 MatrixStride 16 + MemberDecorate 460(Light) 3 Offset 48 + Decorate 473 ArrayStride 112 + MemberDecorate 475(UBO) 0 Offset 0 + MemberDecorate 475(UBO) 1 Offset 16 + MemberDecorate 475(UBO) 2 Offset 352 + MemberDecorate 475(UBO) 3 Offset 356 + Decorate 487(ubo) Block + MemberDecorate 487(ubo) 0 Offset 0 + Decorate 495 Binding 4 + Decorate 495 DescriptorSet 0 + Decorate 546(textureposition) Binding 1 + Decorate 546(textureposition) DescriptorSet 0 + Decorate 551(samplerposition) Binding 1 + Decorate 551(samplerposition) DescriptorSet 0 + Decorate 567(textureNormal) Binding 2 + Decorate 567(textureNormal) DescriptorSet 0 + Decorate 572(samplerNormal) Binding 2 + Decorate 572(samplerNormal) DescriptorSet 0 + Decorate 586(textureAlbedo) Binding 3 + Decorate 586(textureAlbedo) DescriptorSet 0 + Decorate 591(samplerAlbedo) Binding 3 + Decorate 591(samplerAlbedo) DescriptorSet 0 + Decorate 924(inUV) Location 0 + Decorate 927(@entryPointOutput) Location 0 4: TypeVoid 5: TypeFunction 4 8: TypeFloat 32 @@ -265,233 +463,255 @@ spv.debuginfo.hlsl.frag 102: 11(int) Constant 119 101: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 100 96 40 102 16 43 100 17 102 103: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 104 28 40 102 16 101 19 44 - 111: 11(int) Constant 62 - 110: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 84 10 40 111 16 39 19 - 114: 8(float) Constant 1065353216 - 118: 11(int) Constant 63 - 116: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 117 20 40 118 16 39 19 - 128: 11(int) Constant 64 - 130: 8(float) Constant 1056964608 - 140: 11(int) Constant 66 - 142: 8(float) Constant 3212836864 - 143: TypeBool - 145: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 144 14 27 16 - 156: 11(int) Constant 68 - 154: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 155 10 40 156 16 39 19 - 160: TypeImage 8(float) 2D array sampled format:Unknown - 164: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone) - 161: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 162 16 40 156 16 43 163 164 17 - 165: TypePointer UniformConstant 160 - 166: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 161 16 16 -167(textureShadowMap): 165(ptr) Variable UniformConstant - 170: 11(int) Constant 8 - 168: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 169 161 40 156 16 43 169 167(textureShadowMap) 170 - 172: TypeSampler - 173: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 174 44 40 156 16 43 175 164 17 - 176: TypePointer UniformConstant 172 - 177: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 173 16 16 -178(samplerShadowMap): 176(ptr) Variable UniformConstant - 179: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 180 173 40 156 16 43 180 178(samplerShadowMap) 170 - 182: TypeSampledImage 160 - 183: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 184 16 40 156 16 43 185 164 17 - 199: 11(int) Constant 69 - 201: 8(float) Constant 0 - 210: 8(float) Constant 1048576000 - 213: 11(int) Constant 71 - 217: 11(int) Constant 74 - 223: TypeVector 11(int) 3 - 224: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 13 17 - 225: TypePointer Function 223(ivec3) - 226: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 224 22 16 - 230: 11(int) Constant 80 - 228: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 229 224 40 230 16 65 19 - 235: TypeInt 32 1 - 237: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 236 14 19 16 - 238: TypeVector 235(int) 2 - 239: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 237 27 - 240: TypePointer Function 238(ivec2) - 241: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 239 22 16 - 243: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 244 239 40 230 16 65 19 - 246: TypePointer Function 11(int) - 247: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 13 22 16 - 251: TypePointer Function 235(int) - 252: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 237 22 16 - 259: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 260 237 40 230 16 65 19 - 266: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 267 237 40 230 16 65 19 - 275: 11(int) Constant 81 - 273: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 274 10 40 275 16 65 19 - 278: 8(float) Constant 1069547520 - 282: 11(int) Constant 82 - 280: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 281 10 40 282 16 65 19 - 294: 11(int) Constant 83 - 292: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 293 10 40 294 16 65 19 - 306: 11(int) Constant 85 - 304: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 305 10 40 306 16 65 19 - 312: 11(int) Constant 86 - 310: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 311 237 40 312 16 65 19 - 315: 235(int) Constant 0 - 319: 11(int) Constant 87 - 317: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 318 237 40 319 16 65 19 - 322: 235(int) Constant 1 - 326: 11(int) Constant 89 - 324: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 325 237 40 326 16 65 19 - 346: 11(int) Constant 91 - 344: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 345 237 40 346 16 65 19 - 367: 11(int) Constant 93 - 386: 11(int) Constant 94 - 399: 11(int) Constant 98 - 411: 11(int) Constant 102 - 409: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 410 237 40 411 16 85 19 - 424: 235(int) Constant 3 - 429: 11(int) Constant 104 - 427: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 428 20 40 429 16 85 19 - 438: TypeMatrix 18(fvec4) 4 - 440: 143(bool) ConstantTrue - 439: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 20 19 440 - 441(Light): TypeStruct 18(fvec4) 18(fvec4) 18(fvec4) 438 - 444: 11(int) Constant 46 - 445: 11(int) Constant 14 - 442: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 443 20 40 444 445 16 16 17 - 446: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 443 20 40 444 445 16 16 17 - 447: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 443 20 40 444 445 16 16 17 - 450: 11(int) Constant 47 - 451: 11(int) Constant 21 - 448: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 449 439 40 450 451 16 16 17 - 452: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 453 44 40 429 16 43 453 16 17 442 446 447 448 - 454: TypeArray 441(Light) 17 - 455: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 452 17 - 456(UBO): TypeStruct 18(fvec4) 454 235(int) 235(int) - 457: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 443 20 40 444 445 16 16 17 - 460: 11(int) Constant 53 - 458: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 459 455 40 460 445 16 16 17 - 463: 11(int) Constant 55 - 464: 11(int) Constant 24 - 461: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 462 237 40 463 464 16 16 17 - 465: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 462 237 40 463 464 16 16 17 - 466: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 467 44 40 429 16 43 467 16 17 457 458 461 465 - 468(ubo): TypeStruct 456(UBO) - 471: 11(int) Constant 58 - 472: 11(int) Constant 37 - 469: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 470 466 40 471 472 16 16 17 - 473: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 470 44 40 429 16 43 470 16 17 469 - 474: TypePointer Uniform 468(ubo) - 475: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 473 27 16 - 476: 474(ptr) Variable Uniform - 477: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 2 473 40 429 16 43 2 476 170 - 479: TypePointer Uniform 438 - 480: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 439 27 16 - 486: 11(int) Constant 108 - 485: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 305 10 40 486 16 85 19 - 497: 11(int) Constant 113 - 507: 11(int) Constant 115 - 515: 11(int) Constant 121 - 514: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 93 75 40 515 16 101 19 - 518: TypeImage 8(float) 2D sampled format:Unknown - 519: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 162 16 40 515 16 43 163 164 17 - 520: TypePointer UniformConstant 518 - 521: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 519 16 16 -522(textureposition): 520(ptr) Variable UniformConstant - 523: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 524 519 40 515 16 43 524 522(textureposition) 170 - 526: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 174 44 40 515 16 43 175 164 17 -527(samplerposition): 176(ptr) Variable UniformConstant - 528: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 529 526 40 515 16 43 529 527(samplerposition) 170 - 531: TypeSampledImage 518 - 532: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 184 16 40 515 16 43 185 164 17 - 540: 11(int) Constant 122 - 538: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 539 75 40 540 16 101 19 -543(textureNormal): 520(ptr) Variable UniformConstant - 544: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 545 519 40 540 16 43 545 543(textureNormal) 170 - 547: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 174 44 40 540 16 43 175 164 17 -548(samplerNormal): 176(ptr) Variable UniformConstant - 549: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 550 547 40 540 16 43 550 548(samplerNormal) 170 - 559: 11(int) Constant 123 - 557: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 558 20 40 559 16 101 19 -562(textureAlbedo): 520(ptr) Variable UniformConstant - 563: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 564 519 40 559 16 43 564 562(textureAlbedo) 170 - 566: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 174 44 40 559 16 43 175 164 17 -567(samplerAlbedo): 176(ptr) Variable UniformConstant - 568: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 569 566 40 559 16 43 569 567(samplerAlbedo) 170 - 574: TypePointer Uniform 235(int) - 575: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 237 27 16 - 578: 11(int) Constant 128 - 586: 11(int) Constant 129 - 596: 11(int) Constant 131 - 595: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 88 75 40 596 16 101 19 - 600: 74(fvec3) ConstantComposite 114 114 114 - 606: 11(int) Constant 132 - 611: 11(int) Constant 134 - 613: 11(int) Constant 135 - 618: 11(int) Constant 137 - 620: 11(int) Constant 138 - 625: 11(int) Constant 140 - 628: 11(int) Constant 141 - 633: 11(int) Constant 143 - 636: 11(int) Constant 144 - 642: 11(int) Constant 146 - 651: 11(int) Constant 150 - 653: 8(float) Constant 1036831949 - 658: 11(int) Constant 152 - 656: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 657 75 40 658 16 101 19 - 665: 11(int) Constant 154 - 664: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 410 237 40 665 16 101 19 - 682: 11(int) Constant 157 - 680: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 681 75 40 682 16 101 19 - 687: TypePointer Uniform 18(fvec4) - 688: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 27 16 - 696: 11(int) Constant 159 - 695: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 155 10 40 696 16 101 19 - 703: 11(int) Constant 160 - 708: 11(int) Constant 163 - 706: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 707 75 40 708 16 101 19 - 718: 11(int) Constant 164 - 723: 11(int) Constant 166 - 721: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 722 10 40 723 16 101 19 - 726: 8(float) Constant 1064781546 - 730: 11(int) Constant 167 - 728: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 729 10 40 730 16 101 19 - 733: 8(float) Constant 1063781322 - 737: 11(int) Constant 168 - 735: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 736 10 40 737 16 101 19 - 740: 8(float) Constant 1120403456 - 744: 11(int) Constant 171 - 742: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 743 75 40 744 16 101 19 - 760: 11(int) Constant 174 - 758: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 759 10 40 760 16 101 19 - 769: 11(int) Constant 175 - 767: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 768 10 40 769 16 101 19 - 779: 11(int) Constant 176 - 777: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 778 10 40 779 16 101 19 - 788: 11(int) Constant 179 - 786: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 787 10 40 788 16 101 19 - 798: 11(int) Constant 180 - 796: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 797 75 40 798 16 101 19 - 806: 11(int) Constant 183 - 804: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 805 75 40 806 16 101 19 - 816: 11(int) Constant 184 - 814: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 815 10 40 816 16 101 19 - 826: 11(int) Constant 185 - 824: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 825 75 40 826 16 101 19 - 830: 8(float) Constant 1098907648 - 835: 8(float) Constant 1075838976 - 840: 11(int) Constant 187 - 848: 235(int) Constant 2 - 865: 11(int) Constant 191 - 874: 11(int) Constant 193 - 881: 11(int) Constant 196 - 891: TypePointer Input 26(fvec2) - 892(inUV): 891(ptr) Variable Input - 894: TypePointer Output 18(fvec4) -895(@entryPointOutput): 894(ptr) Variable Output + 109: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 39 + 112: 11(int) Constant 62 + 111: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 84 10 40 112 16 109 19 + 116: 8(float) Constant 1065353216 + 120: 11(int) Constant 63 + 118: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 119 20 40 120 16 109 19 + 130: 11(int) Constant 64 + 132: 8(float) Constant 1056964608 + 142: 11(int) Constant 66 + 144: 8(float) Constant 3212836864 + 145: TypeBool + 147: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 146 14 27 16 + 155: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 109 + 159: 11(int) Constant 68 + 157: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 158 10 40 159 16 155 19 + 163: TypeImage 8(float) 2D array sampled format:Unknown + 167: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone) + 164: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 165 16 40 159 16 43 166 167 17 + 168: TypePointer UniformConstant 163 + 169: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 164 16 16 +170(textureShadowMap): 168(ptr) Variable UniformConstant + 173: 11(int) Constant 8 + 171: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 172 164 40 159 16 43 172 170(textureShadowMap) 173 + 175: TypeSampler + 176: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 177 44 40 159 16 43 178 167 17 + 179: TypePointer UniformConstant 175 + 180: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 176 16 16 +181(samplerShadowMap): 179(ptr) Variable UniformConstant + 182: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 183 176 40 159 16 43 183 181(samplerShadowMap) 173 + 185: TypeSampledImage 163 + 186: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 187 16 40 159 16 43 188 167 17 + 202: 11(int) Constant 69 + 204: 8(float) Constant 0 + 213: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 155 + 214: 8(float) Constant 1048576000 + 217: 11(int) Constant 71 + 221: 11(int) Constant 74 + 227: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 65 + 228: TypeInt 32 1 + 230: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 229 14 19 16 + 231: TypeVector 228(int) 2 + 232: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 230 27 + 233: TypePointer Function 231(ivec2) + 234: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 232 22 16 + 238: 11(int) Constant 79 + 236: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 237 232 40 238 16 227 19 + 242: TypePointer Function 228(int) + 243: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 230 22 16 + 245: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 246 230 40 238 16 227 19 + 249: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 250 230 40 238 16 227 19 + 252: TypeVector 11(int) 3 + 253: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 13 17 + 254: TypePointer Function 252(ivec3) + 255: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 253 22 16 + 259: 11(int) Constant 80 + 257: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 258 253 40 259 16 227 19 + 264: TypePointer Function 11(int) + 265: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 13 22 16 + 283: 11(int) Constant 81 + 281: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 282 10 40 283 16 227 19 + 286: 8(float) Constant 1069547520 + 290: 11(int) Constant 82 + 288: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 289 10 40 290 16 227 19 + 302: 11(int) Constant 83 + 300: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 301 10 40 302 16 227 19 + 314: 11(int) Constant 85 + 312: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 313 10 40 314 16 227 19 + 320: 11(int) Constant 86 + 318: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 319 230 40 320 16 227 19 + 323: 228(int) Constant 0 + 327: 11(int) Constant 87 + 325: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 326 230 40 327 16 227 19 + 330: 228(int) Constant 1 + 332: 11(int) Constant 89 + 333: 11(int) Constant 11 + 331: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 332 333 227 + 335: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 336 230 40 332 16 331 19 + 354: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 331 + 356: 11(int) Constant 91 + 357: 11(int) Constant 12 + 355: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 356 357 354 + 359: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 360 230 40 356 16 355 19 + 378: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 355 + 382: 11(int) Constant 93 + 401: 11(int) Constant 94 + 414: 11(int) Constant 98 + 423: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 85 + 425: 11(int) Constant 102 + 424: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 425 333 423 + 427: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 428 230 40 425 16 424 19 + 442: 228(int) Constant 3 + 444: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 424 + 448: 11(int) Constant 104 + 446: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 447 20 40 448 16 444 19 + 457: TypeMatrix 18(fvec4) 4 + 459: 145(bool) ConstantTrue + 458: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 20 19 459 + 460(Light): TypeStruct 18(fvec4) 18(fvec4) 18(fvec4) 457 + 463: 11(int) Constant 46 + 464: 11(int) Constant 14 + 461: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 462 20 40 463 464 16 16 17 + 465: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 462 20 40 463 464 16 16 17 + 466: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 462 20 40 463 464 16 16 17 + 469: 11(int) Constant 47 + 470: 11(int) Constant 21 + 467: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 468 458 40 469 470 16 16 17 + 471: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 472 44 40 448 16 43 472 16 17 461 465 466 467 + 473: TypeArray 460(Light) 17 + 474: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 471 17 + 475(UBO): TypeStruct 18(fvec4) 473 228(int) 228(int) + 476: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 462 20 40 463 464 16 16 17 + 479: 11(int) Constant 53 + 477: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 478 474 40 479 464 16 16 17 + 482: 11(int) Constant 55 + 483: 11(int) Constant 24 + 480: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 481 230 40 482 483 16 16 17 + 484: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 481 230 40 482 483 16 16 17 + 485: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 486 44 40 448 16 43 486 16 17 476 477 480 484 + 487(ubo): TypeStruct 475(UBO) + 490: 11(int) Constant 58 + 491: 11(int) Constant 37 + 488: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 489 485 40 490 491 16 16 17 + 492: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 489 44 40 448 16 43 489 16 17 488 + 493: TypePointer Uniform 487(ubo) + 494: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 492 27 16 + 495: 493(ptr) Variable Uniform + 496: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 497 492 40 448 16 43 497 495 173 + 499: TypePointer Uniform 457 + 500: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 458 27 16 + 506: 11(int) Constant 106 + 505: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 313 10 40 506 16 444 19 + 511: 11(int) Constant 108 + 519: 11(int) Constant 113 + 529: 11(int) Constant 115 + 535: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 101 + 538: 11(int) Constant 121 + 537: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 93 75 40 538 16 535 19 + 542: TypeImage 8(float) 2D sampled format:Unknown + 543: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 165 16 40 538 16 43 166 167 17 + 544: TypePointer UniformConstant 542 + 545: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 543 16 16 +546(textureposition): 544(ptr) Variable UniformConstant + 547: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 548 543 40 538 16 43 548 546(textureposition) 173 + 550: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 177 44 40 538 16 43 178 167 17 +551(samplerposition): 179(ptr) Variable UniformConstant + 552: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 553 550 40 538 16 43 553 551(samplerposition) 173 + 555: TypeSampledImage 542 + 556: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 187 16 40 538 16 43 188 167 17 + 564: 11(int) Constant 122 + 562: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 563 75 40 564 16 535 19 +567(textureNormal): 544(ptr) Variable UniformConstant + 568: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 569 543 40 564 16 43 569 567(textureNormal) 173 + 571: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 177 44 40 564 16 43 178 167 17 +572(samplerNormal): 179(ptr) Variable UniformConstant + 573: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 574 571 40 564 16 43 574 572(samplerNormal) 173 + 583: 11(int) Constant 123 + 581: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 582 20 40 583 16 535 19 +586(textureAlbedo): 544(ptr) Variable UniformConstant + 587: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 588 543 40 583 16 43 588 586(textureAlbedo) 173 + 590: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 177 44 40 583 16 43 178 167 17 +591(samplerAlbedo): 179(ptr) Variable UniformConstant + 592: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 593 590 40 583 16 43 593 591(samplerAlbedo) 173 + 600: 11(int) Constant 125 + 599: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 88 75 40 600 16 535 19 + 603: TypePointer Uniform 228(int) + 604: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 230 27 16 + 607: 11(int) Constant 128 + 612: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 535 + 616: 11(int) Constant 129 + 624: 74(fvec3) ConstantComposite 116 116 116 + 628: 11(int) Constant 131 + 633: 11(int) Constant 132 + 638: 11(int) Constant 134 + 640: 11(int) Constant 135 + 645: 11(int) Constant 137 + 647: 11(int) Constant 138 + 652: 11(int) Constant 140 + 655: 11(int) Constant 141 + 660: 11(int) Constant 143 + 663: 11(int) Constant 144 + 669: 11(int) Constant 146 + 678: 11(int) Constant 150 + 680: 8(float) Constant 1036831949 + 685: 11(int) Constant 152 + 683: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 684 75 40 685 16 535 19 + 691: 11(int) Constant 154 + 692: 11(int) Constant 10 + 690: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 691 692 535 + 694: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 428 230 40 691 16 690 19 + 709: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 690 + 713: 11(int) Constant 157 + 711: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 712 75 40 713 16 709 19 + 718: TypePointer Uniform 18(fvec4) + 719: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 27 16 + 727: 11(int) Constant 159 + 726: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 158 10 40 727 16 709 19 + 734: 11(int) Constant 160 + 739: 11(int) Constant 163 + 737: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 738 75 40 739 16 709 19 + 749: 11(int) Constant 164 + 754: 11(int) Constant 166 + 752: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 753 10 40 754 16 709 19 + 757: 8(float) Constant 1064781546 + 761: 11(int) Constant 167 + 759: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 760 10 40 761 16 709 19 + 764: 8(float) Constant 1063781322 + 768: 11(int) Constant 168 + 766: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 767 10 40 768 16 709 19 + 771: 8(float) Constant 1120403456 + 775: 11(int) Constant 171 + 773: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 774 75 40 775 16 709 19 + 791: 11(int) Constant 174 + 789: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 790 10 40 791 16 709 19 + 800: 11(int) Constant 175 + 798: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 799 10 40 800 16 709 19 + 810: 11(int) Constant 176 + 808: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 809 10 40 810 16 709 19 + 819: 11(int) Constant 179 + 817: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 818 10 40 819 16 709 19 + 829: 11(int) Constant 180 + 827: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 828 75 40 829 16 709 19 + 837: 11(int) Constant 183 + 835: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 836 75 40 837 16 709 19 + 847: 11(int) Constant 184 + 845: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 846 10 40 847 16 709 19 + 857: 11(int) Constant 185 + 855: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 856 75 40 857 16 709 19 + 861: 8(float) Constant 1098907648 + 866: 8(float) Constant 1075838976 + 871: 11(int) Constant 187 + 879: 228(int) Constant 2 + 896: 11(int) Constant 191 + 901: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 40 16 16 535 + 906: 11(int) Constant 193 + 913: 11(int) Constant 196 + 923: TypePointer Input 26(fvec2) + 924(inUV): 923(ptr) Variable Input + 926: TypePointer Output 18(fvec4) +927(@entryPointOutput): 926(ptr) Variable Output 6(main): 4 Function None 5 7: Label - 890(inUV): 29(ptr) Variable Function - 896(param): 29(ptr) Variable Function - 893: 26(fvec2) Load 892(inUV) - Store 890(inUV) 893 - 897: 26(fvec2) Load 890(inUV) - Store 896(param) 897 - 898: 18(fvec4) FunctionCall 98(@main(vf2;) 896(param) - Store 895(@entryPointOutput) 898 + 922(inUV): 29(ptr) Variable Function + 928(param): 29(ptr) Variable Function + 925: 26(fvec2) Load 924(inUV) + Store 922(inUV) 925 + 929: 26(fvec2) Load 922(inUV) + Store 928(param) 929 + 930: 18(fvec4) FunctionCall 98(@main(vf2;) 928(param) + Store 927(@entryPointOutput) 930 Return FunctionEnd 36(textureProj(vf4;f1;vf2;): 8(float) Function None 31 @@ -499,644 +719,653 @@ spv.debuginfo.hlsl.frag 34(layer): 24(ptr) FunctionParameter 35(offset): 29(ptr) FunctionParameter 37: Label - 109(shadow): 24(ptr) Variable Function -115(shadowCoord): 21(ptr) Variable Function - 153(dist): 24(ptr) Variable Function + 110(shadow): 24(ptr) Variable Function +117(shadowCoord): 21(ptr) Variable Function + 156(dist): 24(ptr) Variable Function 50: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 39 51: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 42 42 16 16 48: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 46 33(P) 49 54: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 52 34(layer) 49 57: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 55 35(offset) 49 108: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 39 36(textureProj(vf4;f1;vf2;) - 113: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 111 111 16 16 - 112: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 110 109(shadow) 49 - Store 109(shadow) 114 - 120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 118 118 16 16 - 119: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 116 115(shadowCoord) 49 - 121: 18(fvec4) Load 33(P) - 122: 24(ptr) AccessChain 33(P) 17 - 123: 8(float) Load 122 - 124: 18(fvec4) CompositeConstruct 123 123 123 123 - 125: 18(fvec4) FDiv 121 124 - Store 115(shadowCoord) 125 - 127: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 128 128 16 16 - 126: 18(fvec4) Load 115(shadowCoord) - 129: 26(fvec2) VectorShuffle 126 126 0 1 - 131: 26(fvec2) VectorTimesScalar 129 130 - 132: 26(fvec2) CompositeConstruct 130 130 - 133: 26(fvec2) FAdd 131 132 - 134: 24(ptr) AccessChain 115(shadowCoord) 16 - 135: 8(float) CompositeExtract 133 0 - Store 134 135 - 136: 24(ptr) AccessChain 115(shadowCoord) 44 - 137: 8(float) CompositeExtract 133 1 + 114: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 109 + 115: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 112 112 16 16 + 113: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 111 110(shadow) 49 + Store 110(shadow) 116 + 122: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 120 120 16 16 + 121: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 118 117(shadowCoord) 49 + 123: 18(fvec4) Load 33(P) + 124: 24(ptr) AccessChain 33(P) 17 + 125: 8(float) Load 124 + 126: 18(fvec4) CompositeConstruct 125 125 125 125 + 127: 18(fvec4) FDiv 123 126 + Store 117(shadowCoord) 127 + 129: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 130 130 16 16 + 128: 18(fvec4) Load 117(shadowCoord) + 131: 26(fvec2) VectorShuffle 128 128 0 1 + 133: 26(fvec2) VectorTimesScalar 131 132 + 134: 26(fvec2) CompositeConstruct 132 132 + 135: 26(fvec2) FAdd 133 134 + 136: 24(ptr) AccessChain 117(shadowCoord) 16 + 137: 8(float) CompositeExtract 135 0 Store 136 137 - 139: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 140 140 16 16 - 138: 24(ptr) AccessChain 115(shadowCoord) 27 - 141: 8(float) Load 138 - 146: 143(bool) FOrdGreaterThan 141 142 - 147: 24(ptr) AccessChain 115(shadowCoord) 27 - 148: 8(float) Load 147 - 149: 143(bool) FOrdLessThan 148 114 - 150: 143(bool) LogicalAnd 146 149 - SelectionMerge 152 None - BranchConditional 150 151 152 - 151: Label - 158: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 39 - 159: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 156 156 16 16 - 157: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 154 153(dist) 49 - 171: 160 Load 167(textureShadowMap) - 181: 172 Load 178(samplerShadowMap) - 186: 182 SampledImage 171 181 - 187: 18(fvec4) Load 115(shadowCoord) - 188: 26(fvec2) VectorShuffle 187 187 0 1 - 189: 26(fvec2) Load 35(offset) - 190: 26(fvec2) FAdd 188 189 - 191: 8(float) Load 34(layer) - 192: 8(float) CompositeExtract 190 0 - 193: 8(float) CompositeExtract 190 1 - 194: 74(fvec3) CompositeConstruct 192 193 191 - 195: 18(fvec4) ImageSampleImplicitLod 186 194 - 196: 8(float) CompositeExtract 195 0 - Store 153(dist) 196 - 198: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 199 199 16 16 - 197: 24(ptr) AccessChain 115(shadowCoord) 17 - 200: 8(float) Load 197 - 202: 143(bool) FOrdGreaterThan 200 201 - 203: 8(float) Load 153(dist) - 204: 24(ptr) AccessChain 115(shadowCoord) 27 - 205: 8(float) Load 204 - 206: 143(bool) FOrdLessThan 203 205 - 207: 143(bool) LogicalAnd 202 206 - SelectionMerge 209 None - BranchConditional 207 208 209 - 208: Label - 211: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 39 - 212: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 213 213 16 16 - Store 109(shadow) 210 - Branch 209 - 209: Label - Branch 152 - 152: Label - 215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 39 - 216: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 217 217 16 16 - 214: 8(float) Load 109(shadow) - ReturnValue 214 + 138: 24(ptr) AccessChain 117(shadowCoord) 44 + 139: 8(float) CompositeExtract 135 1 + Store 138 139 + 141: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 142 142 16 16 + 140: 24(ptr) AccessChain 117(shadowCoord) 27 + 143: 8(float) Load 140 + 148: 145(bool) FOrdGreaterThan 143 144 + 149: 24(ptr) AccessChain 117(shadowCoord) 27 + 150: 8(float) Load 149 + 151: 145(bool) FOrdLessThan 150 116 + 152: 145(bool) LogicalAnd 148 151 + SelectionMerge 154 None + BranchConditional 152 153 154 + 153: Label + 161: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 155 + 162: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 159 159 16 16 + 160: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 157 156(dist) 49 + 174: 163 Load 170(textureShadowMap) + 184: 175 Load 181(samplerShadowMap) + 189: 185 SampledImage 174 184 + 190: 18(fvec4) Load 117(shadowCoord) + 191: 26(fvec2) VectorShuffle 190 190 0 1 + 192: 26(fvec2) Load 35(offset) + 193: 26(fvec2) FAdd 191 192 + 194: 8(float) Load 34(layer) + 195: 8(float) CompositeExtract 193 0 + 196: 8(float) CompositeExtract 193 1 + 197: 74(fvec3) CompositeConstruct 195 196 194 + 198: 18(fvec4) ImageSampleImplicitLod 189 197 + 199: 8(float) CompositeExtract 198 0 + Store 156(dist) 199 + 201: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 202 202 16 16 + 200: 24(ptr) AccessChain 117(shadowCoord) 17 + 203: 8(float) Load 200 + 205: 145(bool) FOrdGreaterThan 203 204 + 206: 8(float) Load 156(dist) + 207: 24(ptr) AccessChain 117(shadowCoord) 27 + 208: 8(float) Load 207 + 209: 145(bool) FOrdLessThan 206 208 + 210: 145(bool) LogicalAnd 205 209 + SelectionMerge 212 None + BranchConditional 210 211 212 + 211: Label + 215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 213 + 216: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 217 217 16 16 + Store 110(shadow) 214 + Branch 212 + 212: Label + Branch 154 + 154: Label + 219: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 109 + 220: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 221 221 16 16 + 218: 8(float) Load 110(shadow) + ReturnValue 218 FunctionEnd 62(filterPCF(vf4;f1;): 8(float) Function None 58 60(sc): 21(ptr) FunctionParameter 61(layer): 24(ptr) FunctionParameter 63: Label -227(sizeQueryTemp): 225(ptr) Variable Function - 242(texDim): 240(ptr) Variable Function - 258(elements): 251(ptr) Variable Function - 265(levels): 251(ptr) Variable Function - 272(scale): 24(ptr) Variable Function - 279(dx): 24(ptr) Variable Function - 291(dy): 24(ptr) Variable Function -303(shadowFactor): 24(ptr) Variable Function - 309(count): 251(ptr) Variable Function - 316(range): 251(ptr) Variable Function - 323(x): 251(ptr) Variable Function - 343(y): 251(ptr) Variable Function - 376(param): 21(ptr) Variable Function - 378(param): 24(ptr) Variable Function - 380(param): 29(ptr) Variable Function + 235(texDim): 233(ptr) Variable Function + 244(elements): 242(ptr) Variable Function + 248(levels): 242(ptr) Variable Function +256(sizeQueryTemp): 254(ptr) Variable Function + 280(scale): 24(ptr) Variable Function + 287(dx): 24(ptr) Variable Function + 299(dy): 24(ptr) Variable Function +311(shadowFactor): 24(ptr) Variable Function + 317(count): 242(ptr) Variable Function + 324(range): 242(ptr) Variable Function + 334(x): 242(ptr) Variable Function + 358(y): 242(ptr) Variable Function + 391(param): 21(ptr) Variable Function + 393(param): 24(ptr) Variable Function + 395(param): 29(ptr) Variable Function 70: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 71: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 66 66 16 16 69: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 67 60(sc) 49 73: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 72 61(layer) 49 - 222: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 65 62(filterPCF(vf4;f1;) - 232: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 230 230 16 16 - 231: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 228 227(sizeQueryTemp) 49 - 233: 160 Load 167(textureShadowMap) - 234: 223(ivec3) ImageQuerySizeLod 233 16 - Store 227(sizeQueryTemp) 234 - 245: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 243 242(texDim) 49 - 248: 246(ptr) AccessChain 227(sizeQueryTemp) 16 - 249: 11(int) Load 248 - 250: 235(int) Bitcast 249 - 253: 251(ptr) AccessChain 242(texDim) 16 - Store 253 250 - 254: 246(ptr) AccessChain 227(sizeQueryTemp) 44 - 255: 11(int) Load 254 - 256: 235(int) Bitcast 255 - 257: 251(ptr) AccessChain 242(texDim) 44 - Store 257 256 - 261: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 259 258(elements) 49 - 262: 246(ptr) AccessChain 227(sizeQueryTemp) 27 - 263: 11(int) Load 262 - 264: 235(int) Bitcast 263 - Store 258(elements) 264 - 268: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 266 265(levels) 49 - 269: 160 Load 167(textureShadowMap) - 270: 11(int) ImageQueryLevels 269 - 271: 235(int) Bitcast 270 - Store 265(levels) 271 - 277: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 275 275 16 16 - 276: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 273 272(scale) 49 - Store 272(scale) 278 - 284: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 282 282 16 16 - 283: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 280 279(dx) 49 - 285: 8(float) Load 272(scale) - 286: 8(float) FMul 285 114 - 287: 251(ptr) AccessChain 242(texDim) 16 - 288: 235(int) Load 287 - 289: 8(float) ConvertSToF 288 - 290: 8(float) FDiv 286 289 - Store 279(dx) 290 - 296: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 294 294 16 16 - 295: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 292 291(dy) 49 - 297: 8(float) Load 272(scale) - 298: 8(float) FMul 297 114 - 299: 251(ptr) AccessChain 242(texDim) 44 - 300: 235(int) Load 299 - 301: 8(float) ConvertSToF 300 - 302: 8(float) FDiv 298 301 - Store 291(dy) 302 - 308: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 306 306 16 16 - 307: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 304 303(shadowFactor) 49 - Store 303(shadowFactor) 201 - 314: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 312 312 16 16 - 313: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 310 309(count) 49 - Store 309(count) 315 - 321: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 319 319 16 16 - 320: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 317 316(range) 49 - Store 316(range) 322 - 328: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 326 326 16 16 - 327: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 324 323(x) 49 - 329: 235(int) Load 316(range) - 330: 235(int) SNegate 329 - Store 323(x) 330 - Branch 331 - 331: Label - 335: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 336: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 326 326 16 16 - LoopMerge 333 334 None - Branch 337 - 337: Label - 339: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 340: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 326 326 16 16 - 338: 235(int) Load 323(x) - 341: 235(int) Load 316(range) - 342: 143(bool) SLessThanEqual 338 341 - BranchConditional 342 332 333 - 332: Label - 348: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 349: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 346 346 16 16 - 347: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 344 343(y) 49 - 350: 235(int) Load 316(range) - 351: 235(int) SNegate 350 - Store 343(y) 351 - Branch 352 - 352: Label - 356: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 357: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 346 346 16 16 - LoopMerge 354 355 None - Branch 358 - 358: Label - 360: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 361: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 346 346 16 16 - 359: 235(int) Load 343(y) - 362: 235(int) Load 316(range) - 363: 143(bool) SLessThanEqual 359 362 - BranchConditional 363 353 354 - 353: Label - 365: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 366: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 367 367 16 16 - 364: 8(float) Load 279(dx) - 368: 235(int) Load 323(x) - 369: 8(float) ConvertSToF 368 - 370: 8(float) FMul 364 369 - 371: 8(float) Load 291(dy) - 372: 235(int) Load 343(y) - 373: 8(float) ConvertSToF 372 - 374: 8(float) FMul 371 373 - 375: 26(fvec2) CompositeConstruct 370 374 - 377: 18(fvec4) Load 60(sc) - Store 376(param) 377 - 379: 8(float) Load 61(layer) - Store 378(param) 379 - Store 380(param) 375 - 381: 8(float) FunctionCall 36(textureProj(vf4;f1;vf2;) 376(param) 378(param) 380(param) - 382: 8(float) Load 303(shadowFactor) - 383: 8(float) FAdd 382 381 - Store 303(shadowFactor) 383 - 385: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 386 386 16 16 - 384: 235(int) Load 309(count) - 387: 235(int) IAdd 384 322 - Store 309(count) 387 - Branch 355 - 355: Label - 389: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 390: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 346 346 16 16 - 388: 235(int) Load 343(y) - 391: 235(int) IAdd 388 322 - Store 343(y) 391 - Branch 352 - 354: Label - Branch 334 - 334: Label - 393: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 394: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 326 326 16 16 - 392: 235(int) Load 323(x) - 395: 235(int) IAdd 392 322 - Store 323(x) 395 - Branch 331 - 333: Label - 397: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 65 - 398: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 399 399 16 16 - 396: 8(float) Load 303(shadowFactor) - 400: 235(int) Load 309(count) - 401: 8(float) ConvertSToF 400 - 402: 8(float) FDiv 396 401 - ReturnValue 402 + 226: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 65 62(filterPCF(vf4;f1;) + 240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 227 + 241: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 238 238 16 16 + 239: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 236 235(texDim) 49 + 247: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 245 244(elements) 49 + 251: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 249 248(levels) 49 + 261: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 259 259 16 16 + 260: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 257 256(sizeQueryTemp) 49 + 262: 163 Load 170(textureShadowMap) + 263: 252(ivec3) ImageQuerySizeLod 262 16 + Store 256(sizeQueryTemp) 263 + 266: 264(ptr) AccessChain 256(sizeQueryTemp) 16 + 267: 11(int) Load 266 + 268: 228(int) Bitcast 267 + 269: 242(ptr) AccessChain 235(texDim) 16 + Store 269 268 + 270: 264(ptr) AccessChain 256(sizeQueryTemp) 44 + 271: 11(int) Load 270 + 272: 228(int) Bitcast 271 + 273: 242(ptr) AccessChain 235(texDim) 44 + Store 273 272 + 274: 264(ptr) AccessChain 256(sizeQueryTemp) 27 + 275: 11(int) Load 274 + 276: 228(int) Bitcast 275 + Store 244(elements) 276 + 277: 163 Load 170(textureShadowMap) + 278: 11(int) ImageQueryLevels 277 + 279: 228(int) Bitcast 278 + Store 248(levels) 279 + 285: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 283 283 16 16 + 284: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 281 280(scale) 49 + Store 280(scale) 286 + 292: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 290 290 16 16 + 291: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 288 287(dx) 49 + 293: 8(float) Load 280(scale) + 294: 8(float) FMul 293 116 + 295: 242(ptr) AccessChain 235(texDim) 16 + 296: 228(int) Load 295 + 297: 8(float) ConvertSToF 296 + 298: 8(float) FDiv 294 297 + Store 287(dx) 298 + 304: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 302 302 16 16 + 303: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 300 299(dy) 49 + 305: 8(float) Load 280(scale) + 306: 8(float) FMul 305 116 + 307: 242(ptr) AccessChain 235(texDim) 44 + 308: 228(int) Load 307 + 309: 8(float) ConvertSToF 308 + 310: 8(float) FDiv 306 309 + Store 299(dy) 310 + 316: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 314 314 16 16 + 315: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 312 311(shadowFactor) 49 + Store 311(shadowFactor) 204 + 322: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 320 320 16 16 + 321: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 318 317(count) 49 + Store 317(count) 323 + 329: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 327 327 16 16 + 328: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 325 324(range) 49 + Store 324(range) 330 + 338: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 331 + 339: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 332 332 16 16 + 337: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 335 334(x) 49 + 340: 228(int) Load 324(range) + 341: 228(int) SNegate 340 + Store 334(x) 341 + Branch 342 + 342: Label + 346: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 331 + 347: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 332 332 16 16 + LoopMerge 344 345 None + Branch 348 + 348: Label + 350: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 331 + 351: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 332 332 16 16 + 349: 228(int) Load 334(x) + 352: 228(int) Load 324(range) + 353: 145(bool) SLessThanEqual 349 352 + BranchConditional 353 343 344 + 343: Label + 362: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 355 + 363: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 356 356 16 16 + 361: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 359 358(y) 49 + 364: 228(int) Load 324(range) + 365: 228(int) SNegate 364 + Store 358(y) 365 + Branch 366 + 366: Label + 370: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 355 + 371: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 356 356 16 16 + LoopMerge 368 369 None + Branch 372 + 372: Label + 374: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 355 + 375: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 356 356 16 16 + 373: 228(int) Load 358(y) + 376: 228(int) Load 324(range) + 377: 145(bool) SLessThanEqual 373 376 + BranchConditional 377 367 368 + 367: Label + 380: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 378 + 381: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 382 382 16 16 + 379: 8(float) Load 287(dx) + 383: 228(int) Load 334(x) + 384: 8(float) ConvertSToF 383 + 385: 8(float) FMul 379 384 + 386: 8(float) Load 299(dy) + 387: 228(int) Load 358(y) + 388: 8(float) ConvertSToF 387 + 389: 8(float) FMul 386 388 + 390: 26(fvec2) CompositeConstruct 385 389 + 392: 18(fvec4) Load 60(sc) + Store 391(param) 392 + 394: 8(float) Load 61(layer) + Store 393(param) 394 + Store 395(param) 390 + 396: 8(float) FunctionCall 36(textureProj(vf4;f1;vf2;) 391(param) 393(param) 395(param) + 397: 8(float) Load 311(shadowFactor) + 398: 8(float) FAdd 397 396 + Store 311(shadowFactor) 398 + 400: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 401 401 16 16 + 399: 228(int) Load 317(count) + 402: 228(int) IAdd 399 330 + Store 317(count) 402 + Branch 369 + 369: Label + 404: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 355 + 405: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 356 356 16 16 + 403: 228(int) Load 358(y) + 406: 228(int) IAdd 403 330 + Store 358(y) 406 + Branch 366 + 368: Label + Branch 345 + 345: Label + 408: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 331 + 409: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 332 332 16 16 + 407: 228(int) Load 334(x) + 410: 228(int) IAdd 407 330 + Store 334(x) 410 + Branch 342 + 344: Label + 412: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 227 + 413: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 414 414 16 16 + 411: 8(float) Load 311(shadowFactor) + 415: 228(int) Load 317(count) + 416: 8(float) ConvertSToF 415 + 417: 8(float) FDiv 411 416 + ReturnValue 417 FunctionEnd 82(shadow(vf3;vf3;): 74(fvec3) Function None 78 80(fragcolor): 76(ptr) FunctionParameter 81(fragPos): 76(ptr) FunctionParameter 83: Label - 408(i): 251(ptr) Variable Function - 426(shadowClip): 21(ptr) Variable Function -484(shadowFactor): 24(ptr) Variable Function - 491(param): 21(ptr) Variable Function - 493(param): 24(ptr) Variable Function + 426(i): 242(ptr) Variable Function + 445(shadowClip): 21(ptr) Variable Function +504(shadowFactor): 24(ptr) Variable Function + 513(param): 21(ptr) Variable Function + 515(param): 24(ptr) Variable Function 90: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 91: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 86 86 16 16 89: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 87 80(fragcolor) 49 94: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 92 81(fragPos) 49 - 407: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 85 82(shadow(vf3;vf3;) - 413: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 411 411 16 16 - 412: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 409 408(i) 49 - Store 408(i) 315 - Branch 414 - 414: Label - 418: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 - 419: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 411 411 16 16 - LoopMerge 416 417 None - Branch 420 - 420: Label - 422: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 - 423: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 411 411 16 16 - 421: 235(int) Load 408(i) - 425: 143(bool) SLessThan 421 424 - BranchConditional 425 415 416 - 415: Label - 431: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 - 432: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 429 429 16 16 - 430: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 427 426(shadowClip) 49 - 433: 74(fvec3) Load 81(fragPos) - 434: 8(float) CompositeExtract 433 0 - 435: 8(float) CompositeExtract 433 1 - 436: 8(float) CompositeExtract 433 2 - 437: 18(fvec4) CompositeConstruct 434 435 436 114 - 478: 235(int) Load 408(i) - 481: 479(ptr) AccessChain 476 315 322 478 424 - 482: 438 Load 481 - 483: 18(fvec4) VectorTimesMatrix 437 482 - Store 426(shadowClip) 483 - 488: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 486 486 16 16 - 487: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 485 484(shadowFactor) 49 - 489: 235(int) Load 408(i) - 490: 8(float) ConvertSToF 489 - 492: 18(fvec4) Load 426(shadowClip) - Store 491(param) 492 - Store 493(param) 490 - 494: 8(float) FunctionCall 62(filterPCF(vf4;f1;) 491(param) 493(param) - Store 484(shadowFactor) 494 - 496: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 497 497 16 16 - 495: 8(float) Load 484(shadowFactor) - 498: 74(fvec3) Load 80(fragcolor) - 499: 74(fvec3) VectorTimesScalar 498 495 - Store 80(fragcolor) 499 - Branch 417 - 417: Label - 501: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 - 502: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 411 411 16 16 - 500: 235(int) Load 408(i) - 503: 235(int) IAdd 500 322 - Store 408(i) 503 - Branch 414 - 416: Label - 505: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 - 506: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 507 507 16 16 - 504: 74(fvec3) Load 80(fragcolor) - ReturnValue 504 + 422: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 85 82(shadow(vf3;vf3;) + 430: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 424 + 431: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 425 425 16 16 + 429: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 427 426(i) 49 + Store 426(i) 323 + Branch 432 + 432: Label + 436: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 424 + 437: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 425 425 16 16 + LoopMerge 434 435 None + Branch 438 + 438: Label + 440: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 424 + 441: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 425 425 16 16 + 439: 228(int) Load 426(i) + 443: 145(bool) SLessThan 439 442 + BranchConditional 443 433 434 + 433: Label + 450: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 444 + 451: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 448 448 16 16 + 449: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 446 445(shadowClip) 49 + 452: 74(fvec3) Load 81(fragPos) + 453: 8(float) CompositeExtract 452 0 + 454: 8(float) CompositeExtract 452 1 + 455: 8(float) CompositeExtract 452 2 + 456: 18(fvec4) CompositeConstruct 453 454 455 116 + 498: 228(int) Load 426(i) + 501: 499(ptr) AccessChain 495 323 330 498 442 + 502: 457 Load 501 + 503: 18(fvec4) VectorTimesMatrix 456 502 + Store 445(shadowClip) 503 + 508: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 506 506 16 16 + 507: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 505 504(shadowFactor) 49 + 510: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 511 511 16 16 + 509: 228(int) Load 426(i) + 512: 8(float) ConvertSToF 509 + 514: 18(fvec4) Load 445(shadowClip) + Store 513(param) 514 + Store 515(param) 512 + 516: 8(float) FunctionCall 62(filterPCF(vf4;f1;) 513(param) 515(param) + Store 504(shadowFactor) 516 + 518: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 519 519 16 16 + 517: 8(float) Load 504(shadowFactor) + 520: 74(fvec3) Load 80(fragcolor) + 521: 74(fvec3) VectorTimesScalar 520 517 + Store 80(fragcolor) 521 + Branch 435 + 435: Label + 523: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 424 + 524: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 425 425 16 16 + 522: 228(int) Load 426(i) + 525: 228(int) IAdd 522 330 + Store 426(i) 525 + Branch 432 + 434: Label + 527: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 423 + 528: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 529 529 16 16 + 526: 74(fvec3) Load 80(fragcolor) + ReturnValue 526 FunctionEnd 98(@main(vf2;): 18(fvec4) Function None 95 97(inUV): 29(ptr) FunctionParameter 99: Label - 513(fragPos): 76(ptr) Variable Function - 537(normal): 76(ptr) Variable Function - 556(albedo): 21(ptr) Variable Function - 594(fragcolor): 76(ptr) Variable Function - 601(param): 76(ptr) Variable Function - 602(param): 76(ptr) Variable Function - 655(N): 76(ptr) Variable Function - 663(i): 251(ptr) Variable Function - 679(L): 76(ptr) Variable Function - 694(dist): 24(ptr) Variable Function - 705(V): 76(ptr) Variable Function -720(lightCosInnerAngle): 24(ptr) Variable Function -727(lightCosOuterAngle): 24(ptr) Variable Function - 734(lightRange): 24(ptr) Variable Function - 741(dir): 76(ptr) Variable Function - 757(cosDir): 24(ptr) Variable Function - 766(spotEffect): 24(ptr) Variable Function -776(heightAttenuation): 24(ptr) Variable Function - 785(NdotL): 24(ptr) Variable Function - 795(diff): 76(ptr) Variable Function - 803(R): 76(ptr) Variable Function - 813(NdotR): 24(ptr) Variable Function - 823(spec): 76(ptr) Variable Function - 870(param): 76(ptr) Variable Function - 875(param): 76(ptr) Variable Function + 536(fragPos): 76(ptr) Variable Function + 561(normal): 76(ptr) Variable Function + 580(albedo): 21(ptr) Variable Function + 598(fragcolor): 76(ptr) Variable Function + 625(param): 76(ptr) Variable Function + 629(param): 76(ptr) Variable Function + 682(N): 76(ptr) Variable Function + 693(i): 242(ptr) Variable Function + 710(L): 76(ptr) Variable Function + 725(dist): 24(ptr) Variable Function + 736(V): 76(ptr) Variable Function +751(lightCosInnerAngle): 24(ptr) Variable Function +758(lightCosOuterAngle): 24(ptr) Variable Function + 765(lightRange): 24(ptr) Variable Function + 772(dir): 76(ptr) Variable Function + 788(cosDir): 24(ptr) Variable Function + 797(spotEffect): 24(ptr) Variable Function +807(heightAttenuation): 24(ptr) Variable Function + 816(NdotL): 24(ptr) Variable Function + 826(diff): 76(ptr) Variable Function + 834(R): 76(ptr) Variable Function + 844(NdotR): 24(ptr) Variable Function + 854(spec): 76(ptr) Variable Function + 902(param): 76(ptr) Variable Function + 907(param): 76(ptr) Variable Function 106: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 107: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 102 102 16 16 105: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 103 97(inUV) 49 - 512: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 101 98(@main(vf2;) - 517: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 515 515 16 16 - 516: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 514 513(fragPos) 49 - 525: 518 Load 522(textureposition) - 530: 172 Load 527(samplerposition) - 533: 531 SampledImage 525 530 - 534: 26(fvec2) Load 97(inUV) - 535: 18(fvec4) ImageSampleImplicitLod 533 534 - 536: 74(fvec3) VectorShuffle 535 535 0 1 2 - Store 513(fragPos) 536 - 542: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 540 540 16 16 - 541: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 538 537(normal) 49 - 546: 518 Load 543(textureNormal) - 551: 172 Load 548(samplerNormal) - 552: 531 SampledImage 546 551 - 553: 26(fvec2) Load 97(inUV) - 554: 18(fvec4) ImageSampleImplicitLod 552 553 - 555: 74(fvec3) VectorShuffle 554 554 0 1 2 - Store 537(normal) 555 - 561: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 559 559 16 16 - 560: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 557 556(albedo) 49 - 565: 518 Load 562(textureAlbedo) - 570: 172 Load 567(samplerAlbedo) - 571: 531 SampledImage 565 570 - 572: 26(fvec2) Load 97(inUV) - 573: 18(fvec4) ImageSampleImplicitLod 571 572 - Store 556(albedo) 573 - 577: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 578 578 16 16 - 576: 574(ptr) AccessChain 476 315 424 - 579: 235(int) Load 576 - 580: 143(bool) SGreaterThan 579 315 - SelectionMerge 582 None - BranchConditional 580 581 582 - 581: Label - 584: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 585: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 586 586 16 16 - 583: 574(ptr) AccessChain 476 315 424 - 587: 235(int) Load 583 - SelectionMerge 593 None - Switch 587 593 - case 1: 588 - case 2: 589 - case 3: 590 - case 4: 591 - case 5: 592 - 588: Label - 598: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 599: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 596 596 16 16 - 597: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 595 594(fragcolor) 49 - Store 601(param) 600 - 603: 74(fvec3) Load 513(fragPos) - Store 602(param) 603 - 604: 74(fvec3) FunctionCall 82(shadow(vf3;vf3;) 601(param) 602(param) - Store 594(fragcolor) 604 - 605: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 606 606 16 16 - Branch 593 - 589: Label - 609: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 610: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 611 611 16 16 - 608: 74(fvec3) Load 513(fragPos) - Store 594(fragcolor) 608 - 612: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 613 613 16 16 - Branch 593 - 590: Label - 616: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 617: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 618 618 16 16 - 615: 74(fvec3) Load 537(normal) - Store 594(fragcolor) 615 - 619: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 620 620 16 16 - Branch 593 - 591: Label - 623: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 624: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 625 625 16 16 - 622: 18(fvec4) Load 556(albedo) - 626: 74(fvec3) VectorShuffle 622 622 0 1 2 - Store 594(fragcolor) 626 + 534: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 101 98(@main(vf2;) + 540: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 535 + 541: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 538 538 16 16 + 539: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 537 536(fragPos) 49 + 549: 542 Load 546(textureposition) + 554: 175 Load 551(samplerposition) + 557: 555 SampledImage 549 554 + 558: 26(fvec2) Load 97(inUV) + 559: 18(fvec4) ImageSampleImplicitLod 557 558 + 560: 74(fvec3) VectorShuffle 559 559 0 1 2 + Store 536(fragPos) 560 + 566: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 564 564 16 16 + 565: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 562 561(normal) 49 + 570: 542 Load 567(textureNormal) + 575: 175 Load 572(samplerNormal) + 576: 555 SampledImage 570 575 + 577: 26(fvec2) Load 97(inUV) + 578: 18(fvec4) ImageSampleImplicitLod 576 577 + 579: 74(fvec3) VectorShuffle 578 578 0 1 2 + Store 561(normal) 579 + 585: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 583 583 16 16 + 584: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 581 580(albedo) 49 + 589: 542 Load 586(textureAlbedo) + 594: 175 Load 591(samplerAlbedo) + 595: 555 SampledImage 589 594 + 596: 26(fvec2) Load 97(inUV) + 597: 18(fvec4) ImageSampleImplicitLod 595 596 + Store 580(albedo) 597 + 602: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 600 600 16 16 + 601: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 599 598(fragcolor) 49 + 606: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 607 607 16 16 + 605: 603(ptr) AccessChain 495 323 442 + 608: 228(int) Load 605 + 609: 145(bool) SGreaterThan 608 323 + SelectionMerge 611 None + BranchConditional 609 610 611 + 610: Label + 614: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 612 + 615: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 616 616 16 16 + 613: 603(ptr) AccessChain 495 323 442 + 617: 228(int) Load 613 + SelectionMerge 623 None + Switch 617 623 + case 1: 618 + case 2: 619 + case 3: 620 + case 4: 621 + case 5: 622 + 618: Label + 626: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 612 627: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 628 628 16 16 - Branch 593 - 592: Label - 631: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 + Store 625(param) 624 + 630: 74(fvec3) Load 536(fragPos) + Store 629(param) 630 + 631: 74(fvec3) FunctionCall 82(shadow(vf3;vf3;) 625(param) 629(param) + Store 598(fragcolor) 631 632: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 633 633 16 16 - 630: 18(fvec4) Load 556(albedo) - 634: 74(fvec3) VectorShuffle 630 630 3 3 3 - Store 594(fragcolor) 634 - 635: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 636 636 16 16 - Branch 593 - 593: Label - 640: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 641: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 642 642 16 16 - 639: 74(fvec3) Load 594(fragcolor) - 643: 8(float) CompositeExtract 639 0 - 644: 8(float) CompositeExtract 639 1 - 645: 8(float) CompositeExtract 639 2 - 646: 18(fvec4) CompositeConstruct 643 644 645 114 - ReturnValue 646 - 582: Label - 649: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 650: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 651 651 16 16 - 648: 18(fvec4) Load 556(albedo) - 652: 74(fvec3) VectorShuffle 648 648 0 1 2 - 654: 74(fvec3) VectorTimesScalar 652 653 - Store 594(fragcolor) 654 - 660: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 658 658 16 16 - 659: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 656 655(N) 49 - 661: 74(fvec3) Load 537(normal) - 662: 74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 661 - Store 655(N) 662 - 667: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 665 665 16 16 - 666: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 664 663(i) 49 - Store 663(i) 315 - Branch 668 - 668: Label - 672: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 673: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 665 665 16 16 - LoopMerge 670 671 None - Branch 674 - 674: Label - 676: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 677: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 665 665 16 16 - 675: 235(int) Load 663(i) - 678: 143(bool) SLessThan 675 424 - BranchConditional 678 669 670 - 669: Label - 684: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 685: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 682 682 16 16 - 683: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 680 679(L) 49 - 686: 235(int) Load 663(i) - 689: 687(ptr) AccessChain 476 315 322 686 315 - 690: 18(fvec4) Load 689 - 691: 74(fvec3) VectorShuffle 690 690 0 1 2 - 692: 74(fvec3) Load 513(fragPos) - 693: 74(fvec3) FSub 691 692 - Store 679(L) 693 - 698: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 696 696 16 16 - 697: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 695 694(dist) 49 - 699: 74(fvec3) Load 679(L) - 700: 8(float) ExtInst 3(GLSL.std.450) 66(Length) 699 - Store 694(dist) 700 - 702: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 703 703 16 16 - 701: 74(fvec3) Load 679(L) - 704: 74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 701 - Store 679(L) 704 - 710: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 708 708 16 16 - 709: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 706 705(V) 49 - 711: 687(ptr) AccessChain 476 315 315 - 712: 18(fvec4) Load 711 - 713: 74(fvec3) VectorShuffle 712 712 0 1 2 - 714: 74(fvec3) Load 513(fragPos) - 715: 74(fvec3) FSub 713 714 - Store 705(V) 715 - 717: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 718 718 16 16 - 716: 74(fvec3) Load 705(V) - 719: 74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 716 - Store 705(V) 719 - 725: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 723 723 16 16 - 724: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 721 720(lightCosInnerAngle) 49 - Store 720(lightCosInnerAngle) 726 - 732: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 730 730 16 16 - 731: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 728 727(lightCosOuterAngle) 49 - Store 727(lightCosOuterAngle) 733 - 739: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 737 737 16 16 - 738: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 735 734(lightRange) 49 - Store 734(lightRange) 740 - 746: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 744 744 16 16 - 745: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 742 741(dir) 49 - 747: 235(int) Load 663(i) - 748: 687(ptr) AccessChain 476 315 322 747 315 - 749: 18(fvec4) Load 748 - 750: 74(fvec3) VectorShuffle 749 749 0 1 2 - 751: 235(int) Load 663(i) - 752: 687(ptr) AccessChain 476 315 322 751 322 - 753: 18(fvec4) Load 752 - 754: 74(fvec3) VectorShuffle 753 753 0 1 2 - 755: 74(fvec3) FSub 750 754 - 756: 74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 755 - Store 741(dir) 756 - 762: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 760 760 16 16 - 761: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 758 757(cosDir) 49 - 763: 74(fvec3) Load 679(L) - 764: 74(fvec3) Load 741(dir) - 765: 8(float) Dot 763 764 - Store 757(cosDir) 765 - 771: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 769 769 16 16 - 770: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 767 766(spotEffect) 49 - 772: 8(float) Load 727(lightCosOuterAngle) - 773: 8(float) Load 720(lightCosInnerAngle) - 774: 8(float) Load 757(cosDir) - 775: 8(float) ExtInst 3(GLSL.std.450) 49(SmoothStep) 772 773 774 - Store 766(spotEffect) 775 - 781: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 779 779 16 16 - 780: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 777 776(heightAttenuation) 49 - 782: 8(float) Load 734(lightRange) - 783: 8(float) Load 694(dist) - 784: 8(float) ExtInst 3(GLSL.std.450) 49(SmoothStep) 782 201 783 - Store 776(heightAttenuation) 784 - 790: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 788 788 16 16 - 789: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 786 785(NdotL) 49 - 791: 74(fvec3) Load 655(N) - 792: 74(fvec3) Load 679(L) - 793: 8(float) Dot 791 792 - 794: 8(float) ExtInst 3(GLSL.std.450) 40(FMax) 201 793 - Store 785(NdotL) 794 - 800: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 798 798 16 16 - 799: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 796 795(diff) 49 - 801: 8(float) Load 785(NdotL) - 802: 74(fvec3) CompositeConstruct 801 801 801 - Store 795(diff) 802 - 808: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 806 806 16 16 - 807: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 804 803(R) 49 - 809: 74(fvec3) Load 679(L) - 810: 74(fvec3) FNegate 809 - 811: 74(fvec3) Load 655(N) - 812: 74(fvec3) ExtInst 3(GLSL.std.450) 71(Reflect) 810 811 - Store 803(R) 812 - 818: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 816 816 16 16 - 817: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 814 813(NdotR) 49 - 819: 74(fvec3) Load 803(R) - 820: 74(fvec3) Load 705(V) - 821: 8(float) Dot 819 820 - 822: 8(float) ExtInst 3(GLSL.std.450) 40(FMax) 201 821 - Store 813(NdotR) 822 - 828: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 826 826 16 16 - 827: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 824 823(spec) 49 - 829: 8(float) Load 813(NdotR) - 831: 8(float) ExtInst 3(GLSL.std.450) 26(Pow) 829 830 - 832: 24(ptr) AccessChain 556(albedo) 17 - 833: 8(float) Load 832 - 834: 8(float) FMul 831 833 - 836: 8(float) FMul 834 835 - 837: 74(fvec3) CompositeConstruct 836 836 836 - Store 823(spec) 837 - 839: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 840 840 16 16 - 838: 74(fvec3) Load 795(diff) - 841: 74(fvec3) Load 823(spec) - 842: 74(fvec3) FAdd 838 841 - 843: 8(float) Load 766(spotEffect) - 844: 74(fvec3) VectorTimesScalar 842 843 - 845: 8(float) Load 776(heightAttenuation) - 846: 74(fvec3) VectorTimesScalar 844 845 - 847: 235(int) Load 663(i) - 849: 687(ptr) AccessChain 476 315 322 847 848 - 850: 18(fvec4) Load 849 - 851: 74(fvec3) VectorShuffle 850 850 0 1 2 - 852: 74(fvec3) FMul 846 851 - 853: 18(fvec4) Load 556(albedo) - 854: 74(fvec3) VectorShuffle 853 853 0 1 2 - 855: 74(fvec3) FMul 852 854 - 856: 74(fvec3) Load 594(fragcolor) - 857: 74(fvec3) FAdd 856 855 - Store 594(fragcolor) 857 - Branch 671 - 671: Label - 859: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 860: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 665 665 16 16 - 858: 235(int) Load 663(i) - 861: 235(int) IAdd 858 322 - Store 663(i) 861 - Branch 668 - 670: Label - 863: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 864: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 865 865 16 16 - 862: 574(ptr) AccessChain 476 315 848 - 866: 235(int) Load 862 - 867: 143(bool) SGreaterThan 866 315 - SelectionMerge 869 None - BranchConditional 867 868 869 - 868: Label - 872: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 873: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 874 874 16 16 - 871: 74(fvec3) Load 594(fragcolor) - Store 870(param) 871 - 876: 74(fvec3) Load 513(fragPos) - Store 875(param) 876 - 877: 74(fvec3) FunctionCall 82(shadow(vf3;vf3;) 870(param) 875(param) - Store 594(fragcolor) 877 - Branch 869 - 869: Label - 879: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 101 - 880: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 881 881 16 16 - 878: 74(fvec3) Load 594(fragcolor) - 882: 8(float) CompositeExtract 878 0 - 883: 8(float) CompositeExtract 878 1 - 884: 8(float) CompositeExtract 878 2 - 885: 18(fvec4) CompositeConstruct 882 883 884 114 - ReturnValue 885 + Branch 623 + 619: Label + 636: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 612 + 637: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 638 638 16 16 + 635: 74(fvec3) Load 536(fragPos) + Store 598(fragcolor) 635 + 639: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 640 640 16 16 + Branch 623 + 620: Label + 643: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 612 + 644: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 645 645 16 16 + 642: 74(fvec3) Load 561(normal) + Store 598(fragcolor) 642 + 646: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 647 647 16 16 + Branch 623 + 621: Label + 650: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 612 + 651: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 652 652 16 16 + 649: 18(fvec4) Load 580(albedo) + 653: 74(fvec3) VectorShuffle 649 649 0 1 2 + Store 598(fragcolor) 653 + 654: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 655 655 16 16 + Branch 623 + 622: Label + 658: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 612 + 659: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 660 660 16 16 + 657: 18(fvec4) Load 580(albedo) + 661: 74(fvec3) VectorShuffle 657 657 3 3 3 + Store 598(fragcolor) 661 + 662: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 663 663 16 16 + Branch 623 + 623: Label + 667: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 612 + 668: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 669 669 16 16 + 666: 74(fvec3) Load 598(fragcolor) + 670: 8(float) CompositeExtract 666 0 + 671: 8(float) CompositeExtract 666 1 + 672: 8(float) CompositeExtract 666 2 + 673: 18(fvec4) CompositeConstruct 670 671 672 116 + ReturnValue 673 + 611: Label + 676: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 535 + 677: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 678 678 16 16 + 675: 18(fvec4) Load 580(albedo) + 679: 74(fvec3) VectorShuffle 675 675 0 1 2 + 681: 74(fvec3) VectorTimesScalar 679 680 + Store 598(fragcolor) 681 + 687: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 685 685 16 16 + 686: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 683 682(N) 49 + 688: 74(fvec3) Load 561(normal) + 689: 74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 688 + Store 682(N) 689 + 696: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 690 + 697: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 691 691 16 16 + 695: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 694 693(i) 49 + Store 693(i) 323 + Branch 698 + 698: Label + 702: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 690 + 703: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 691 691 16 16 + LoopMerge 700 701 None + Branch 704 + 704: Label + 706: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 690 + 707: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 691 691 16 16 + 705: 228(int) Load 693(i) + 708: 145(bool) SLessThan 705 442 + BranchConditional 708 699 700 + 699: Label + 715: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 709 + 716: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 713 713 16 16 + 714: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 711 710(L) 49 + 717: 228(int) Load 693(i) + 720: 718(ptr) AccessChain 495 323 330 717 323 + 721: 18(fvec4) Load 720 + 722: 74(fvec3) VectorShuffle 721 721 0 1 2 + 723: 74(fvec3) Load 536(fragPos) + 724: 74(fvec3) FSub 722 723 + Store 710(L) 724 + 729: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 727 727 16 16 + 728: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 726 725(dist) 49 + 730: 74(fvec3) Load 710(L) + 731: 8(float) ExtInst 3(GLSL.std.450) 66(Length) 730 + Store 725(dist) 731 + 733: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 734 734 16 16 + 732: 74(fvec3) Load 710(L) + 735: 74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 732 + Store 710(L) 735 + 741: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 739 739 16 16 + 740: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 737 736(V) 49 + 742: 718(ptr) AccessChain 495 323 323 + 743: 18(fvec4) Load 742 + 744: 74(fvec3) VectorShuffle 743 743 0 1 2 + 745: 74(fvec3) Load 536(fragPos) + 746: 74(fvec3) FSub 744 745 + Store 736(V) 746 + 748: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 749 749 16 16 + 747: 74(fvec3) Load 736(V) + 750: 74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 747 + Store 736(V) 750 + 756: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 754 754 16 16 + 755: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 752 751(lightCosInnerAngle) 49 + Store 751(lightCosInnerAngle) 757 + 763: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 761 761 16 16 + 762: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 759 758(lightCosOuterAngle) 49 + Store 758(lightCosOuterAngle) 764 + 770: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 768 768 16 16 + 769: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 766 765(lightRange) 49 + Store 765(lightRange) 771 + 777: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 775 775 16 16 + 776: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 773 772(dir) 49 + 778: 228(int) Load 693(i) + 779: 718(ptr) AccessChain 495 323 330 778 323 + 780: 18(fvec4) Load 779 + 781: 74(fvec3) VectorShuffle 780 780 0 1 2 + 782: 228(int) Load 693(i) + 783: 718(ptr) AccessChain 495 323 330 782 330 + 784: 18(fvec4) Load 783 + 785: 74(fvec3) VectorShuffle 784 784 0 1 2 + 786: 74(fvec3) FSub 781 785 + 787: 74(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 786 + Store 772(dir) 787 + 793: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 791 791 16 16 + 792: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 789 788(cosDir) 49 + 794: 74(fvec3) Load 710(L) + 795: 74(fvec3) Load 772(dir) + 796: 8(float) Dot 794 795 + Store 788(cosDir) 796 + 802: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 800 800 16 16 + 801: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 798 797(spotEffect) 49 + 803: 8(float) Load 758(lightCosOuterAngle) + 804: 8(float) Load 751(lightCosInnerAngle) + 805: 8(float) Load 788(cosDir) + 806: 8(float) ExtInst 3(GLSL.std.450) 49(SmoothStep) 803 804 805 + Store 797(spotEffect) 806 + 812: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 810 810 16 16 + 811: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 808 807(heightAttenuation) 49 + 813: 8(float) Load 765(lightRange) + 814: 8(float) Load 725(dist) + 815: 8(float) ExtInst 3(GLSL.std.450) 49(SmoothStep) 813 204 814 + Store 807(heightAttenuation) 815 + 821: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 819 819 16 16 + 820: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 817 816(NdotL) 49 + 822: 74(fvec3) Load 682(N) + 823: 74(fvec3) Load 710(L) + 824: 8(float) Dot 822 823 + 825: 8(float) ExtInst 3(GLSL.std.450) 40(FMax) 204 824 + Store 816(NdotL) 825 + 831: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 829 829 16 16 + 830: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 827 826(diff) 49 + 832: 8(float) Load 816(NdotL) + 833: 74(fvec3) CompositeConstruct 832 832 832 + Store 826(diff) 833 + 839: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 837 837 16 16 + 838: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 835 834(R) 49 + 840: 74(fvec3) Load 710(L) + 841: 74(fvec3) FNegate 840 + 842: 74(fvec3) Load 682(N) + 843: 74(fvec3) ExtInst 3(GLSL.std.450) 71(Reflect) 841 842 + Store 834(R) 843 + 849: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 847 847 16 16 + 848: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 845 844(NdotR) 49 + 850: 74(fvec3) Load 834(R) + 851: 74(fvec3) Load 736(V) + 852: 8(float) Dot 850 851 + 853: 8(float) ExtInst 3(GLSL.std.450) 40(FMax) 204 852 + Store 844(NdotR) 853 + 859: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 857 857 16 16 + 858: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 855 854(spec) 49 + 860: 8(float) Load 844(NdotR) + 862: 8(float) ExtInst 3(GLSL.std.450) 26(Pow) 860 861 + 863: 24(ptr) AccessChain 580(albedo) 17 + 864: 8(float) Load 863 + 865: 8(float) FMul 862 864 + 867: 8(float) FMul 865 866 + 868: 74(fvec3) CompositeConstruct 867 867 867 + Store 854(spec) 868 + 870: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 871 871 16 16 + 869: 74(fvec3) Load 826(diff) + 872: 74(fvec3) Load 854(spec) + 873: 74(fvec3) FAdd 869 872 + 874: 8(float) Load 797(spotEffect) + 875: 74(fvec3) VectorTimesScalar 873 874 + 876: 8(float) Load 807(heightAttenuation) + 877: 74(fvec3) VectorTimesScalar 875 876 + 878: 228(int) Load 693(i) + 880: 718(ptr) AccessChain 495 323 330 878 879 + 881: 18(fvec4) Load 880 + 882: 74(fvec3) VectorShuffle 881 881 0 1 2 + 883: 74(fvec3) FMul 877 882 + 884: 18(fvec4) Load 580(albedo) + 885: 74(fvec3) VectorShuffle 884 884 0 1 2 + 886: 74(fvec3) FMul 883 885 + 887: 74(fvec3) Load 598(fragcolor) + 888: 74(fvec3) FAdd 887 886 + Store 598(fragcolor) 888 + Branch 701 + 701: Label + 890: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 690 + 891: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 691 691 16 16 + 889: 228(int) Load 693(i) + 892: 228(int) IAdd 889 330 + Store 693(i) 892 + Branch 698 + 700: Label + 894: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 535 + 895: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 896 896 16 16 + 893: 603(ptr) AccessChain 495 323 879 + 897: 228(int) Load 893 + 898: 145(bool) SGreaterThan 897 323 + SelectionMerge 900 None + BranchConditional 898 899 900 + 899: Label + 904: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 901 + 905: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 906 906 16 16 + 903: 74(fvec3) Load 598(fragcolor) + Store 902(param) 903 + 908: 74(fvec3) Load 536(fragPos) + Store 907(param) 908 + 909: 74(fvec3) FunctionCall 82(shadow(vf3;vf3;) 902(param) 907(param) + Store 598(fragcolor) 909 + Branch 900 + 900: Label + 911: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 535 + 912: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 40 913 913 16 16 + 910: 74(fvec3) Load 598(fragcolor) + 914: 8(float) CompositeExtract 910 0 + 915: 8(float) CompositeExtract 910 1 + 916: 8(float) CompositeExtract 910 2 + 917: 18(fvec4) CompositeConstruct 914 915 916 116 + ReturnValue 917 FunctionEnd diff --git a/Test/baseResults/spv.debuginfo.hlsl.geom.out b/Test/baseResults/spv.debuginfo.hlsl.geom.out index 3c094d35..f4503bad 100644 --- a/Test/baseResults/spv.debuginfo.hlsl.geom.out +++ b/Test/baseResults/spv.debuginfo.hlsl.geom.out @@ -1,7 +1,7 @@ spv.debuginfo.hlsl.geom // Module Version 10000 // Generated by (magic number): 8000b -// Id's are bound by 366 +// Id's are bound by 373 Capability Geometry Capability MultiViewport @@ -9,12 +9,12 @@ spv.debuginfo.hlsl.geom 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" 3: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 - EntryPoint Geometry 6 "main" 264 273 278 285 290 295 300 315 322 327 351 354 + EntryPoint Geometry 6 "main" 270 279 284 291 296 301 306 322 329 334 358 361 ExecutionMode 6 Triangles ExecutionMode 6 Invocations 2 ExecutionMode 6 OutputTriangleStrip ExecutionMode 6 OutputVertices 3 - 2: String "" + 2: String "spv.debuginfo.hlsl.geom" 9: String "float" 12: String "uint" 25: String "Pos" @@ -26,6 +26,85 @@ spv.debuginfo.hlsl.geom // OpModuleProcessed keep-uncalled // OpModuleProcessed hlsl-offsets #line 1 +/* +The MIT License (MIT) + +Copyright (c) 2022 Google LLC +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. +*/ + +struct UBO +{ + float4x4 projection[2]; + float4x4 modelview[2]; + float4 lightPos; +}; + +cbuffer ubo : register(b0) { UBO ubo; } + +struct VSOutput +{ + float4 Pos : SV_POSITION; +[[vk::location(0)]] float3 Normal : NORMAL0; +[[vk::location(1)]] float3 Color : COLOR0; +}; + +struct GSOutput +{ + float4 Pos : SV_POSITION; + uint ViewportIndex : SV_ViewportArrayIndex; + uint PrimitiveID : SV_PrimitiveID; +[[vk::location(0)]] float3 Normal : NORMAL0; +[[vk::location(1)]] float3 Color : COLOR0; +[[vk::location(2)]] float3 ViewVec : TEXCOOR1; +[[vk::location(3)]] float3 LightVec : TEXCOOR2; +}; + +[maxvertexcount(3)] +[instance(2)] +void main(triangle VSOutput input[3], inout TriangleStream outStream, uint InvocationID : SV_GSInstanceID, uint PrimitiveID : SV_PrimitiveID) +{ + for(int i = 0; i < 3; i++) + { + GSOutput output = (GSOutput)0; + output.Normal = mul((float3x3)ubo.modelview[InvocationID], input[i].Normal); + output.Color = input[i].Color; + + float4 pos = input[i].Pos; + float4 worldPos = mul(ubo.modelview[InvocationID], pos); + + float3 lPos = mul(ubo.modelview[InvocationID], ubo.lightPos).xyz; + output.LightVec = lPos - worldPos.xyz; + output.ViewVec = -worldPos.xyz; + + output.Pos = mul(ubo.projection[InvocationID], worldPos); + + // Set the viewport index that the vertex will be emitted to + output.ViewportIndex = InvocationID; + output.PrimitiveID = PrimitiveID; + outStream.Append( output ); + } + + outStream.RestartStrip(); +} " 31: String "Color" 36: String "VSOutput" @@ -36,25 +115,26 @@ spv.debuginfo.hlsl.geom 77: String "input" 83: String "outStream" 87: String "InvocationID" - 93: String "int" - 99: String "i" - 116: String "bool" - 121: String "output" - 147: String "projection" - 151: String "modelview" - 155: String "lightPos" - 159: String "UBO" - 162: String "ubo" - 198: String "pos" - 207: String "worldPos" - 218: String "lPos" - 266: String "outStream.Pos" - 275: String "outStream.ViewportIndex" - 280: String "outStream.PrimitiveID" - 287: String "outStream.Normal" - 292: String "outStream.Color" - 297: String "outStream.ViewVec" - 302: String "outStream.LightVec" + 97: String "int" + 103: String "i" + 120: String "bool" + 126: String "output" + 152: String "projection" + 156: String "modelview" + 160: String "lightPos" + 164: String "UBO" + 167: String "ubo" + 174: String "" + 204: String "pos" + 213: String "worldPos" + 224: String "lPos" + 272: String "outStream.Pos" + 281: String "outStream.ViewportIndex" + 286: String "outStream.PrimitiveID" + 293: String "outStream.Normal" + 298: String "outStream.Color" + 303: String "outStream.ViewVec" + 308: String "outStream.LightVec" Name 6 "main" Name 23 "VSOutput" MemberName 23(VSOutput) 0 "Pos" @@ -73,63 +153,63 @@ spv.debuginfo.hlsl.geom Name 69 "outStream" Name 70 "InvocationID" Name 71 "PrimitiveID" - Name 97 "i" - Name 119 "output" - Name 145 "UBO" - MemberName 145(UBO) 0 "projection" - MemberName 145(UBO) 1 "modelview" - MemberName 145(UBO) 2 "lightPos" - Name 160 "ubo" - MemberName 160(ubo) 0 "ubo" - Name 167 "" - Name 196 "pos" - Name 205 "worldPos" - Name 216 "lPos" - Name 264 "outStream.Pos" - Name 273 "outStream.ViewportIndex" - Name 278 "outStream.PrimitiveID" - Name 285 "outStream.Normal" - Name 290 "outStream.Color" - Name 295 "outStream.ViewVec" - Name 300 "outStream.LightVec" - Name 312 "input" - Name 315 "input.Pos" - Name 322 "input.Normal" - Name 327 "input.Color" - Name 349 "InvocationID" - Name 351 "InvocationID" - Name 353 "PrimitiveID" - Name 354 "PrimitiveID" - Name 356 "outStream" - Name 357 "param" - Name 359 "param" - Name 360 "param" - Name 362 "param" - Decorate 141 ArrayStride 64 - Decorate 143 ArrayStride 64 - MemberDecorate 145(UBO) 0 RowMajor - MemberDecorate 145(UBO) 0 MatrixStride 16 - MemberDecorate 145(UBO) 0 Offset 0 - MemberDecorate 145(UBO) 1 RowMajor - MemberDecorate 145(UBO) 1 MatrixStride 16 - MemberDecorate 145(UBO) 1 Offset 128 - MemberDecorate 145(UBO) 2 Offset 256 - Decorate 160(ubo) Block - MemberDecorate 160(ubo) 0 Offset 0 - Decorate 167 Binding 0 - Decorate 167 DescriptorSet 0 - Decorate 264(outStream.Pos) BuiltIn Position - Decorate 273(outStream.ViewportIndex) BuiltIn ViewportIndex - Decorate 278(outStream.PrimitiveID) BuiltIn PrimitiveId - Decorate 285(outStream.Normal) Location 0 - Decorate 290(outStream.Color) Location 1 - Decorate 295(outStream.ViewVec) Location 2 - Decorate 300(outStream.LightVec) Location 3 - Decorate 315(input.Pos) BuiltIn Position - Decorate 322(input.Normal) Location 0 - Decorate 327(input.Color) Location 1 - Decorate 351(InvocationID) BuiltIn InvocationId - Decorate 354(PrimitiveID) BuiltIn PrimitiveId + Name 101 "i" + Name 124 "output" + Name 150 "UBO" + MemberName 150(UBO) 0 "projection" + MemberName 150(UBO) 1 "modelview" + MemberName 150(UBO) 2 "lightPos" + Name 165 "ubo" + MemberName 165(ubo) 0 "ubo" + Name 172 "" + Name 202 "pos" + Name 211 "worldPos" + Name 222 "lPos" + Name 270 "outStream.Pos" + Name 279 "outStream.ViewportIndex" + Name 284 "outStream.PrimitiveID" + Name 291 "outStream.Normal" + Name 296 "outStream.Color" + Name 301 "outStream.ViewVec" + Name 306 "outStream.LightVec" + Name 319 "input" + Name 322 "input.Pos" + Name 329 "input.Normal" + Name 334 "input.Color" + Name 356 "InvocationID" + Name 358 "InvocationID" + Name 360 "PrimitiveID" + Name 361 "PrimitiveID" + Name 363 "outStream" + Name 364 "param" + Name 366 "param" + Name 367 "param" + Name 369 "param" + Decorate 146 ArrayStride 64 + Decorate 148 ArrayStride 64 + MemberDecorate 150(UBO) 0 RowMajor + MemberDecorate 150(UBO) 0 MatrixStride 16 + MemberDecorate 150(UBO) 0 Offset 0 + MemberDecorate 150(UBO) 1 RowMajor + MemberDecorate 150(UBO) 1 MatrixStride 16 + MemberDecorate 150(UBO) 1 Offset 128 + MemberDecorate 150(UBO) 2 Offset 256 + Decorate 165(ubo) Block + MemberDecorate 165(ubo) 0 Offset 0 + Decorate 172 Binding 0 + Decorate 172 DescriptorSet 0 + Decorate 270(outStream.Pos) BuiltIn Position + Decorate 279(outStream.ViewportIndex) BuiltIn ViewportIndex + Decorate 284(outStream.PrimitiveID) BuiltIn PrimitiveId + Decorate 291(outStream.Normal) Location 0 + Decorate 296(outStream.Color) Location 1 + Decorate 301(outStream.ViewVec) Location 2 + Decorate 306(outStream.LightVec) Location 3 + Decorate 322(input.Pos) BuiltIn Position + Decorate 329(input.Normal) Location 0 + Decorate 334(input.Color) Location 1 + Decorate 358(InvocationID) BuiltIn InvocationId + Decorate 361(PrimitiveID) BuiltIn PrimitiveId 4: TypeVoid 5: TypeFunction 4 8: TypeFloat 32 @@ -190,170 +270,174 @@ spv.debuginfo.hlsl.geom 82: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 83 60 26 38 16 75 19 84 86: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 87 13 26 38 16 75 19 17 89: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 50 13 26 38 16 75 19 19 - 92: TypeInt 32 1 - 94: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 93 14 19 16 - 95: TypePointer Function 92(int) - 96: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 94 44 16 - 100: 11(int) Constant 57 - 98: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 99 94 26 100 16 75 19 - 103: 92(int) Constant 0 - 114: 92(int) Constant 3 - 115: TypeBool - 117: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 116 14 84 16 - 122: 11(int) Constant 59 - 120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 121 60 26 122 16 75 19 - 126: 8(float) Constant 0 - 127: 18(fvec4) ConstantComposite 126 126 126 126 - 128: 21(fvec3) ConstantComposite 126 126 126 - 129:46(GSOutput) ConstantComposite 127 16 16 128 128 128 128 - 132: 11(int) Constant 60 - 133: 92(int) Constant 1 - 134: TypePointer Function 21(fvec3) - 135: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 22 44 16 - 138: TypeMatrix 18(fvec4) 4 - 140: 115(bool) ConstantTrue - 139: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 20 19 140 - 141: TypeArray 138 84 - 142: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 139 84 - 143: TypeArray 138 84 - 144: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 139 84 - 145(UBO): TypeStruct 141 143 18(fvec4) - 148: 11(int) Constant 28 - 149: 11(int) Constant 21 - 146: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 147 142 26 148 149 16 16 17 - 152: 11(int) Constant 29 - 153: 11(int) Constant 20 - 150: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 151 144 26 152 153 16 16 17 - 156: 11(int) Constant 30 - 157: 11(int) Constant 17 - 154: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 155 20 26 156 157 16 16 17 - 158: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 159 37 26 132 16 39 159 16 17 146 150 154 - 160(ubo): TypeStruct 145(UBO) - 163: 11(int) Constant 33 - 161: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 162 158 26 163 28 16 16 17 - 164: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 162 37 26 132 16 39 162 16 17 161 - 165: TypePointer Uniform 160(ubo) - 166: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 164 84 16 - 167: 165(ptr) Variable Uniform - 169: 11(int) Constant 8 - 168: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 2 164 26 132 16 39 2 167 169 - 171: TypePointer Uniform 138 - 172: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 139 84 16 - 175: TypeMatrix 21(fvec3) 3 - 176: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 22 17 140 - 186: 92(int) Constant 4 - 189: 11(int) Constant 61 - 190: 92(int) Constant 2 - 194: TypePointer Function 18(fvec4) - 195: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 44 16 - 199: 11(int) Constant 63 - 197: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 198 20 26 199 16 75 19 - 208: 11(int) Constant 64 - 206: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 207 20 26 208 16 75 19 - 219: 11(int) Constant 66 - 217: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 218 22 26 219 16 75 19 - 222: TypePointer Uniform 18(fvec4) - 223: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 84 16 - 231: 92(int) Constant 6 - 234: 11(int) Constant 67 - 239: 92(int) Constant 5 - 242: 11(int) Constant 68 - 248: 11(int) Constant 70 - 256: 11(int) Constant 73 - 260: 11(int) Constant 74 - 262: TypePointer Output 18(fvec4) - 263: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 17 16 -264(outStream.Pos): 262(ptr) Variable Output - 267: 11(int) Constant 75 - 265: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 266 20 26 267 16 39 266 264(outStream.Pos) 169 - 271: TypePointer Output 11(int) - 272: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 13 17 16 -273(outStream.ViewportIndex): 271(ptr) Variable Output - 274: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 275 13 26 267 16 39 275 273(outStream.ViewportIndex) 169 -278(outStream.PrimitiveID): 271(ptr) Variable Output - 279: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 280 13 26 267 16 39 280 278(outStream.PrimitiveID) 169 - 283: TypePointer Output 21(fvec3) - 284: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 22 17 16 -285(outStream.Normal): 283(ptr) Variable Output - 286: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 287 22 26 267 16 39 287 285(outStream.Normal) 169 -290(outStream.Color): 283(ptr) Variable Output - 291: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 292 22 26 267 16 39 292 290(outStream.Color) 169 -295(outStream.ViewVec): 283(ptr) Variable Output - 296: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 297 22 26 267 16 39 297 295(outStream.ViewVec) 169 -300(outStream.LightVec): 283(ptr) Variable Output - 301: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 302 22 26 267 16 39 302 300(outStream.LightVec) 169 - 311: 11(int) Constant 78 - 313: TypeArray 18(fvec4) 17 - 314: TypePointer Input 313 - 315(input.Pos): 314(ptr) Variable Input - 316: TypePointer Input 18(fvec4) - 320: TypeArray 21(fvec3) 17 + 92: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 26 16 16 75 + 94: 11(int) Constant 57 + 95: 11(int) Constant 10 + 93: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 26 94 95 92 + 96: TypeInt 32 1 + 98: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 97 14 19 16 + 99: TypePointer Function 96(int) + 100: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 98 44 16 + 102: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 103 98 26 94 16 93 19 + 107: 96(int) Constant 0 + 118: 96(int) Constant 3 + 119: TypeBool + 121: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 120 14 84 16 + 123: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 26 16 16 93 + 127: 11(int) Constant 59 + 125: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 126 60 26 127 16 123 19 + 131: 8(float) Constant 0 + 132: 18(fvec4) ConstantComposite 131 131 131 131 + 133: 21(fvec3) ConstantComposite 131 131 131 + 134:46(GSOutput) ConstantComposite 132 16 16 133 133 133 133 + 137: 11(int) Constant 60 + 138: 96(int) Constant 1 + 139: TypePointer Function 21(fvec3) + 140: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 22 44 16 + 143: TypeMatrix 18(fvec4) 4 + 145: 119(bool) ConstantTrue + 144: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 20 19 145 + 146: TypeArray 143 84 + 147: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 144 84 + 148: TypeArray 143 84 + 149: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 144 84 + 150(UBO): TypeStruct 146 148 18(fvec4) + 153: 11(int) Constant 28 + 154: 11(int) Constant 21 + 151: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 152 147 26 153 154 16 16 17 + 157: 11(int) Constant 29 + 158: 11(int) Constant 20 + 155: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 156 149 26 157 158 16 16 17 + 161: 11(int) Constant 30 + 162: 11(int) Constant 17 + 159: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 160 20 26 161 162 16 16 17 + 163: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 164 37 26 137 16 39 164 16 17 151 155 159 + 165(ubo): TypeStruct 150(UBO) + 168: 11(int) Constant 33 + 166: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 167 163 26 168 28 16 16 17 + 169: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 167 37 26 137 16 39 167 16 17 166 + 170: TypePointer Uniform 165(ubo) + 171: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 169 84 16 + 172: 170(ptr) Variable Uniform + 175: 11(int) Constant 8 + 173: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 174 169 26 137 16 39 174 172 175 + 177: TypePointer Uniform 143 + 178: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 144 84 16 + 181: TypeMatrix 21(fvec3) 3 + 182: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 22 17 145 + 192: 96(int) Constant 4 + 195: 11(int) Constant 61 + 196: 96(int) Constant 2 + 200: TypePointer Function 18(fvec4) + 201: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 44 16 + 205: 11(int) Constant 63 + 203: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 204 20 26 205 16 123 19 + 214: 11(int) Constant 64 + 212: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 213 20 26 214 16 123 19 + 225: 11(int) Constant 66 + 223: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 224 22 26 225 16 123 19 + 228: TypePointer Uniform 18(fvec4) + 229: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 84 16 + 237: 96(int) Constant 6 + 240: 11(int) Constant 67 + 245: 96(int) Constant 5 + 248: 11(int) Constant 68 + 254: 11(int) Constant 70 + 262: 11(int) Constant 73 + 266: 11(int) Constant 74 + 268: TypePointer Output 18(fvec4) + 269: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 17 16 +270(outStream.Pos): 268(ptr) Variable Output + 273: 11(int) Constant 75 + 271: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 272 20 26 273 16 39 272 270(outStream.Pos) 175 + 277: TypePointer Output 11(int) + 278: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 13 17 16 +279(outStream.ViewportIndex): 277(ptr) Variable Output + 280: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 281 13 26 273 16 39 281 279(outStream.ViewportIndex) 175 +284(outStream.PrimitiveID): 277(ptr) Variable Output + 285: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 286 13 26 273 16 39 286 284(outStream.PrimitiveID) 175 + 289: TypePointer Output 21(fvec3) + 290: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 22 17 16 +291(outStream.Normal): 289(ptr) Variable Output + 292: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 293 22 26 273 16 39 293 291(outStream.Normal) 175 +296(outStream.Color): 289(ptr) Variable Output + 297: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 298 22 26 273 16 39 298 296(outStream.Color) 175 +301(outStream.ViewVec): 289(ptr) Variable Output + 302: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 303 22 26 273 16 39 303 301(outStream.ViewVec) 175 +306(outStream.LightVec): 289(ptr) Variable Output + 307: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 308 22 26 273 16 39 308 306(outStream.LightVec) 175 + 317: 11(int) Constant 78 + 320: TypeArray 18(fvec4) 17 321: TypePointer Input 320 -322(input.Normal): 321(ptr) Variable Input - 323: TypePointer Input 21(fvec3) -327(input.Color): 321(ptr) Variable Input - 350: TypePointer Input 11(int) -351(InvocationID): 350(ptr) Variable Input -354(PrimitiveID): 350(ptr) Variable Input + 322(input.Pos): 321(ptr) Variable Input + 323: TypePointer Input 18(fvec4) + 327: TypeArray 21(fvec3) 17 + 328: TypePointer Input 327 +329(input.Normal): 328(ptr) Variable Input + 330: TypePointer Input 21(fvec3) +334(input.Color): 328(ptr) Variable Input + 357: TypePointer Input 11(int) +358(InvocationID): 357(ptr) Variable Input +361(PrimitiveID): 357(ptr) Variable Input 6(main): 4 Function None 5 7: Label - 312(input): 43(ptr) Variable Function -349(InvocationID): 64(ptr) Variable Function -353(PrimitiveID): 64(ptr) Variable Function - 356(outStream): 62(ptr) Variable Function - 357(param): 43(ptr) Variable Function - 359(param): 62(ptr) Variable Function - 360(param): 64(ptr) Variable Function - 362(param): 64(ptr) Variable Function - 317: 316(ptr) AccessChain 315(input.Pos) 103 - 318: 18(fvec4) Load 317 - 319: 194(ptr) AccessChain 312(input) 103 103 - Store 319 318 - 324: 323(ptr) AccessChain 322(input.Normal) 103 - 325: 21(fvec3) Load 324 - 326: 134(ptr) AccessChain 312(input) 103 133 + 319(input): 43(ptr) Variable Function +356(InvocationID): 64(ptr) Variable Function +360(PrimitiveID): 64(ptr) Variable Function + 363(outStream): 62(ptr) Variable Function + 364(param): 43(ptr) Variable Function + 366(param): 62(ptr) Variable Function + 367(param): 64(ptr) Variable Function + 369(param): 64(ptr) Variable Function + 324: 323(ptr) AccessChain 322(input.Pos) 107 + 325: 18(fvec4) Load 324 + 326: 200(ptr) AccessChain 319(input) 107 107 Store 326 325 - 328: 323(ptr) AccessChain 327(input.Color) 103 - 329: 21(fvec3) Load 328 - 330: 134(ptr) AccessChain 312(input) 103 190 - Store 330 329 - 331: 316(ptr) AccessChain 315(input.Pos) 133 - 332: 18(fvec4) Load 331 - 333: 194(ptr) AccessChain 312(input) 133 103 + 331: 330(ptr) AccessChain 329(input.Normal) 107 + 332: 21(fvec3) Load 331 + 333: 139(ptr) AccessChain 319(input) 107 138 Store 333 332 - 334: 323(ptr) AccessChain 322(input.Normal) 133 - 335: 21(fvec3) Load 334 - 336: 134(ptr) AccessChain 312(input) 133 133 - Store 336 335 - 337: 323(ptr) AccessChain 327(input.Color) 133 - 338: 21(fvec3) Load 337 - 339: 134(ptr) AccessChain 312(input) 133 190 - Store 339 338 - 340: 316(ptr) AccessChain 315(input.Pos) 190 - 341: 18(fvec4) Load 340 - 342: 194(ptr) AccessChain 312(input) 190 103 - Store 342 341 - 343: 323(ptr) AccessChain 322(input.Normal) 190 - 344: 21(fvec3) Load 343 - 345: 134(ptr) AccessChain 312(input) 190 133 - Store 345 344 - 346: 323(ptr) AccessChain 327(input.Color) 190 - 347: 21(fvec3) Load 346 - 348: 134(ptr) AccessChain 312(input) 190 190 - Store 348 347 - 352: 11(int) Load 351(InvocationID) - Store 349(InvocationID) 352 - 355: 11(int) Load 354(PrimitiveID) - Store 353(PrimitiveID) 355 - 358: 41 Load 312(input) - Store 357(param) 358 - 361: 11(int) Load 349(InvocationID) - Store 360(param) 361 - 363: 11(int) Load 353(PrimitiveID) - Store 362(param) 363 - 364: 4 FunctionCall 72(@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;) 357(param) 359(param) 360(param) 362(param) - 365:46(GSOutput) Load 359(param) - Store 356(outStream) 365 + 335: 330(ptr) AccessChain 334(input.Color) 107 + 336: 21(fvec3) Load 335 + 337: 139(ptr) AccessChain 319(input) 107 196 + Store 337 336 + 338: 323(ptr) AccessChain 322(input.Pos) 138 + 339: 18(fvec4) Load 338 + 340: 200(ptr) AccessChain 319(input) 138 107 + Store 340 339 + 341: 330(ptr) AccessChain 329(input.Normal) 138 + 342: 21(fvec3) Load 341 + 343: 139(ptr) AccessChain 319(input) 138 138 + Store 343 342 + 344: 330(ptr) AccessChain 334(input.Color) 138 + 345: 21(fvec3) Load 344 + 346: 139(ptr) AccessChain 319(input) 138 196 + Store 346 345 + 347: 323(ptr) AccessChain 322(input.Pos) 196 + 348: 18(fvec4) Load 347 + 349: 200(ptr) AccessChain 319(input) 196 107 + Store 349 348 + 350: 330(ptr) AccessChain 329(input.Normal) 196 + 351: 21(fvec3) Load 350 + 352: 139(ptr) AccessChain 319(input) 196 138 + Store 352 351 + 353: 330(ptr) AccessChain 334(input.Color) 196 + 354: 21(fvec3) Load 353 + 355: 139(ptr) AccessChain 319(input) 196 196 + Store 355 354 + 359: 11(int) Load 358(InvocationID) + Store 356(InvocationID) 359 + 362: 11(int) Load 361(PrimitiveID) + Store 360(PrimitiveID) 362 + 365: 41 Load 319(input) + Store 364(param) 365 + 368: 11(int) Load 356(InvocationID) + Store 367(param) 368 + 370: 11(int) Load 360(PrimitiveID) + Store 369(param) 370 + 371: 4 FunctionCall 72(@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;) 364(param) 366(param) 367(param) 369(param) + 372:46(GSOutput) Load 366(param) + Store 363(outStream) 372 Return FunctionEnd 72(@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;): 4 Function None 66 @@ -362,11 +446,11 @@ spv.debuginfo.hlsl.geom 70(InvocationID): 64(ptr) FunctionParameter 71(PrimitiveID): 64(ptr) FunctionParameter 73: Label - 97(i): 95(ptr) Variable Function - 119(output): 62(ptr) Variable Function - 196(pos): 194(ptr) Variable Function - 205(worldPos): 194(ptr) Variable Function - 216(lPos): 134(ptr) Variable Function + 101(i): 99(ptr) Variable Function + 124(output): 62(ptr) Variable Function + 202(pos): 200(ptr) Variable Function + 211(worldPos): 200(ptr) Variable Function + 222(lPos): 139(ptr) Variable Function 80: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 75 81: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 38 38 16 16 78: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 76 68(input) 79 @@ -374,136 +458,138 @@ spv.debuginfo.hlsl.geom 88: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 86 70(InvocationID) 79 90: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 89 71(PrimitiveID) 79 91: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 75 72(@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;) - 102: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 100 100 16 16 - 101: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 98 97(i) 79 - Store 97(i) 103 - Branch 104 - 104: Label - 108: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 75 - 109: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 100 100 16 16 - LoopMerge 106 107 None - Branch 110 - 110: Label - 112: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 75 - 113: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 100 100 16 16 - 111: 92(int) Load 97(i) - 118: 115(bool) SLessThan 111 114 - BranchConditional 118 105 106 - 105: Label - 124: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 75 - 125: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 122 122 16 16 - 123: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 120 119(output) 79 - Store 119(output) 129 - 131: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 132 132 16 16 - 130: 92(int) Load 97(i) - 136: 134(ptr) AccessChain 68(input) 130 133 - 137: 21(fvec3) Load 136 - 170: 11(int) Load 70(InvocationID) - 173: 171(ptr) AccessChain 167 103 133 170 - 174: 138 Load 173 - 177: 18(fvec4) CompositeExtract 174 0 - 178: 21(fvec3) VectorShuffle 177 177 0 1 2 - 179: 18(fvec4) CompositeExtract 174 1 - 180: 21(fvec3) VectorShuffle 179 179 0 1 2 - 181: 18(fvec4) CompositeExtract 174 2 - 182: 21(fvec3) VectorShuffle 181 181 0 1 2 - 183: 175 CompositeConstruct 178 180 182 - 184: 21(fvec3) VectorTimesMatrix 137 183 - 185: 134(ptr) AccessChain 119(output) 114 - Store 185 184 - 188: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 189 189 16 16 - 187: 92(int) Load 97(i) - 191: 134(ptr) AccessChain 68(input) 187 190 - 192: 21(fvec3) Load 191 - 193: 134(ptr) AccessChain 119(output) 186 - Store 193 192 - 201: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 199 199 16 16 - 200: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 197 196(pos) 79 - 202: 92(int) Load 97(i) - 203: 194(ptr) AccessChain 68(input) 202 103 - 204: 18(fvec4) Load 203 - Store 196(pos) 204 - 210: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 208 208 16 16 - 209: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 206 205(worldPos) 79 - 211: 18(fvec4) Load 196(pos) - 212: 11(int) Load 70(InvocationID) - 213: 171(ptr) AccessChain 167 103 133 212 - 214: 138 Load 213 - 215: 18(fvec4) VectorTimesMatrix 211 214 - Store 205(worldPos) 215 - 221: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 219 219 16 16 - 220: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 217 216(lPos) 79 - 224: 222(ptr) AccessChain 167 103 190 - 225: 18(fvec4) Load 224 - 226: 11(int) Load 70(InvocationID) - 227: 171(ptr) AccessChain 167 103 133 226 - 228: 138 Load 227 - 229: 18(fvec4) VectorTimesMatrix 225 228 - 230: 21(fvec3) VectorShuffle 229 229 0 1 2 - Store 216(lPos) 230 - 233: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 234 234 16 16 - 232: 21(fvec3) Load 216(lPos) - 235: 18(fvec4) Load 205(worldPos) + 105: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 93 + 106: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 94 94 16 16 + 104: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 102 101(i) 79 + Store 101(i) 107 + Branch 108 + 108: Label + 112: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 93 + 113: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 94 94 16 16 + LoopMerge 110 111 None + Branch 114 + 114: Label + 116: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 93 + 117: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 94 94 16 16 + 115: 96(int) Load 101(i) + 122: 119(bool) SLessThan 115 118 + BranchConditional 122 109 110 + 109: Label + 129: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 123 + 130: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 127 127 16 16 + 128: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 125 124(output) 79 + Store 124(output) 134 + 136: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 137 137 16 16 + 135: 96(int) Load 101(i) + 141: 139(ptr) AccessChain 68(input) 135 138 + 142: 21(fvec3) Load 141 + 176: 11(int) Load 70(InvocationID) + 179: 177(ptr) AccessChain 172 107 138 176 + 180: 143 Load 179 + 183: 18(fvec4) CompositeExtract 180 0 + 184: 21(fvec3) VectorShuffle 183 183 0 1 2 + 185: 18(fvec4) CompositeExtract 180 1 + 186: 21(fvec3) VectorShuffle 185 185 0 1 2 + 187: 18(fvec4) CompositeExtract 180 2 + 188: 21(fvec3) VectorShuffle 187 187 0 1 2 + 189: 181 CompositeConstruct 184 186 188 + 190: 21(fvec3) VectorTimesMatrix 142 189 + 191: 139(ptr) AccessChain 124(output) 118 + Store 191 190 + 194: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 195 195 16 16 + 193: 96(int) Load 101(i) + 197: 139(ptr) AccessChain 68(input) 193 196 + 198: 21(fvec3) Load 197 + 199: 139(ptr) AccessChain 124(output) 192 + Store 199 198 + 207: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 205 205 16 16 + 206: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 203 202(pos) 79 + 208: 96(int) Load 101(i) + 209: 200(ptr) AccessChain 68(input) 208 107 + 210: 18(fvec4) Load 209 + Store 202(pos) 210 + 216: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 214 214 16 16 + 215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 212 211(worldPos) 79 + 217: 18(fvec4) Load 202(pos) + 218: 11(int) Load 70(InvocationID) + 219: 177(ptr) AccessChain 172 107 138 218 + 220: 143 Load 219 + 221: 18(fvec4) VectorTimesMatrix 217 220 + Store 211(worldPos) 221 + 227: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 225 225 16 16 + 226: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 223 222(lPos) 79 + 230: 228(ptr) AccessChain 172 107 196 + 231: 18(fvec4) Load 230 + 232: 11(int) Load 70(InvocationID) + 233: 177(ptr) AccessChain 172 107 138 232 + 234: 143 Load 233 + 235: 18(fvec4) VectorTimesMatrix 231 234 236: 21(fvec3) VectorShuffle 235 235 0 1 2 - 237: 21(fvec3) FSub 232 236 - 238: 134(ptr) AccessChain 119(output) 231 - Store 238 237 - 241: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 242 242 16 16 - 240: 18(fvec4) Load 205(worldPos) - 243: 21(fvec3) VectorShuffle 240 240 0 1 2 - 244: 21(fvec3) FNegate 243 - 245: 134(ptr) AccessChain 119(output) 239 - Store 245 244 + Store 222(lPos) 236 + 239: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 240 240 16 16 + 238: 21(fvec3) Load 222(lPos) + 241: 18(fvec4) Load 211(worldPos) + 242: 21(fvec3) VectorShuffle 241 241 0 1 2 + 243: 21(fvec3) FSub 238 242 + 244: 139(ptr) AccessChain 124(output) 237 + Store 244 243 247: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 248 248 16 16 - 246: 18(fvec4) Load 205(worldPos) - 249: 11(int) Load 70(InvocationID) - 250: 171(ptr) AccessChain 167 103 103 249 - 251: 138 Load 250 - 252: 18(fvec4) VectorTimesMatrix 246 251 - 253: 194(ptr) AccessChain 119(output) 103 - Store 253 252 - 255: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 256 256 16 16 - 254: 11(int) Load 70(InvocationID) - 257: 64(ptr) AccessChain 119(output) 133 - Store 257 254 - 259: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 260 260 16 16 - 258: 11(int) Load 71(PrimitiveID) - 261: 64(ptr) AccessChain 119(output) 190 - Store 261 258 - 269: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 267 267 16 16 - 268: 194(ptr) AccessChain 119(output) 103 - 270: 18(fvec4) Load 268 - Store 264(outStream.Pos) 270 - 276: 64(ptr) AccessChain 119(output) 133 - 277: 11(int) Load 276 - Store 273(outStream.ViewportIndex) 277 - 281: 64(ptr) AccessChain 119(output) 190 - 282: 11(int) Load 281 - Store 278(outStream.PrimitiveID) 282 - 288: 134(ptr) AccessChain 119(output) 114 - 289: 21(fvec3) Load 288 - Store 285(outStream.Normal) 289 - 293: 134(ptr) AccessChain 119(output) 186 - 294: 21(fvec3) Load 293 - Store 290(outStream.Color) 294 - 298: 134(ptr) AccessChain 119(output) 239 - 299: 21(fvec3) Load 298 - Store 295(outStream.ViewVec) 299 - 303: 134(ptr) AccessChain 119(output) 231 - 304: 21(fvec3) Load 303 - Store 300(outStream.LightVec) 304 + 246: 18(fvec4) Load 211(worldPos) + 249: 21(fvec3) VectorShuffle 246 246 0 1 2 + 250: 21(fvec3) FNegate 249 + 251: 139(ptr) AccessChain 124(output) 245 + Store 251 250 + 253: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 254 254 16 16 + 252: 18(fvec4) Load 211(worldPos) + 255: 11(int) Load 70(InvocationID) + 256: 177(ptr) AccessChain 172 107 107 255 + 257: 143 Load 256 + 258: 18(fvec4) VectorTimesMatrix 252 257 + 259: 200(ptr) AccessChain 124(output) 107 + Store 259 258 + 261: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 262 262 16 16 + 260: 11(int) Load 70(InvocationID) + 263: 64(ptr) AccessChain 124(output) 138 + Store 263 260 + 265: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 266 266 16 16 + 264: 11(int) Load 71(PrimitiveID) + 267: 64(ptr) AccessChain 124(output) 196 + Store 267 264 + 275: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 273 273 16 16 + 274: 200(ptr) AccessChain 124(output) 107 + 276: 18(fvec4) Load 274 + Store 270(outStream.Pos) 276 + 282: 64(ptr) AccessChain 124(output) 138 + 283: 11(int) Load 282 + Store 279(outStream.ViewportIndex) 283 + 287: 64(ptr) AccessChain 124(output) 196 + 288: 11(int) Load 287 + Store 284(outStream.PrimitiveID) 288 + 294: 139(ptr) AccessChain 124(output) 118 + 295: 21(fvec3) Load 294 + Store 291(outStream.Normal) 295 + 299: 139(ptr) AccessChain 124(output) 192 + 300: 21(fvec3) Load 299 + Store 296(outStream.Color) 300 + 304: 139(ptr) AccessChain 124(output) 245 + 305: 21(fvec3) Load 304 + Store 301(outStream.ViewVec) 305 + 309: 139(ptr) AccessChain 124(output) 237 + 310: 21(fvec3) Load 309 + Store 306(outStream.LightVec) 310 EmitVertex - Branch 107 - 107: Label - 306: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 75 - 307: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 100 100 16 16 - 305: 92(int) Load 97(i) - 308: 92(int) IAdd 305 133 - Store 97(i) 308 - Branch 104 - 106: Label - 309: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 75 - 310: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 311 311 16 16 + Branch 111 + 111: Label + 312: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 93 + 313: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 94 94 16 16 + 311: 96(int) Load 101(i) + 314: 96(int) IAdd 311 138 + Store 101(i) 314 + Branch 108 + 110: Label + 315: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92 + 316: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 26 317 317 16 16 EndPrimitive + 318: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 75 Return FunctionEnd diff --git a/Test/baseResults/spv.debuginfo.hlsl.tesc.out b/Test/baseResults/spv.debuginfo.hlsl.tesc.out index a3cbcc5e..494878cd 100644 --- a/Test/baseResults/spv.debuginfo.hlsl.tesc.out +++ b/Test/baseResults/spv.debuginfo.hlsl.tesc.out @@ -1,21 +1,21 @@ spv.debuginfo.hlsl.tesc -WARNING: 0:158: '' : attribute does not apply to entry point +WARNING: spv.debuginfo.hlsl.tesc:158: '' : attribute does not apply to entry point // Module Version 10000 // Generated by (magic number): 8000b -// Id's are bound by 706 +// Id's are bound by 724 Capability Tessellation Extension "SPV_KHR_non_semantic_info" 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" 3: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 - EntryPoint TessellationControl 6 "main" 598 605 612 646 655 662 669 684 699 + EntryPoint TessellationControl 6 "main" 616 623 630 664 673 680 687 702 717 ExecutionMode 6 OutputVertices 4 ExecutionMode 6 Quads ExecutionMode 6 SpacingEqual ExecutionMode 6 VertexOrderCw - 2: String "" + 2: String "spv.debuginfo.hlsl.tesc" 9: String "float" 12: String "uint" 30: String "screenSpaceTessFactor" @@ -27,6 +27,170 @@ WARNING: 0:158: '' : attribute does not apply to entry point // OpModuleProcessed keep-uncalled // OpModuleProcessed hlsl-offsets #line 1 +/* +The MIT License (MIT) + +Copyright (c) 2022 Google LLC +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. +*/ + +struct UBO +{ + float4x4 projection; + float4x4 modelview; + float4 lightPos; + float4 frustumPlanes[6]; + float displacementFactor; + float tessellationFactor; + float2 viewportDim; + float tessellatedEdgeSize; +}; +cbuffer ubo : register(b0) { UBO ubo; }; + +Texture2D textureHeight : register(t1); +SamplerState samplerHeight : register(s1); + +struct VSOutput +{ + float4 Pos : SV_POSITION; +[[vk::location(0)]] float3 Normal : NORMAL0; +[[vk::location(1)]] float2 UV : TEXCOORD0; +}; + +struct HSOutput +{ +[[vk::location(2)]] float4 Pos : SV_POSITION; +[[vk::location(0)]] float3 Normal : NORMAL0; +[[vk::location(1)]] float2 UV : TEXCOORD0; +}; + +struct ConstantsHSOutput +{ + float TessLevelOuter[4] : SV_TessFactor; + float TessLevelInner[2] : SV_InsideTessFactor; +}; + +// Calculate the tessellation factor based on screen space +// dimensions of the edge +float screenSpaceTessFactor(float4 p0, float4 p1) +{ + // Calculate edge mid point + float4 midPoint = 0.5 * (p0 + p1); + // Sphere radius as distance between the control points + float radius = distance(p0, p1) / 2.0; + + // View space + float4 v0 = mul(ubo.modelview, midPoint); + + // Project into clip space + float4 clip0 = mul(ubo.projection, (v0 - float4(radius, float3(0.0, 0.0, 0.0)))); + float4 clip1 = mul(ubo.projection, (v0 + float4(radius, float3(0.0, 0.0, 0.0)))); + + // Get normalized device coordinates + clip0 /= clip0.w; + clip1 /= clip1.w; + + // Convert to viewport coordinates + clip0.xy *= ubo.viewportDim; + clip1.xy *= ubo.viewportDim; + + // Return the tessellation factor based on the screen size + // given by the distance of the two edge control points in screen space + // and a reference (min.) tessellation size for the edge set by the application + return clamp(distance(clip0, clip1) / ubo.tessellatedEdgeSize * ubo.tessellationFactor, 1.0, 64.0); +} + +// Checks the current's patch visibility against the frustum using a sphere check +// Sphere radius is given by the patch size +bool frustumCheck(float4 Pos, float2 inUV) +{ + // Fixed radius (increase if patch size is increased in example) + const float radius = 8.0f; + float4 pos = Pos; + pos.y -= textureHeight.SampleLevel(samplerHeight, inUV, 0.0).r * ubo.displacementFactor; + + // Check sphere against frustum planes + for (int i = 0; i < 6; i++) { + if (dot(pos, ubo.frustumPlanes[i]) + radius < 0.0) + { + return false; + } + } + return true; +} + +ConstantsHSOutput ConstantsHS(InputPatch patch) +{ + ConstantsHSOutput output = (ConstantsHSOutput)0; + + if (!frustumCheck(patch[0].Pos, patch[0].UV)) + { + output.TessLevelInner[0] = 0.0; + output.TessLevelInner[1] = 0.0; + output.TessLevelOuter[0] = 0.0; + output.TessLevelOuter[1] = 0.0; + output.TessLevelOuter[2] = 0.0; + output.TessLevelOuter[3] = 0.0; + } + else + { + if (ubo.tessellationFactor > 0.0) + { + output.TessLevelOuter[0] = screenSpaceTessFactor(patch[3].Pos, patch[0].Pos); + output.TessLevelOuter[1] = screenSpaceTessFactor(patch[0].Pos, patch[1].Pos); + output.TessLevelOuter[2] = screenSpaceTessFactor(patch[1].Pos, patch[2].Pos); + output.TessLevelOuter[3] = screenSpaceTessFactor(patch[2].Pos, patch[3].Pos); + output.TessLevelInner[0] = lerp(output.TessLevelOuter[0], output.TessLevelOuter[3], 0.5); + output.TessLevelInner[1] = lerp(output.TessLevelOuter[2], output.TessLevelOuter[1], 0.5); + } + else + { + // Tessellation factor can be set to zero by example + // to demonstrate a simple passthrough + output.TessLevelInner[0] = 1.0; + output.TessLevelInner[1] = 1.0; + output.TessLevelOuter[0] = 1.0; + output.TessLevelOuter[1] = 1.0; + output.TessLevelOuter[2] = 1.0; + output.TessLevelOuter[3] = 1.0; + } + } + + return output; +} + +[domain("quad")] +[partitioning("integer")] +[outputtopology("triangle_cw")] +[outputcontrolpoints(4)] +[patchconstantfunc("ConstantsHS")] +[maxtessfactor(20.0f)] +HSOutput main(InputPatch patch, uint InvocationID : SV_OutputControlPointID) +{ + HSOutput output = (HSOutput)0; + output.Pos = patch[InvocationID].Pos; + output.Normal = patch[InvocationID].Normal; + output.UV = patch[InvocationID].UV; + return output; +} " 39: String "p0" 45: String "p1" @@ -45,30 +209,31 @@ WARNING: 0:158: '' : attribute does not apply to entry point 129: String "HSOutput" 137: String "@main" 144: String "InvocationID" - 149: String "midPoint" - 162: String "radius" - 173: String "v0" - 185: String "modelview" - 190: String "lightPos" - 194: String "frustumPlanes" - 197: String "tessellatedEdgeSize" - 201: String "viewportDim" - 205: String "UBO" - 208: String "ubo" - 217: String "int" - 228: String "clip0" - 246: String "clip1" - 324: String "pos" - 331: String "type.2d.image" - 333: String "@type.2d.image" - 339: String "textureHeight" - 344: String "type.sampler" - 345: String "@type.sampler" - 350: String "samplerHeight" - 354: String "type.sampled.image" - 355: String "@type.sampled.image" - 372: String "i" - 424: String "output" + 150: String "midPoint" + 164: String "radius" + 175: String "v0" + 187: String "modelview" + 192: String "lightPos" + 196: String "frustumPlanes" + 199: String "tessellatedEdgeSize" + 203: String "viewportDim" + 207: String "UBO" + 210: String "ubo" + 217: String "" + 220: String "int" + 231: String "clip0" + 249: String "clip1" + 328: String "pos" + 336: String "type.2d.image" + 338: String "@type.2d.image" + 344: String "textureHeight" + 349: String "type.sampler" + 350: String "@type.sampler" + 355: String "samplerHeight" + 359: String "type.sampled.image" + 360: String "@type.sampled.image" + 380: String "i" + 435: String "output" Name 6 "main" Name 28 "screenSpaceTessFactor(vf4;vf4;" Name 26 "p0" @@ -92,87 +257,87 @@ WARNING: 0:158: '' : attribute does not apply to entry point Name 135 "@main(struct-VSOutput-vf4-vf3-vf21[4];u1;" Name 133 "patch" Name 134 "InvocationID" - Name 147 "midPoint" - Name 160 "radius" - Name 171 "v0" - Name 183 "UBO" - MemberName 183(UBO) 0 "projection" - MemberName 183(UBO) 1 "modelview" - MemberName 183(UBO) 2 "lightPos" - MemberName 183(UBO) 3 "frustumPlanes" - MemberName 183(UBO) 4 "displacementFactor" - MemberName 183(UBO) 5 "tessellationFactor" - MemberName 183(UBO) 6 "viewportDim" - MemberName 183(UBO) 7 "tessellatedEdgeSize" - Name 206 "ubo" - MemberName 206(ubo) 0 "ubo" - Name 213 "" - Name 226 "clip0" - Name 244 "clip1" - Name 322 "pos" - Name 337 "textureHeight" - Name 348 "samplerHeight" - Name 370 "i" - Name 422 "output" - Name 432 "param" - Name 437 "param" - Name 472 "param" - Name 478 "param" - Name 483 "param" - Name 488 "param" + Name 148 "midPoint" + Name 162 "radius" + Name 173 "v0" + Name 185 "UBO" + MemberName 185(UBO) 0 "projection" + MemberName 185(UBO) 1 "modelview" + MemberName 185(UBO) 2 "lightPos" + MemberName 185(UBO) 3 "frustumPlanes" + MemberName 185(UBO) 4 "displacementFactor" + MemberName 185(UBO) 5 "tessellationFactor" + MemberName 185(UBO) 6 "viewportDim" + MemberName 185(UBO) 7 "tessellatedEdgeSize" + Name 208 "ubo" + MemberName 208(ubo) 0 "ubo" + Name 215 "" + Name 229 "clip0" + Name 247 "clip1" + Name 326 "pos" + Name 342 "textureHeight" + Name 353 "samplerHeight" + Name 378 "i" + Name 433 "output" + Name 444 "param" + Name 449 "param" + Name 487 "param" Name 493 "param" Name 498 "param" Name 503 "param" Name 508 "param" - Name 560 "output" - Name 595 "patch" - Name 598 "patch.Pos" - Name 605 "patch.Normal" - Name 612 "patch.UV" - Name 644 "InvocationID" - Name 646 "InvocationID" - Name 648 "flattenTemp" - Name 649 "param" - Name 651 "param" - Name 655 "@entryPointOutput.Pos" - Name 662 "@entryPointOutput.Normal" - Name 669 "@entryPointOutput.UV" - Name 679 "@patchConstantResult" - Name 680 "param" - Name 684 "@patchConstantOutput.TessLevelOuter" - Name 699 "@patchConstantOutput.TessLevelInner" - Decorate 181 ArrayStride 16 - MemberDecorate 183(UBO) 0 RowMajor - MemberDecorate 183(UBO) 0 MatrixStride 16 - MemberDecorate 183(UBO) 0 Offset 0 - MemberDecorate 183(UBO) 1 RowMajor - MemberDecorate 183(UBO) 1 MatrixStride 16 - MemberDecorate 183(UBO) 1 Offset 64 - MemberDecorate 183(UBO) 2 Offset 128 - MemberDecorate 183(UBO) 3 Offset 144 - MemberDecorate 183(UBO) 4 Offset 240 - MemberDecorate 183(UBO) 5 Offset 244 - MemberDecorate 183(UBO) 6 Offset 248 - MemberDecorate 183(UBO) 7 Offset 256 - Decorate 206(ubo) Block - MemberDecorate 206(ubo) 0 Offset 0 - Decorate 213 Binding 0 - Decorate 213 DescriptorSet 0 - Decorate 337(textureHeight) Binding 1 - Decorate 337(textureHeight) DescriptorSet 0 - Decorate 348(samplerHeight) Binding 1 - Decorate 348(samplerHeight) DescriptorSet 0 - Decorate 598(patch.Pos) BuiltIn Position - Decorate 605(patch.Normal) Location 0 - Decorate 612(patch.UV) Location 1 - Decorate 646(InvocationID) BuiltIn InvocationId - Decorate 655(@entryPointOutput.Pos) BuiltIn Position - Decorate 662(@entryPointOutput.Normal) Location 0 - Decorate 669(@entryPointOutput.UV) Location 1 - Decorate 684(@patchConstantOutput.TessLevelOuter) BuiltIn TessLevelOuter - Decorate 684(@patchConstantOutput.TessLevelOuter) Patch - Decorate 699(@patchConstantOutput.TessLevelInner) BuiltIn TessLevelInner - Decorate 699(@patchConstantOutput.TessLevelInner) Patch + Name 513 "param" + Name 518 "param" + Name 523 "param" + Name 577 "output" + Name 613 "patch" + Name 616 "patch.Pos" + Name 623 "patch.Normal" + Name 630 "patch.UV" + Name 662 "InvocationID" + Name 664 "InvocationID" + Name 666 "flattenTemp" + Name 667 "param" + Name 669 "param" + Name 673 "@entryPointOutput.Pos" + Name 680 "@entryPointOutput.Normal" + Name 687 "@entryPointOutput.UV" + Name 697 "@patchConstantResult" + Name 698 "param" + Name 702 "@patchConstantOutput.TessLevelOuter" + Name 717 "@patchConstantOutput.TessLevelInner" + Decorate 183 ArrayStride 16 + MemberDecorate 185(UBO) 0 RowMajor + MemberDecorate 185(UBO) 0 MatrixStride 16 + MemberDecorate 185(UBO) 0 Offset 0 + MemberDecorate 185(UBO) 1 RowMajor + MemberDecorate 185(UBO) 1 MatrixStride 16 + MemberDecorate 185(UBO) 1 Offset 64 + MemberDecorate 185(UBO) 2 Offset 128 + MemberDecorate 185(UBO) 3 Offset 144 + MemberDecorate 185(UBO) 4 Offset 240 + MemberDecorate 185(UBO) 5 Offset 244 + MemberDecorate 185(UBO) 6 Offset 248 + MemberDecorate 185(UBO) 7 Offset 256 + Decorate 208(ubo) Block + MemberDecorate 208(ubo) 0 Offset 0 + Decorate 215 Binding 0 + Decorate 215 DescriptorSet 0 + Decorate 342(textureHeight) Binding 1 + Decorate 342(textureHeight) DescriptorSet 0 + Decorate 353(samplerHeight) Binding 1 + Decorate 353(samplerHeight) DescriptorSet 0 + Decorate 616(patch.Pos) BuiltIn Position + Decorate 623(patch.Normal) Location 0 + Decorate 630(patch.UV) Location 1 + Decorate 664(InvocationID) BuiltIn InvocationId + Decorate 673(@entryPointOutput.Pos) BuiltIn Position + Decorate 680(@entryPointOutput.Normal) Location 0 + Decorate 687(@entryPointOutput.UV) Location 1 + Decorate 702(@patchConstantOutput.TessLevelOuter) BuiltIn TessLevelOuter + Decorate 702(@patchConstantOutput.TessLevelOuter) Patch + Decorate 717(@patchConstantOutput.TessLevelInner) BuiltIn TessLevelInner + Decorate 717(@patchConstantOutput.TessLevelInner) Patch 4: TypeVoid 5: TypeFunction 4 8: TypeFloat 32 @@ -262,660 +427,677 @@ WARNING: 0:158: '' : attribute does not apply to entry point 138: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 137 132 32 130 16 35 137 17 130 139: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 115 90 32 130 16 138 19 36 143: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 144 13 32 130 16 138 19 46 - 150: 11(int) Constant 67 - 148: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 149 20 32 150 16 31 19 - 153: 8(float) Constant 1056964608 - 158: TypePointer Function 8(float) - 159: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 22 16 - 163: 11(int) Constant 69 - 161: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 162 10 32 163 16 31 19 - 169: 8(float) Constant 1073741824 - 174: 11(int) Constant 72 - 172: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 173 20 32 174 16 31 19 - 178: TypeMatrix 18(fvec4) 4 - 180: 52(bool) ConstantTrue - 179: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 20 19 180 - 181: TypeArray 18(fvec4) 15 - 182: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 20 15 - 183(UBO): TypeStruct 178 178 18(fvec4) 181 8(float) 8(float) 48(fvec2) 8(float) - 186: 11(int) Constant 29 - 187: 11(int) Constant 20 - 184: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 185 179 32 186 187 16 16 17 - 188: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 185 179 32 186 187 16 16 17 - 191: 11(int) Constant 30 - 192: 11(int) Constant 17 - 189: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 190 20 32 191 192 16 16 17 - 195: 11(int) Constant 22 - 193: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 194 182 32 85 195 16 16 17 - 198: 11(int) Constant 27 - 196: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 197 10 32 81 198 16 16 17 - 199: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 197 10 32 81 198 16 16 17 - 202: 11(int) Constant 34 - 200: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 201 49 32 202 187 16 16 17 - 203: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 197 10 32 81 198 16 16 17 - 204: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 205 36 32 174 16 35 205 16 17 184 188 189 193 196 199 200 203 - 206(ubo): TypeStruct 183(UBO) - 209: 11(int) Constant 37 - 207: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 208 204 32 209 209 16 16 17 - 210: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 208 36 32 174 16 35 208 16 17 207 - 211: TypePointer Uniform 206(ubo) - 212: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 210 46 16 - 213: 211(ptr) Variable Uniform - 215: 11(int) Constant 8 - 214: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 2 210 32 174 16 35 2 213 215 - 216: TypeInt 32 1 - 218: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 217 14 19 16 - 219: 216(int) Constant 0 - 220: 216(int) Constant 1 - 221: TypePointer Uniform 178 - 222: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 179 46 16 - 229: 11(int) Constant 75 - 227: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 228 20 32 229 16 31 19 - 234: 8(float) Constant 0 - 235: 72(fvec3) ConstantComposite 234 234 234 - 247: 11(int) Constant 76 - 245: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 246 20 32 247 16 31 19 - 262: 11(int) Constant 79 - 269: 11(int) Constant 80 - 274: 216(int) Constant 6 - 275: TypePointer Uniform 48(fvec2) - 276: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 49 46 16 - 279: 11(int) Constant 83 - 290: 11(int) Constant 84 - 301: 11(int) Constant 89 - 304: 216(int) Constant 7 - 305: TypePointer Uniform 8(float) - 306: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 46 16 - 310: 216(int) Constant 5 - 314: 8(float) Constant 1065353216 - 315: 8(float) Constant 1115684864 - 325: 11(int) Constant 98 - 323: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 324 20 32 325 16 62 19 - 329: TypeImage 8(float) 2D sampled format:Unknown - 332: 11(int) Constant 99 - 334: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone) - 330: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 331 16 32 332 16 35 333 334 17 - 335: TypePointer UniformConstant 329 - 336: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 330 16 16 -337(textureHeight): 335(ptr) Variable UniformConstant - 338: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 339 330 32 332 16 35 339 337(textureHeight) 215 - 342: TypeSampler - 343: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 344 36 32 332 16 35 345 334 17 - 346: TypePointer UniformConstant 342 - 347: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 343 16 16 -348(samplerHeight): 346(ptr) Variable UniformConstant - 349: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 350 343 32 332 16 35 350 348(samplerHeight) 215 - 352: TypeSampledImage 329 - 353: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 354 16 32 332 16 35 355 334 17 - 360: 216(int) Constant 4 - 368: TypePointer Function 216(int) - 369: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 218 22 16 - 373: 11(int) Constant 102 - 371: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 372 218 32 373 16 62 19 - 390: 11(int) Constant 103 - 391: 216(int) Constant 3 - 393: TypePointer Uniform 18(fvec4) - 394: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 46 16 - 398: 8(float) Constant 1090519040 - 403: 52(bool) ConstantFalse - 406: 11(int) Constant 105 - 414: 11(int) Constant 108 - 420: TypePointer Function 97(ConstantsHSOutput) - 421: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 105 22 16 - 425: 11(int) Constant 113 - 423: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 424 105 32 425 16 113 19 - 428: 93 ConstantComposite 234 234 234 234 - 429: 95 ConstantComposite 234 234 - 430:97(ConstantsHSOutput) ConstantComposite 428 429 - 431: 216(int) Constant 2 - 435: 11(int) Constant 115 - 447: 11(int) Constant 117 - 450: 11(int) Constant 118 - 453: 11(int) Constant 119 - 456: 11(int) Constant 120 - 459: 11(int) Constant 121 - 462: 11(int) Constant 122 - 467: 11(int) Constant 126 - 476: 11(int) Constant 128 - 486: 11(int) Constant 129 - 496: 11(int) Constant 130 - 506: 11(int) Constant 131 - 515: 11(int) Constant 132 - 523: 11(int) Constant 133 - 533: 11(int) Constant 139 - 536: 11(int) Constant 140 - 539: 11(int) Constant 141 - 542: 11(int) Constant 142 - 545: 11(int) Constant 143 - 548: 11(int) Constant 144 - 552: 11(int) Constant 148 - 558: TypePointer Function 121(HSOutput) - 559: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 128 22 16 - 562: 11(int) Constant 159 - 561: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 424 128 32 562 16 138 19 - 565: 18(fvec4) ConstantComposite 234 234 234 234 - 566: 48(fvec2) ConstantComposite 234 234 - 567:121(HSOutput) ConstantComposite 565 235 566 - 570: 11(int) Constant 160 - 576: 11(int) Constant 161 - 577: TypePointer Function 72(fvec3) - 578: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 73 22 16 - 584: 11(int) Constant 162 - 590: 11(int) Constant 163 - 596: TypeArray 18(fvec4) 19 - 597: TypePointer Input 596 - 598(patch.Pos): 597(ptr) Variable Input - 599: TypePointer Input 18(fvec4) - 603: TypeArray 72(fvec3) 19 - 604: TypePointer Input 603 -605(patch.Normal): 604(ptr) Variable Input - 606: TypePointer Input 72(fvec3) - 610: TypeArray 48(fvec2) 19 - 611: TypePointer Input 610 - 612(patch.UV): 611(ptr) Variable Input - 613: TypePointer Input 48(fvec2) - 645: TypePointer Input 11(int) -646(InvocationID): 645(ptr) Variable Input - 654: TypePointer Output 596 -655(@entryPointOutput.Pos): 654(ptr) Variable Output - 659: TypePointer Output 18(fvec4) - 661: TypePointer Output 603 -662(@entryPointOutput.Normal): 661(ptr) Variable Output - 666: TypePointer Output 72(fvec3) - 668: TypePointer Output 610 -669(@entryPointOutput.UV): 668(ptr) Variable Output - 673: TypePointer Output 48(fvec2) - 683: TypePointer Output 93 -684(@patchConstantOutput.TessLevelOuter): 683(ptr) Variable Output - 687: TypePointer Output 8(float) - 698: TypePointer Output 95 -699(@patchConstantOutput.TessLevelInner): 698(ptr) Variable Output + 147: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 31 + 151: 11(int) Constant 67 + 149: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 150 20 32 151 16 147 19 + 155: 8(float) Constant 1056964608 + 160: TypePointer Function 8(float) + 161: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 22 16 + 165: 11(int) Constant 69 + 163: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 164 10 32 165 16 147 19 + 171: 8(float) Constant 1073741824 + 176: 11(int) Constant 72 + 174: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 175 20 32 176 16 147 19 + 180: TypeMatrix 18(fvec4) 4 + 182: 52(bool) ConstantTrue + 181: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 20 19 182 + 183: TypeArray 18(fvec4) 15 + 184: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 20 15 + 185(UBO): TypeStruct 180 180 18(fvec4) 183 8(float) 8(float) 48(fvec2) 8(float) + 188: 11(int) Constant 29 + 189: 11(int) Constant 20 + 186: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 187 181 32 188 189 16 16 17 + 190: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 187 181 32 188 189 16 16 17 + 193: 11(int) Constant 30 + 194: 11(int) Constant 17 + 191: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 192 20 32 193 194 16 16 17 + 197: 11(int) Constant 22 + 195: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 196 184 32 85 197 16 16 17 + 200: 11(int) Constant 27 + 198: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 199 10 32 81 200 16 16 17 + 201: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 199 10 32 81 200 16 16 17 + 204: 11(int) Constant 34 + 202: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 203 49 32 204 189 16 16 17 + 205: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 199 10 32 81 200 16 16 17 + 206: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 207 36 32 176 16 35 207 16 17 186 190 191 195 198 201 202 205 + 208(ubo): TypeStruct 185(UBO) + 211: 11(int) Constant 37 + 209: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 210 206 32 211 211 16 16 17 + 212: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 210 36 32 176 16 35 210 16 17 209 + 213: TypePointer Uniform 208(ubo) + 214: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 212 46 16 + 215: 213(ptr) Variable Uniform + 218: 11(int) Constant 8 + 216: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 217 212 32 176 16 35 217 215 218 + 219: TypeInt 32 1 + 221: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 220 14 19 16 + 222: 219(int) Constant 0 + 223: 219(int) Constant 1 + 224: TypePointer Uniform 180 + 225: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 181 46 16 + 232: 11(int) Constant 75 + 230: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 231 20 32 232 16 147 19 + 237: 8(float) Constant 0 + 238: 72(fvec3) ConstantComposite 237 237 237 + 250: 11(int) Constant 76 + 248: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 249 20 32 250 16 147 19 + 265: 11(int) Constant 79 + 272: 11(int) Constant 80 + 277: 219(int) Constant 6 + 278: TypePointer Uniform 48(fvec2) + 279: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 49 46 16 + 282: 11(int) Constant 83 + 293: 11(int) Constant 84 + 304: 11(int) Constant 89 + 307: 219(int) Constant 7 + 308: TypePointer Uniform 8(float) + 309: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 46 16 + 313: 219(int) Constant 5 + 317: 8(float) Constant 1065353216 + 318: 8(float) Constant 1115684864 + 325: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 62 + 329: 11(int) Constant 98 + 327: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 328 20 32 329 16 325 19 + 334: TypeImage 8(float) 2D sampled format:Unknown + 337: 11(int) Constant 99 + 339: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone) + 335: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 336 16 32 337 16 35 338 339 17 + 340: TypePointer UniformConstant 334 + 341: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 335 16 16 +342(textureHeight): 340(ptr) Variable UniformConstant + 343: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 344 335 32 337 16 35 344 342(textureHeight) 218 + 347: TypeSampler + 348: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 349 36 32 337 16 35 350 339 17 + 351: TypePointer UniformConstant 347 + 352: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 348 16 16 +353(samplerHeight): 351(ptr) Variable UniformConstant + 354: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 355 348 32 337 16 35 355 353(samplerHeight) 218 + 357: TypeSampledImage 334 + 358: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 359 16 32 337 16 35 360 339 17 + 365: 219(int) Constant 4 + 374: 11(int) Constant 102 + 375: 11(int) Constant 11 + 373: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 374 375 325 + 376: TypePointer Function 219(int) + 377: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 221 22 16 + 379: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 380 221 32 374 16 373 19 + 395: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 373 + 399: 11(int) Constant 103 + 400: 219(int) Constant 3 + 402: TypePointer Uniform 18(fvec4) + 403: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 46 16 + 407: 8(float) Constant 1090519040 + 412: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 395 + 413: 52(bool) ConstantFalse + 416: 11(int) Constant 105 + 424: 11(int) Constant 108 + 430: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 113 + 431: TypePointer Function 97(ConstantsHSOutput) + 432: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 105 22 16 + 436: 11(int) Constant 113 + 434: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 435 105 32 436 16 430 19 + 440: 93 ConstantComposite 237 237 237 237 + 441: 95 ConstantComposite 237 237 + 442:97(ConstantsHSOutput) ConstantComposite 440 441 + 443: 219(int) Constant 2 + 447: 11(int) Constant 115 + 456: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 430 + 460: 11(int) Constant 117 + 463: 11(int) Constant 118 + 466: 11(int) Constant 119 + 469: 11(int) Constant 120 + 472: 11(int) Constant 121 + 475: 11(int) Constant 122 + 477: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 430 + 481: 11(int) Constant 126 + 486: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 477 + 491: 11(int) Constant 128 + 501: 11(int) Constant 129 + 511: 11(int) Constant 130 + 521: 11(int) Constant 131 + 530: 11(int) Constant 132 + 538: 11(int) Constant 133 + 545: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 477 + 549: 11(int) Constant 139 + 552: 11(int) Constant 140 + 555: 11(int) Constant 141 + 558: 11(int) Constant 142 + 561: 11(int) Constant 143 + 564: 11(int) Constant 144 + 568: 11(int) Constant 148 + 574: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 138 + 575: TypePointer Function 121(HSOutput) + 576: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 128 22 16 + 579: 11(int) Constant 159 + 578: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 435 128 32 579 16 574 19 + 583: 18(fvec4) ConstantComposite 237 237 237 237 + 584: 48(fvec2) ConstantComposite 237 237 + 585:121(HSOutput) ConstantComposite 583 238 584 + 588: 11(int) Constant 160 + 594: 11(int) Constant 161 + 595: TypePointer Function 72(fvec3) + 596: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 73 22 16 + 602: 11(int) Constant 162 + 608: 11(int) Constant 163 + 614: TypeArray 18(fvec4) 19 + 615: TypePointer Input 614 + 616(patch.Pos): 615(ptr) Variable Input + 617: TypePointer Input 18(fvec4) + 621: TypeArray 72(fvec3) 19 + 622: TypePointer Input 621 +623(patch.Normal): 622(ptr) Variable Input + 624: TypePointer Input 72(fvec3) + 628: TypeArray 48(fvec2) 19 + 629: TypePointer Input 628 + 630(patch.UV): 629(ptr) Variable Input + 631: TypePointer Input 48(fvec2) + 663: TypePointer Input 11(int) +664(InvocationID): 663(ptr) Variable Input + 672: TypePointer Output 614 +673(@entryPointOutput.Pos): 672(ptr) Variable Output + 677: TypePointer Output 18(fvec4) + 679: TypePointer Output 621 +680(@entryPointOutput.Normal): 679(ptr) Variable Output + 684: TypePointer Output 72(fvec3) + 686: TypePointer Output 628 +687(@entryPointOutput.UV): 686(ptr) Variable Output + 691: TypePointer Output 48(fvec2) + 701: TypePointer Output 93 +702(@patchConstantOutput.TessLevelOuter): 701(ptr) Variable Output + 705: TypePointer Output 8(float) + 716: TypePointer Output 95 +717(@patchConstantOutput.TessLevelInner): 716(ptr) Variable Output 6(main): 4 Function None 5 7: Label - 595(patch): 91(ptr) Variable Function -644(InvocationID): 119(ptr) Variable Function -648(flattenTemp): 558(ptr) Variable Function - 649(param): 91(ptr) Variable Function - 651(param): 119(ptr) Variable Function -679(@patchConstantResult): 420(ptr) Variable Function - 680(param): 91(ptr) Variable Function - 600: 599(ptr) AccessChain 598(patch.Pos) 219 - 601: 18(fvec4) Load 600 - 602: 21(ptr) AccessChain 595(patch) 219 219 - Store 602 601 - 607: 606(ptr) AccessChain 605(patch.Normal) 219 - 608: 72(fvec3) Load 607 - 609: 577(ptr) AccessChain 595(patch) 219 220 - Store 609 608 - 614: 613(ptr) AccessChain 612(patch.UV) 219 - 615: 48(fvec2) Load 614 - 616: 50(ptr) AccessChain 595(patch) 219 431 - Store 616 615 - 617: 599(ptr) AccessChain 598(patch.Pos) 220 - 618: 18(fvec4) Load 617 - 619: 21(ptr) AccessChain 595(patch) 220 219 - Store 619 618 - 620: 606(ptr) AccessChain 605(patch.Normal) 220 - 621: 72(fvec3) Load 620 - 622: 577(ptr) AccessChain 595(patch) 220 220 - Store 622 621 - 623: 613(ptr) AccessChain 612(patch.UV) 220 - 624: 48(fvec2) Load 623 - 625: 50(ptr) AccessChain 595(patch) 220 431 - Store 625 624 - 626: 599(ptr) AccessChain 598(patch.Pos) 431 - 627: 18(fvec4) Load 626 - 628: 21(ptr) AccessChain 595(patch) 431 219 - Store 628 627 - 629: 606(ptr) AccessChain 605(patch.Normal) 431 - 630: 72(fvec3) Load 629 - 631: 577(ptr) AccessChain 595(patch) 431 220 - Store 631 630 - 632: 613(ptr) AccessChain 612(patch.UV) 431 + 613(patch): 91(ptr) Variable Function +662(InvocationID): 119(ptr) Variable Function +666(flattenTemp): 575(ptr) Variable Function + 667(param): 91(ptr) Variable Function + 669(param): 119(ptr) Variable Function +697(@patchConstantResult): 431(ptr) Variable Function + 698(param): 91(ptr) Variable Function + 618: 617(ptr) AccessChain 616(patch.Pos) 222 + 619: 18(fvec4) Load 618 + 620: 21(ptr) AccessChain 613(patch) 222 222 + Store 620 619 + 625: 624(ptr) AccessChain 623(patch.Normal) 222 + 626: 72(fvec3) Load 625 + 627: 595(ptr) AccessChain 613(patch) 222 223 + Store 627 626 + 632: 631(ptr) AccessChain 630(patch.UV) 222 633: 48(fvec2) Load 632 - 634: 50(ptr) AccessChain 595(patch) 431 431 + 634: 50(ptr) AccessChain 613(patch) 222 443 Store 634 633 - 635: 599(ptr) AccessChain 598(patch.Pos) 391 + 635: 617(ptr) AccessChain 616(patch.Pos) 223 636: 18(fvec4) Load 635 - 637: 21(ptr) AccessChain 595(patch) 391 219 + 637: 21(ptr) AccessChain 613(patch) 223 222 Store 637 636 - 638: 606(ptr) AccessChain 605(patch.Normal) 391 + 638: 624(ptr) AccessChain 623(patch.Normal) 223 639: 72(fvec3) Load 638 - 640: 577(ptr) AccessChain 595(patch) 391 220 + 640: 595(ptr) AccessChain 613(patch) 223 223 Store 640 639 - 641: 613(ptr) AccessChain 612(patch.UV) 391 + 641: 631(ptr) AccessChain 630(patch.UV) 223 642: 48(fvec2) Load 641 - 643: 50(ptr) AccessChain 595(patch) 391 431 + 643: 50(ptr) AccessChain 613(patch) 223 443 Store 643 642 - 647: 11(int) Load 646(InvocationID) - Store 644(InvocationID) 647 - 650: 89 Load 595(patch) - Store 649(param) 650 - 652: 11(int) Load 644(InvocationID) - Store 651(param) 652 - 653:121(HSOutput) FunctionCall 135(@main(struct-VSOutput-vf4-vf3-vf21[4];u1;) 649(param) 651(param) - Store 648(flattenTemp) 653 - 656: 11(int) Load 646(InvocationID) - 657: 21(ptr) AccessChain 648(flattenTemp) 219 - 658: 18(fvec4) Load 657 - 660: 659(ptr) AccessChain 655(@entryPointOutput.Pos) 656 - Store 660 658 - 663: 11(int) Load 646(InvocationID) - 664: 577(ptr) AccessChain 648(flattenTemp) 220 - 665: 72(fvec3) Load 664 - 667: 666(ptr) AccessChain 662(@entryPointOutput.Normal) 663 - Store 667 665 - 670: 11(int) Load 646(InvocationID) - 671: 50(ptr) AccessChain 648(flattenTemp) 431 - 672: 48(fvec2) Load 671 - 674: 673(ptr) AccessChain 669(@entryPointOutput.UV) 670 - Store 674 672 + 644: 617(ptr) AccessChain 616(patch.Pos) 443 + 645: 18(fvec4) Load 644 + 646: 21(ptr) AccessChain 613(patch) 443 222 + Store 646 645 + 647: 624(ptr) AccessChain 623(patch.Normal) 443 + 648: 72(fvec3) Load 647 + 649: 595(ptr) AccessChain 613(patch) 443 223 + Store 649 648 + 650: 631(ptr) AccessChain 630(patch.UV) 443 + 651: 48(fvec2) Load 650 + 652: 50(ptr) AccessChain 613(patch) 443 443 + Store 652 651 + 653: 617(ptr) AccessChain 616(patch.Pos) 400 + 654: 18(fvec4) Load 653 + 655: 21(ptr) AccessChain 613(patch) 400 222 + Store 655 654 + 656: 624(ptr) AccessChain 623(patch.Normal) 400 + 657: 72(fvec3) Load 656 + 658: 595(ptr) AccessChain 613(patch) 400 223 + Store 658 657 + 659: 631(ptr) AccessChain 630(patch.UV) 400 + 660: 48(fvec2) Load 659 + 661: 50(ptr) AccessChain 613(patch) 400 443 + Store 661 660 + 665: 11(int) Load 664(InvocationID) + Store 662(InvocationID) 665 + 668: 89 Load 613(patch) + Store 667(param) 668 + 670: 11(int) Load 662(InvocationID) + Store 669(param) 670 + 671:121(HSOutput) FunctionCall 135(@main(struct-VSOutput-vf4-vf3-vf21[4];u1;) 667(param) 669(param) + Store 666(flattenTemp) 671 + 674: 11(int) Load 664(InvocationID) + 675: 21(ptr) AccessChain 666(flattenTemp) 222 + 676: 18(fvec4) Load 675 + 678: 677(ptr) AccessChain 673(@entryPointOutput.Pos) 674 + Store 678 676 + 681: 11(int) Load 664(InvocationID) + 682: 595(ptr) AccessChain 666(flattenTemp) 223 + 683: 72(fvec3) Load 682 + 685: 684(ptr) AccessChain 680(@entryPointOutput.Normal) 681 + Store 685 683 + 688: 11(int) Load 664(InvocationID) + 689: 50(ptr) AccessChain 666(flattenTemp) 443 + 690: 48(fvec2) Load 689 + 692: 691(ptr) AccessChain 687(@entryPointOutput.UV) 688 + Store 692 690 ControlBarrier 46 19 16 - 675: 11(int) Load 646(InvocationID) - 676: 52(bool) IEqual 675 219 - SelectionMerge 678 None - BranchConditional 676 677 678 - 677: Label - 681: 89 Load 595(patch) - Store 680(param) 681 - 682:97(ConstantsHSOutput) FunctionCall 110(ConstantsHS(struct-VSOutput-vf4-vf3-vf21[4];) 680(param) - Store 679(@patchConstantResult) 682 - 685: 158(ptr) AccessChain 679(@patchConstantResult) 219 219 - 686: 8(float) Load 685 - 688: 687(ptr) AccessChain 684(@patchConstantOutput.TessLevelOuter) 219 - Store 688 686 - 689: 158(ptr) AccessChain 679(@patchConstantResult) 219 220 - 690: 8(float) Load 689 - 691: 687(ptr) AccessChain 684(@patchConstantOutput.TessLevelOuter) 220 - Store 691 690 - 692: 158(ptr) AccessChain 679(@patchConstantResult) 219 431 - 693: 8(float) Load 692 - 694: 687(ptr) AccessChain 684(@patchConstantOutput.TessLevelOuter) 431 - Store 694 693 - 695: 158(ptr) AccessChain 679(@patchConstantResult) 219 391 - 696: 8(float) Load 695 - 697: 687(ptr) AccessChain 684(@patchConstantOutput.TessLevelOuter) 391 - Store 697 696 - 700: 158(ptr) AccessChain 679(@patchConstantResult) 220 219 - 701: 8(float) Load 700 - 702: 687(ptr) AccessChain 699(@patchConstantOutput.TessLevelInner) 219 - Store 702 701 - 703: 158(ptr) AccessChain 679(@patchConstantResult) 220 220 + 693: 11(int) Load 664(InvocationID) + 694: 52(bool) IEqual 693 222 + SelectionMerge 696 None + BranchConditional 694 695 696 + 695: Label + 699: 89 Load 613(patch) + Store 698(param) 699 + 700:97(ConstantsHSOutput) FunctionCall 110(ConstantsHS(struct-VSOutput-vf4-vf3-vf21[4];) 698(param) + Store 697(@patchConstantResult) 700 + 703: 160(ptr) AccessChain 697(@patchConstantResult) 222 222 704: 8(float) Load 703 - 705: 687(ptr) AccessChain 699(@patchConstantOutput.TessLevelInner) 220 - Store 705 704 - Branch 678 - 678: Label + 706: 705(ptr) AccessChain 702(@patchConstantOutput.TessLevelOuter) 222 + Store 706 704 + 707: 160(ptr) AccessChain 697(@patchConstantResult) 222 223 + 708: 8(float) Load 707 + 709: 705(ptr) AccessChain 702(@patchConstantOutput.TessLevelOuter) 223 + Store 709 708 + 710: 160(ptr) AccessChain 697(@patchConstantResult) 222 443 + 711: 8(float) Load 710 + 712: 705(ptr) AccessChain 702(@patchConstantOutput.TessLevelOuter) 443 + Store 712 711 + 713: 160(ptr) AccessChain 697(@patchConstantResult) 222 400 + 714: 8(float) Load 713 + 715: 705(ptr) AccessChain 702(@patchConstantOutput.TessLevelOuter) 400 + Store 715 714 + 718: 160(ptr) AccessChain 697(@patchConstantResult) 223 222 + 719: 8(float) Load 718 + 720: 705(ptr) AccessChain 717(@patchConstantOutput.TessLevelInner) 222 + Store 720 719 + 721: 160(ptr) AccessChain 697(@patchConstantResult) 223 223 + 722: 8(float) Load 721 + 723: 705(ptr) AccessChain 717(@patchConstantOutput.TessLevelInner) 223 + Store 723 722 + Branch 696 + 696: Label Return FunctionEnd 28(screenSpaceTessFactor(vf4;vf4;): 8(float) Function None 24 26(p0): 21(ptr) FunctionParameter 27(p1): 21(ptr) FunctionParameter 29: Label - 147(midPoint): 21(ptr) Variable Function - 160(radius): 158(ptr) Variable Function - 171(v0): 21(ptr) Variable Function - 226(clip0): 21(ptr) Variable Function - 244(clip1): 21(ptr) Variable Function + 148(midPoint): 21(ptr) Variable Function + 162(radius): 160(ptr) Variable Function + 173(v0): 21(ptr) Variable Function + 229(clip0): 21(ptr) Variable Function + 247(clip1): 21(ptr) Variable Function 42: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 31 43: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 34 34 16 16 40: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 38 26(p0) 41 47: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 44 27(p1) 41 146: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 31 28(screenSpaceTessFactor(vf4;vf4;) - 152: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 150 150 16 16 - 151: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 148 147(midPoint) 41 - 154: 18(fvec4) Load 26(p0) - 155: 18(fvec4) Load 27(p1) - 156: 18(fvec4) FAdd 154 155 - 157: 18(fvec4) VectorTimesScalar 156 153 - Store 147(midPoint) 157 - 165: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 163 163 16 16 - 164: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 161 160(radius) 41 - 166: 18(fvec4) Load 26(p0) - 167: 18(fvec4) Load 27(p1) - 168: 8(float) ExtInst 3(GLSL.std.450) 67(Distance) 166 167 - 170: 8(float) FDiv 168 169 - Store 160(radius) 170 - 176: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 174 174 16 16 - 175: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 172 171(v0) 41 - 177: 18(fvec4) Load 147(midPoint) - 223: 221(ptr) AccessChain 213 219 220 - 224: 178 Load 223 - 225: 18(fvec4) VectorTimesMatrix 177 224 - Store 171(v0) 225 - 231: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 229 229 16 16 - 230: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 227 226(clip0) 41 - 232: 18(fvec4) Load 171(v0) - 233: 8(float) Load 160(radius) - 236: 8(float) CompositeExtract 235 0 - 237: 8(float) CompositeExtract 235 1 - 238: 8(float) CompositeExtract 235 2 - 239: 18(fvec4) CompositeConstruct 233 236 237 238 - 240: 18(fvec4) FSub 232 239 - 241: 221(ptr) AccessChain 213 219 219 - 242: 178 Load 241 - 243: 18(fvec4) VectorTimesMatrix 240 242 - Store 226(clip0) 243 - 249: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 247 247 16 16 - 248: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 245 244(clip1) 41 - 250: 18(fvec4) Load 171(v0) - 251: 8(float) Load 160(radius) - 252: 8(float) CompositeExtract 235 0 - 253: 8(float) CompositeExtract 235 1 - 254: 8(float) CompositeExtract 235 2 - 255: 18(fvec4) CompositeConstruct 251 252 253 254 - 256: 18(fvec4) FAdd 250 255 - 257: 221(ptr) AccessChain 213 219 219 - 258: 178 Load 257 - 259: 18(fvec4) VectorTimesMatrix 256 258 - Store 244(clip1) 259 - 261: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 262 262 16 16 - 260: 158(ptr) AccessChain 226(clip0) 17 - 263: 8(float) Load 260 - 264: 18(fvec4) Load 226(clip0) - 265: 18(fvec4) CompositeConstruct 263 263 263 263 - 266: 18(fvec4) FDiv 264 265 - Store 226(clip0) 266 - 268: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 269 269 16 16 - 267: 158(ptr) AccessChain 244(clip1) 17 - 270: 8(float) Load 267 - 271: 18(fvec4) Load 244(clip1) - 272: 18(fvec4) CompositeConstruct 270 270 270 270 - 273: 18(fvec4) FDiv 271 272 - Store 244(clip1) 273 - 278: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 279 279 16 16 - 277: 275(ptr) AccessChain 213 219 274 - 280: 48(fvec2) Load 277 - 281: 18(fvec4) Load 226(clip0) - 282: 48(fvec2) VectorShuffle 281 281 0 1 - 283: 48(fvec2) FMul 282 280 - 284: 158(ptr) AccessChain 226(clip0) 16 - 285: 8(float) CompositeExtract 283 0 - Store 284 285 - 286: 158(ptr) AccessChain 226(clip0) 36 - 287: 8(float) CompositeExtract 283 1 - Store 286 287 - 289: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 290 290 16 16 - 288: 275(ptr) AccessChain 213 219 274 - 291: 48(fvec2) Load 288 - 292: 18(fvec4) Load 244(clip1) - 293: 48(fvec2) VectorShuffle 292 292 0 1 - 294: 48(fvec2) FMul 293 291 - 295: 158(ptr) AccessChain 244(clip1) 16 - 296: 8(float) CompositeExtract 294 0 - Store 295 296 - 297: 158(ptr) AccessChain 244(clip1) 36 - 298: 8(float) CompositeExtract 294 1 - Store 297 298 - 300: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 301 301 16 16 - 299: 18(fvec4) Load 226(clip0) - 302: 18(fvec4) Load 244(clip1) - 303: 8(float) ExtInst 3(GLSL.std.450) 67(Distance) 299 302 - 307: 305(ptr) AccessChain 213 219 304 - 308: 8(float) Load 307 - 309: 8(float) FDiv 303 308 - 311: 305(ptr) AccessChain 213 219 310 - 312: 8(float) Load 311 - 313: 8(float) FMul 309 312 - 316: 8(float) ExtInst 3(GLSL.std.450) 43(FClamp) 313 314 315 - ReturnValue 316 + 153: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 147 + 154: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 151 151 16 16 + 152: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 149 148(midPoint) 41 + 156: 18(fvec4) Load 26(p0) + 157: 18(fvec4) Load 27(p1) + 158: 18(fvec4) FAdd 156 157 + 159: 18(fvec4) VectorTimesScalar 158 155 + Store 148(midPoint) 159 + 167: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 165 165 16 16 + 166: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 163 162(radius) 41 + 168: 18(fvec4) Load 26(p0) + 169: 18(fvec4) Load 27(p1) + 170: 8(float) ExtInst 3(GLSL.std.450) 67(Distance) 168 169 + 172: 8(float) FDiv 170 171 + Store 162(radius) 172 + 178: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 176 176 16 16 + 177: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 174 173(v0) 41 + 179: 18(fvec4) Load 148(midPoint) + 226: 224(ptr) AccessChain 215 222 223 + 227: 180 Load 226 + 228: 18(fvec4) VectorTimesMatrix 179 227 + Store 173(v0) 228 + 234: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 232 232 16 16 + 233: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 230 229(clip0) 41 + 235: 18(fvec4) Load 173(v0) + 236: 8(float) Load 162(radius) + 239: 8(float) CompositeExtract 238 0 + 240: 8(float) CompositeExtract 238 1 + 241: 8(float) CompositeExtract 238 2 + 242: 18(fvec4) CompositeConstruct 236 239 240 241 + 243: 18(fvec4) FSub 235 242 + 244: 224(ptr) AccessChain 215 222 222 + 245: 180 Load 244 + 246: 18(fvec4) VectorTimesMatrix 243 245 + Store 229(clip0) 246 + 252: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 250 250 16 16 + 251: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 248 247(clip1) 41 + 253: 18(fvec4) Load 173(v0) + 254: 8(float) Load 162(radius) + 255: 8(float) CompositeExtract 238 0 + 256: 8(float) CompositeExtract 238 1 + 257: 8(float) CompositeExtract 238 2 + 258: 18(fvec4) CompositeConstruct 254 255 256 257 + 259: 18(fvec4) FAdd 253 258 + 260: 224(ptr) AccessChain 215 222 222 + 261: 180 Load 260 + 262: 18(fvec4) VectorTimesMatrix 259 261 + Store 247(clip1) 262 + 264: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 265 265 16 16 + 263: 160(ptr) AccessChain 229(clip0) 17 + 266: 8(float) Load 263 + 267: 18(fvec4) Load 229(clip0) + 268: 18(fvec4) CompositeConstruct 266 266 266 266 + 269: 18(fvec4) FDiv 267 268 + Store 229(clip0) 269 + 271: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 272 272 16 16 + 270: 160(ptr) AccessChain 247(clip1) 17 + 273: 8(float) Load 270 + 274: 18(fvec4) Load 247(clip1) + 275: 18(fvec4) CompositeConstruct 273 273 273 273 + 276: 18(fvec4) FDiv 274 275 + Store 247(clip1) 276 + 281: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 282 282 16 16 + 280: 278(ptr) AccessChain 215 222 277 + 283: 48(fvec2) Load 280 + 284: 18(fvec4) Load 229(clip0) + 285: 48(fvec2) VectorShuffle 284 284 0 1 + 286: 48(fvec2) FMul 285 283 + 287: 160(ptr) AccessChain 229(clip0) 16 + 288: 8(float) CompositeExtract 286 0 + Store 287 288 + 289: 160(ptr) AccessChain 229(clip0) 36 + 290: 8(float) CompositeExtract 286 1 + Store 289 290 + 292: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 293 293 16 16 + 291: 278(ptr) AccessChain 215 222 277 + 294: 48(fvec2) Load 291 + 295: 18(fvec4) Load 247(clip1) + 296: 48(fvec2) VectorShuffle 295 295 0 1 + 297: 48(fvec2) FMul 296 294 + 298: 160(ptr) AccessChain 247(clip1) 16 + 299: 8(float) CompositeExtract 297 0 + Store 298 299 + 300: 160(ptr) AccessChain 247(clip1) 36 + 301: 8(float) CompositeExtract 297 1 + Store 300 301 + 303: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 304 304 16 16 + 302: 18(fvec4) Load 229(clip0) + 305: 18(fvec4) Load 247(clip1) + 306: 8(float) ExtInst 3(GLSL.std.450) 67(Distance) 302 305 + 310: 308(ptr) AccessChain 215 222 307 + 311: 8(float) Load 310 + 312: 8(float) FDiv 306 311 + 314: 308(ptr) AccessChain 215 222 313 + 315: 8(float) Load 314 + 316: 8(float) FMul 312 315 + 319: 8(float) ExtInst 3(GLSL.std.450) 43(FClamp) 316 317 318 + ReturnValue 319 FunctionEnd 59(frustumCheck(vf4;vf2;): 52(bool) Function None 55 57(Pos): 21(ptr) FunctionParameter 58(inUV): 50(ptr) FunctionParameter 60: Label - 322(pos): 21(ptr) Variable Function - 370(i): 368(ptr) Variable Function + 326(pos): 21(ptr) Variable Function + 378(i): 376(ptr) Variable Function 67: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 62 68: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 63 63 16 16 66: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 64 57(Pos) 41 71: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 69 58(inUV) 41 - 321: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 62 59(frustumCheck(vf4;vf2;) - 327: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 325 325 16 16 - 326: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 323 322(pos) 41 - 328: 18(fvec4) Load 57(Pos) - Store 322(pos) 328 - 341: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 332 332 16 16 - 340: 329 Load 337(textureHeight) - 351: 342 Load 348(samplerHeight) - 356: 352 SampledImage 340 351 - 357: 48(fvec2) Load 58(inUV) - 358: 18(fvec4) ImageSampleExplicitLod 356 357 Lod 234 - 359: 8(float) CompositeExtract 358 0 - 361: 305(ptr) AccessChain 213 219 360 - 362: 8(float) Load 361 - 363: 8(float) FMul 359 362 - 364: 158(ptr) AccessChain 322(pos) 36 - 365: 8(float) Load 364 - 366: 8(float) FSub 365 363 - 367: 158(ptr) AccessChain 322(pos) 36 - Store 367 366 - 375: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 373 373 16 16 - 374: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 371 370(i) 41 - Store 370(i) 219 - Branch 376 - 376: Label - 380: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 62 - 381: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 373 373 16 16 - LoopMerge 378 379 None - Branch 382 - 382: Label - 384: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 62 - 385: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 373 373 16 16 - 383: 216(int) Load 370(i) - 386: 52(bool) SLessThan 383 274 - BranchConditional 386 377 378 - 377: Label - 388: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 62 - 389: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 390 390 16 16 - 387: 18(fvec4) Load 322(pos) - 392: 216(int) Load 370(i) - 395: 393(ptr) AccessChain 213 219 391 392 - 396: 18(fvec4) Load 395 - 397: 8(float) Dot 387 396 - 399: 8(float) FAdd 397 398 - 400: 52(bool) FOrdLessThan 399 234 - SelectionMerge 402 None - BranchConditional 400 401 402 - 401: Label - 404: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 62 - 405: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 406 406 16 16 - ReturnValue 403 - 402: Label - Branch 379 - 379: Label - 409: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 62 - 410: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 373 373 16 16 - 408: 216(int) Load 370(i) - 411: 216(int) IAdd 408 220 - Store 370(i) 411 - Branch 376 - 378: Label - 412: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 62 - 413: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 414 414 16 16 - ReturnValue 180 + 324: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 62 59(frustumCheck(vf4;vf2;) + 331: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 325 + 332: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 329 329 16 16 + 330: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 327 326(pos) 41 + 333: 18(fvec4) Load 57(Pos) + Store 326(pos) 333 + 346: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 337 337 16 16 + 345: 334 Load 342(textureHeight) + 356: 347 Load 353(samplerHeight) + 361: 357 SampledImage 345 356 + 362: 48(fvec2) Load 58(inUV) + 363: 18(fvec4) ImageSampleExplicitLod 361 362 Lod 237 + 364: 8(float) CompositeExtract 363 0 + 366: 308(ptr) AccessChain 215 222 365 + 367: 8(float) Load 366 + 368: 8(float) FMul 364 367 + 369: 160(ptr) AccessChain 326(pos) 36 + 370: 8(float) Load 369 + 371: 8(float) FSub 370 368 + 372: 160(ptr) AccessChain 326(pos) 36 + Store 372 371 + 382: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 373 + 383: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 374 374 16 16 + 381: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 379 378(i) 41 + Store 378(i) 222 + Branch 384 + 384: Label + 388: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 373 + 389: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 374 374 16 16 + LoopMerge 386 387 None + Branch 390 + 390: Label + 392: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 373 + 393: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 374 374 16 16 + 391: 219(int) Load 378(i) + 394: 52(bool) SLessThan 391 277 + BranchConditional 394 385 386 + 385: Label + 397: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 395 + 398: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 399 399 16 16 + 396: 18(fvec4) Load 326(pos) + 401: 219(int) Load 378(i) + 404: 402(ptr) AccessChain 215 222 400 401 + 405: 18(fvec4) Load 404 + 406: 8(float) Dot 396 405 + 408: 8(float) FAdd 406 407 + 409: 52(bool) FOrdLessThan 408 237 + SelectionMerge 411 None + BranchConditional 409 410 411 + 410: Label + 414: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 412 + 415: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 416 416 16 16 + ReturnValue 413 + 411: Label + Branch 387 + 387: Label + 419: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 373 + 420: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 374 374 16 16 + 418: 219(int) Load 378(i) + 421: 219(int) IAdd 418 223 + Store 378(i) 421 + Branch 384 + 386: Label + 422: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 325 + 423: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 424 424 16 16 + ReturnValue 182 FunctionEnd 110(ConstantsHS(struct-VSOutput-vf4-vf3-vf21[4];):97(ConstantsHSOutput) Function None 107 109(patch): 91(ptr) FunctionParameter 111: Label - 422(output): 420(ptr) Variable Function - 432(param): 21(ptr) Variable Function - 437(param): 50(ptr) Variable Function - 472(param): 21(ptr) Variable Function - 478(param): 21(ptr) Variable Function - 483(param): 21(ptr) Variable Function - 488(param): 21(ptr) Variable Function + 433(output): 431(ptr) Variable Function + 444(param): 21(ptr) Variable Function + 449(param): 50(ptr) Variable Function + 487(param): 21(ptr) Variable Function 493(param): 21(ptr) Variable Function 498(param): 21(ptr) Variable Function 503(param): 21(ptr) Variable Function 508(param): 21(ptr) Variable Function + 513(param): 21(ptr) Variable Function + 518(param): 21(ptr) Variable Function + 523(param): 21(ptr) Variable Function 117: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 113 118: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 88 88 16 16 116: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 114 109(patch) 41 - 419: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 113 110(ConstantsHS(struct-VSOutput-vf4-vf3-vf21[4];) - 427: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 425 425 16 16 - 426: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 423 422(output) 41 - Store 422(output) 430 - 434: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 435 435 16 16 - 433: 21(ptr) AccessChain 109(patch) 219 219 - 436: 18(fvec4) Load 433 - Store 432(param) 436 - 438: 50(ptr) AccessChain 109(patch) 219 431 - 439: 48(fvec2) Load 438 - Store 437(param) 439 - 440: 52(bool) FunctionCall 59(frustumCheck(vf4;vf2;) 432(param) 437(param) - 441: 52(bool) LogicalNot 440 - SelectionMerge 443 None - BranchConditional 441 442 463 - 442: Label - 445: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 113 - 446: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 447 447 16 16 - 444: 158(ptr) AccessChain 422(output) 220 219 - Store 444 234 - 449: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 450 450 16 16 - 448: 158(ptr) AccessChain 422(output) 220 220 - Store 448 234 - 452: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 453 453 16 16 - 451: 158(ptr) AccessChain 422(output) 219 219 - Store 451 234 - 455: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 456 456 16 16 - 454: 158(ptr) AccessChain 422(output) 219 220 - Store 454 234 - 458: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 459 459 16 16 - 457: 158(ptr) AccessChain 422(output) 219 431 - Store 457 234 - 461: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 462 462 16 16 - 460: 158(ptr) AccessChain 422(output) 219 391 - Store 460 234 - Branch 443 - 463: Label - 465: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 113 - 466: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 467 467 16 16 - 464: 305(ptr) AccessChain 213 219 310 - 468: 8(float) Load 464 - 469: 52(bool) FOrdGreaterThan 468 234 - SelectionMerge 471 None - BranchConditional 469 470 529 - 470: Label - 474: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 113 - 475: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 476 476 16 16 - 473: 21(ptr) AccessChain 109(patch) 391 219 - 477: 18(fvec4) Load 473 - Store 472(param) 477 - 479: 21(ptr) AccessChain 109(patch) 219 219 - 480: 18(fvec4) Load 479 - Store 478(param) 480 - 481: 8(float) FunctionCall 28(screenSpaceTessFactor(vf4;vf4;) 472(param) 478(param) - 482: 158(ptr) AccessChain 422(output) 219 219 - Store 482 481 - 485: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 486 486 16 16 - 484: 21(ptr) AccessChain 109(patch) 219 219 - 487: 18(fvec4) Load 484 - Store 483(param) 487 - 489: 21(ptr) AccessChain 109(patch) 220 219 - 490: 18(fvec4) Load 489 - Store 488(param) 490 - 491: 8(float) FunctionCall 28(screenSpaceTessFactor(vf4;vf4;) 483(param) 488(param) - 492: 158(ptr) AccessChain 422(output) 219 220 - Store 492 491 - 495: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 496 496 16 16 - 494: 21(ptr) AccessChain 109(patch) 220 219 - 497: 18(fvec4) Load 494 - Store 493(param) 497 - 499: 21(ptr) AccessChain 109(patch) 431 219 - 500: 18(fvec4) Load 499 - Store 498(param) 500 - 501: 8(float) FunctionCall 28(screenSpaceTessFactor(vf4;vf4;) 493(param) 498(param) - 502: 158(ptr) AccessChain 422(output) 219 431 - Store 502 501 - 505: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 506 506 16 16 - 504: 21(ptr) AccessChain 109(patch) 431 219 - 507: 18(fvec4) Load 504 - Store 503(param) 507 - 509: 21(ptr) AccessChain 109(patch) 391 219 - 510: 18(fvec4) Load 509 - Store 508(param) 510 - 511: 8(float) FunctionCall 28(screenSpaceTessFactor(vf4;vf4;) 503(param) 508(param) - 512: 158(ptr) AccessChain 422(output) 219 391 - Store 512 511 - 514: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 515 515 16 16 - 513: 158(ptr) AccessChain 422(output) 219 219 - 516: 8(float) Load 513 - 517: 158(ptr) AccessChain 422(output) 219 391 - 518: 8(float) Load 517 - 519: 8(float) ExtInst 3(GLSL.std.450) 46(FMix) 516 518 153 - 520: 158(ptr) AccessChain 422(output) 220 219 - Store 520 519 - 522: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 523 523 16 16 - 521: 158(ptr) AccessChain 422(output) 219 431 - 524: 8(float) Load 521 - 525: 158(ptr) AccessChain 422(output) 219 220 - 526: 8(float) Load 525 - 527: 8(float) ExtInst 3(GLSL.std.450) 46(FMix) 524 526 153 - 528: 158(ptr) AccessChain 422(output) 220 220 - Store 528 527 - Branch 471 - 529: Label - 531: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 113 - 532: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 533 533 16 16 - 530: 158(ptr) AccessChain 422(output) 220 219 - Store 530 314 - 535: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 536 536 16 16 - 534: 158(ptr) AccessChain 422(output) 220 220 - Store 534 314 - 538: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 539 539 16 16 - 537: 158(ptr) AccessChain 422(output) 219 219 - Store 537 314 - 541: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 542 542 16 16 - 540: 158(ptr) AccessChain 422(output) 219 220 - Store 540 314 - 544: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 545 545 16 16 - 543: 158(ptr) AccessChain 422(output) 219 431 - Store 543 314 - 547: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 548 548 16 16 - 546: 158(ptr) AccessChain 422(output) 219 391 - Store 546 314 - Branch 471 - 471: Label - Branch 443 - 443: Label - 550: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 113 - 551: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 552 552 16 16 - 549:97(ConstantsHSOutput) Load 422(output) - ReturnValue 549 + 429: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 113 110(ConstantsHS(struct-VSOutput-vf4-vf3-vf21[4];) + 438: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 430 + 439: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 436 436 16 16 + 437: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 434 433(output) 41 + Store 433(output) 442 + 446: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 447 447 16 16 + 445: 21(ptr) AccessChain 109(patch) 222 222 + 448: 18(fvec4) Load 445 + Store 444(param) 448 + 450: 50(ptr) AccessChain 109(patch) 222 443 + 451: 48(fvec2) Load 450 + Store 449(param) 451 + 452: 52(bool) FunctionCall 59(frustumCheck(vf4;vf2;) 444(param) 449(param) + 453: 52(bool) LogicalNot 452 + SelectionMerge 455 None + BranchConditional 453 454 476 + 454: Label + 458: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 456 + 459: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 460 460 16 16 + 457: 160(ptr) AccessChain 433(output) 223 222 + Store 457 237 + 462: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 463 463 16 16 + 461: 160(ptr) AccessChain 433(output) 223 223 + Store 461 237 + 465: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 466 466 16 16 + 464: 160(ptr) AccessChain 433(output) 222 222 + Store 464 237 + 468: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 469 469 16 16 + 467: 160(ptr) AccessChain 433(output) 222 223 + Store 467 237 + 471: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 472 472 16 16 + 470: 160(ptr) AccessChain 433(output) 222 443 + Store 470 237 + 474: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 475 475 16 16 + 473: 160(ptr) AccessChain 433(output) 222 400 + Store 473 237 + Branch 455 + 476: Label + 479: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 477 + 480: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 481 481 16 16 + 478: 308(ptr) AccessChain 215 222 313 + 482: 8(float) Load 478 + 483: 52(bool) FOrdGreaterThan 482 237 + SelectionMerge 485 None + BranchConditional 483 484 544 + 484: Label + 489: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 486 + 490: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 491 491 16 16 + 488: 21(ptr) AccessChain 109(patch) 400 222 + 492: 18(fvec4) Load 488 + Store 487(param) 492 + 494: 21(ptr) AccessChain 109(patch) 222 222 + 495: 18(fvec4) Load 494 + Store 493(param) 495 + 496: 8(float) FunctionCall 28(screenSpaceTessFactor(vf4;vf4;) 487(param) 493(param) + 497: 160(ptr) AccessChain 433(output) 222 222 + Store 497 496 + 500: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 501 501 16 16 + 499: 21(ptr) AccessChain 109(patch) 222 222 + 502: 18(fvec4) Load 499 + Store 498(param) 502 + 504: 21(ptr) AccessChain 109(patch) 223 222 + 505: 18(fvec4) Load 504 + Store 503(param) 505 + 506: 8(float) FunctionCall 28(screenSpaceTessFactor(vf4;vf4;) 498(param) 503(param) + 507: 160(ptr) AccessChain 433(output) 222 223 + Store 507 506 + 510: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 511 511 16 16 + 509: 21(ptr) AccessChain 109(patch) 223 222 + 512: 18(fvec4) Load 509 + Store 508(param) 512 + 514: 21(ptr) AccessChain 109(patch) 443 222 + 515: 18(fvec4) Load 514 + Store 513(param) 515 + 516: 8(float) FunctionCall 28(screenSpaceTessFactor(vf4;vf4;) 508(param) 513(param) + 517: 160(ptr) AccessChain 433(output) 222 443 + Store 517 516 + 520: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 521 521 16 16 + 519: 21(ptr) AccessChain 109(patch) 443 222 + 522: 18(fvec4) Load 519 + Store 518(param) 522 + 524: 21(ptr) AccessChain 109(patch) 400 222 + 525: 18(fvec4) Load 524 + Store 523(param) 525 + 526: 8(float) FunctionCall 28(screenSpaceTessFactor(vf4;vf4;) 518(param) 523(param) + 527: 160(ptr) AccessChain 433(output) 222 400 + Store 527 526 + 529: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 530 530 16 16 + 528: 160(ptr) AccessChain 433(output) 222 222 + 531: 8(float) Load 528 + 532: 160(ptr) AccessChain 433(output) 222 400 + 533: 8(float) Load 532 + 534: 8(float) ExtInst 3(GLSL.std.450) 46(FMix) 531 533 155 + 535: 160(ptr) AccessChain 433(output) 223 222 + Store 535 534 + 537: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 538 538 16 16 + 536: 160(ptr) AccessChain 433(output) 222 443 + 539: 8(float) Load 536 + 540: 160(ptr) AccessChain 433(output) 222 223 + 541: 8(float) Load 540 + 542: 8(float) ExtInst 3(GLSL.std.450) 46(FMix) 539 541 155 + 543: 160(ptr) AccessChain 433(output) 223 223 + Store 543 542 + Branch 485 + 544: Label + 547: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 545 + 548: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 549 549 16 16 + 546: 160(ptr) AccessChain 433(output) 223 222 + Store 546 317 + 551: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 552 552 16 16 + 550: 160(ptr) AccessChain 433(output) 223 223 + Store 550 317 + 554: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 555 555 16 16 + 553: 160(ptr) AccessChain 433(output) 222 222 + Store 553 317 + 557: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 558 558 16 16 + 556: 160(ptr) AccessChain 433(output) 222 223 + Store 556 317 + 560: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 561 561 16 16 + 559: 160(ptr) AccessChain 433(output) 222 443 + Store 559 317 + 563: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 564 564 16 16 + 562: 160(ptr) AccessChain 433(output) 222 400 + Store 562 317 + Branch 485 + 485: Label + Branch 455 + 455: Label + 566: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 430 + 567: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 568 568 16 16 + 565:97(ConstantsHSOutput) Load 433(output) + ReturnValue 565 FunctionEnd 135(@main(struct-VSOutput-vf4-vf3-vf21[4];u1;):121(HSOutput) Function None 131 133(patch): 91(ptr) FunctionParameter 134(InvocationID): 119(ptr) FunctionParameter 136: Label - 560(output): 558(ptr) Variable Function + 577(output): 575(ptr) Variable Function 141: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 138 142: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 130 130 16 16 140: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 139 133(patch) 41 145: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 143 134(InvocationID) 41 - 557: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 138 135(@main(struct-VSOutput-vf4-vf3-vf21[4];u1;) - 564: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 562 562 16 16 - 563: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 561 560(output) 41 - Store 560(output) 567 - 569: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 570 570 16 16 - 568: 11(int) Load 134(InvocationID) - 571: 21(ptr) AccessChain 133(patch) 568 219 - 572: 18(fvec4) Load 571 - 573: 21(ptr) AccessChain 560(output) 219 - Store 573 572 - 575: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 576 576 16 16 - 574: 11(int) Load 134(InvocationID) - 579: 577(ptr) AccessChain 133(patch) 574 220 - 580: 72(fvec3) Load 579 - 581: 577(ptr) AccessChain 560(output) 220 - Store 581 580 - 583: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 584 584 16 16 - 582: 11(int) Load 134(InvocationID) - 585: 50(ptr) AccessChain 133(patch) 582 431 - 586: 48(fvec2) Load 585 - 587: 50(ptr) AccessChain 560(output) 431 - Store 587 586 - 589: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 590 590 16 16 - 588:121(HSOutput) Load 560(output) - ReturnValue 588 + 573: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 138 135(@main(struct-VSOutput-vf4-vf3-vf21[4];u1;) + 581: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 574 + 582: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 579 579 16 16 + 580: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 578 577(output) 41 + Store 577(output) 585 + 587: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 588 588 16 16 + 586: 11(int) Load 134(InvocationID) + 589: 21(ptr) AccessChain 133(patch) 586 222 + 590: 18(fvec4) Load 589 + 591: 21(ptr) AccessChain 577(output) 222 + Store 591 590 + 593: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 594 594 16 16 + 592: 11(int) Load 134(InvocationID) + 597: 595(ptr) AccessChain 133(patch) 592 223 + 598: 72(fvec3) Load 597 + 599: 595(ptr) AccessChain 577(output) 223 + Store 599 598 + 601: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 602 602 16 16 + 600: 11(int) Load 134(InvocationID) + 603: 50(ptr) AccessChain 133(patch) 600 443 + 604: 48(fvec2) Load 603 + 605: 50(ptr) AccessChain 577(output) 443 + Store 605 604 + 607: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 608 608 16 16 + 606:121(HSOutput) Load 577(output) + ReturnValue 606 FunctionEnd diff --git a/Test/baseResults/spv.debuginfo.hlsl.tese.out b/Test/baseResults/spv.debuginfo.hlsl.tese.out index 230e96a8..22e613d6 100644 --- a/Test/baseResults/spv.debuginfo.hlsl.tese.out +++ b/Test/baseResults/spv.debuginfo.hlsl.tese.out @@ -1,16 +1,16 @@ spv.debuginfo.hlsl.tese // Module Version 10000 // Generated by (magic number): 8000b -// Id's are bound by 478 +// Id's are bound by 481 Capability Tessellation Extension "SPV_KHR_non_semantic_info" 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" 3: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 - EntryPoint TessellationEvaluation 6 "main" 369 384 393 402 409 415 455 459 463 466 469 472 475 + EntryPoint TessellationEvaluation 6 "main" 372 387 396 405 412 418 458 462 466 469 472 475 478 ExecutionMode 6 Quads - 2: String "" + 2: String "spv.debuginfo.hlsl.tese" 9: String "float" 12: String "uint" 26: String "TessLevelOuter" @@ -22,6 +22,100 @@ spv.debuginfo.hlsl.tese // OpModuleProcessed keep-uncalled // OpModuleProcessed hlsl-offsets #line 1 +/* +The MIT License (MIT) + +Copyright (c) 2022 Google LLC +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. +*/ + +struct UBO +{ + float4x4 projection; + float4x4 modelview; + float4 lightPos; + float4 frustumPlanes[6]; + float displacementFactor; + float tessellationFactor; + float2 viewportDim; + float tessellatedEdgeSize; +}; +cbuffer ubo : register(b0) { UBO ubo; }; + +Texture2D displacementMapTexture : register(t1); +SamplerState displacementMapSampler : register(s1); + +struct HSOutput +{ +[[vk::location(2)]] float4 Pos : SV_POSITION; +[[vk::location(0)]] float3 Normal : NORMAL0; +[[vk::location(1)]] float2 UV : TEXCOORD0; +}; + +struct ConstantsHSOutput +{ + float TessLevelOuter[4] : SV_TessFactor; + float TessLevelInner[2] : SV_InsideTessFactor; +}; + +struct DSOutput +{ + float4 Pos : SV_POSITION; +[[vk::location(0)]] float3 Normal : NORMAL0; +[[vk::location(1)]] float2 UV : TEXCOORD0; +[[vk::location(2)]] float3 ViewVec : TEXCOORD1; +[[vk::location(3)]] float3 LightVec : TEXCOORD2; +[[vk::location(4)]] float3 EyePos : POSITION1; +[[vk::location(5)]] float3 WorldPos : POSITION0; +}; + +[domain("quad")] +DSOutput main(ConstantsHSOutput input, float2 TessCoord : SV_DomainLocation, const OutputPatch patch) +{ + // Interpolate UV coordinates + DSOutput output = (DSOutput)0; + float2 uv1 = lerp(patch[0].UV, patch[1].UV, TessCoord.x); + float2 uv2 = lerp(patch[3].UV, patch[2].UV, TessCoord.x); + output.UV = lerp(uv1, uv2, TessCoord.y); + + float3 n1 = lerp(patch[0].Normal, patch[1].Normal, TessCoord.x); + float3 n2 = lerp(patch[3].Normal, patch[2].Normal, TessCoord.x); + output.Normal = lerp(n1, n2, TessCoord.y); + + // Interpolate positions + float4 pos1 = lerp(patch[0].Pos, patch[1].Pos, TessCoord.x); + float4 pos2 = lerp(patch[3].Pos, patch[2].Pos, TessCoord.x); + float4 pos = lerp(pos1, pos2, TessCoord.y); + // Displace + pos.y -= displacementMapTexture.SampleLevel(displacementMapSampler, output.UV, 0.0).r * ubo.displacementFactor; + // Perspective projection + output.Pos = mul(ubo.projection, mul(ubo.modelview, pos)); + + // Calculate vectors for lighting based on tessellated position + output.ViewVec = -pos.xyz; + output.LightVec = normalize(ubo.lightPos.xyz + output.ViewVec); + output.WorldPos = pos.xyz; + output.EyePos = mul(ubo.modelview, pos).xyz; + return output; +} " 32: String "TessLevelInner" 35: String "ConstantsHSOutput" @@ -35,31 +129,32 @@ spv.debuginfo.hlsl.tese 93: String "input" 99: String "TessCoord" 102: String "patch" - 109: String "output" - 120: String "uv1" - 125: String "int" - 140: String "uv2" - 164: String "n1" - 176: String "n2" - 199: String "pos1" - 211: String "pos2" - 223: String "pos" - 235: String "type.2d.image" - 237: String "@type.2d.image" - 243: String "displacementMapTexture" - 249: String "type.sampler" - 250: String "@type.sampler" - 255: String "displacementMapSampler" - 259: String "type.sampled.image" - 260: String "@type.sampled.image" - 269: String "bool" - 276: String "modelview" - 281: String "lightPos" - 285: String "frustumPlanes" - 288: String "tessellatedEdgeSize" - 292: String "viewportDim" - 296: String "UBO" - 299: String "ubo" + 110: String "output" + 122: String "uv1" + 127: String "int" + 142: String "uv2" + 166: String "n1" + 178: String "n2" + 201: String "pos1" + 213: String "pos2" + 225: String "pos" + 237: String "type.2d.image" + 239: String "@type.2d.image" + 245: String "displacementMapTexture" + 251: String "type.sampler" + 252: String "@type.sampler" + 257: String "displacementMapSampler" + 261: String "type.sampled.image" + 262: String "@type.sampled.image" + 271: String "bool" + 278: String "modelview" + 283: String "lightPos" + 287: String "frustumPlanes" + 290: String "tessellatedEdgeSize" + 294: String "viewportDim" + 298: String "UBO" + 301: String "ubo" + 307: String "" Name 6 "main" Name 24 "ConstantsHSOutput" MemberName 24(ConstantsHSOutput) 0 "TessLevelOuter" @@ -80,84 +175,84 @@ spv.debuginfo.hlsl.tese Name 85 "input" Name 86 "TessCoord" Name 87 "patch" - Name 107 "output" - Name 118 "uv1" - Name 138 "uv2" - Name 162 "n1" - Name 174 "n2" - Name 197 "pos1" - Name 209 "pos2" - Name 221 "pos" - Name 241 "displacementMapTexture" - Name 253 "displacementMapSampler" - Name 274 "UBO" - MemberName 274(UBO) 0 "projection" - MemberName 274(UBO) 1 "modelview" - MemberName 274(UBO) 2 "lightPos" - MemberName 274(UBO) 3 "frustumPlanes" - MemberName 274(UBO) 4 "displacementFactor" - MemberName 274(UBO) 5 "tessellationFactor" - MemberName 274(UBO) 6 "viewportDim" - MemberName 274(UBO) 7 "tessellatedEdgeSize" - Name 297 "ubo" - MemberName 297(ubo) 0 "ubo" - Name 303 "" - Name 367 "input" - Name 369 "input.TessLevelOuter" - Name 384 "input.TessLevelInner" - Name 391 "TessCoord" - Name 393 "TessCoord" - Name 399 "patch" - Name 402 "patch.Pos" - Name 409 "patch.Normal" - Name 415 "patch.UV" - Name 447 "flattenTemp" - Name 449 "param" - Name 451 "param" - Name 455 "@entryPointOutput.Pos" - Name 459 "@entryPointOutput.Normal" - Name 463 "@entryPointOutput.UV" - Name 466 "@entryPointOutput.ViewVec" - Name 469 "@entryPointOutput.LightVec" - Name 472 "@entryPointOutput.EyePos" - Name 475 "@entryPointOutput.WorldPos" - Decorate 241(displacementMapTexture) Binding 1 - Decorate 241(displacementMapTexture) DescriptorSet 0 - Decorate 253(displacementMapSampler) Binding 1 - Decorate 253(displacementMapSampler) DescriptorSet 0 - Decorate 272 ArrayStride 16 - MemberDecorate 274(UBO) 0 RowMajor - MemberDecorate 274(UBO) 0 MatrixStride 16 - MemberDecorate 274(UBO) 0 Offset 0 - MemberDecorate 274(UBO) 1 RowMajor - MemberDecorate 274(UBO) 1 MatrixStride 16 - MemberDecorate 274(UBO) 1 Offset 64 - MemberDecorate 274(UBO) 2 Offset 128 - MemberDecorate 274(UBO) 3 Offset 144 - MemberDecorate 274(UBO) 4 Offset 240 - MemberDecorate 274(UBO) 5 Offset 244 - MemberDecorate 274(UBO) 6 Offset 248 - MemberDecorate 274(UBO) 7 Offset 256 - Decorate 297(ubo) Block - MemberDecorate 297(ubo) 0 Offset 0 - Decorate 303 Binding 0 - Decorate 303 DescriptorSet 0 - Decorate 369(input.TessLevelOuter) BuiltIn TessLevelOuter - Decorate 369(input.TessLevelOuter) Patch - Decorate 384(input.TessLevelInner) BuiltIn TessLevelInner - Decorate 384(input.TessLevelInner) Patch - Decorate 393(TessCoord) BuiltIn TessCoord - Decorate 393(TessCoord) Patch - Decorate 402(patch.Pos) BuiltIn Position - Decorate 409(patch.Normal) Location 0 - Decorate 415(patch.UV) Location 1 - Decorate 455(@entryPointOutput.Pos) BuiltIn Position - Decorate 459(@entryPointOutput.Normal) Location 0 - Decorate 463(@entryPointOutput.UV) Location 1 - Decorate 466(@entryPointOutput.ViewVec) Location 2 - Decorate 469(@entryPointOutput.LightVec) Location 3 - Decorate 472(@entryPointOutput.EyePos) Location 4 - Decorate 475(@entryPointOutput.WorldPos) Location 5 + Name 108 "output" + Name 120 "uv1" + Name 140 "uv2" + Name 164 "n1" + Name 176 "n2" + Name 199 "pos1" + Name 211 "pos2" + Name 223 "pos" + Name 243 "displacementMapTexture" + Name 255 "displacementMapSampler" + Name 276 "UBO" + MemberName 276(UBO) 0 "projection" + MemberName 276(UBO) 1 "modelview" + MemberName 276(UBO) 2 "lightPos" + MemberName 276(UBO) 3 "frustumPlanes" + MemberName 276(UBO) 4 "displacementFactor" + MemberName 276(UBO) 5 "tessellationFactor" + MemberName 276(UBO) 6 "viewportDim" + MemberName 276(UBO) 7 "tessellatedEdgeSize" + Name 299 "ubo" + MemberName 299(ubo) 0 "ubo" + Name 305 "" + Name 370 "input" + Name 372 "input.TessLevelOuter" + Name 387 "input.TessLevelInner" + Name 394 "TessCoord" + Name 396 "TessCoord" + Name 402 "patch" + Name 405 "patch.Pos" + Name 412 "patch.Normal" + Name 418 "patch.UV" + Name 450 "flattenTemp" + Name 452 "param" + Name 454 "param" + Name 458 "@entryPointOutput.Pos" + Name 462 "@entryPointOutput.Normal" + Name 466 "@entryPointOutput.UV" + Name 469 "@entryPointOutput.ViewVec" + Name 472 "@entryPointOutput.LightVec" + Name 475 "@entryPointOutput.EyePos" + Name 478 "@entryPointOutput.WorldPos" + Decorate 243(displacementMapTexture) Binding 1 + Decorate 243(displacementMapTexture) DescriptorSet 0 + Decorate 255(displacementMapSampler) Binding 1 + Decorate 255(displacementMapSampler) DescriptorSet 0 + Decorate 274 ArrayStride 16 + MemberDecorate 276(UBO) 0 RowMajor + MemberDecorate 276(UBO) 0 MatrixStride 16 + MemberDecorate 276(UBO) 0 Offset 0 + MemberDecorate 276(UBO) 1 RowMajor + MemberDecorate 276(UBO) 1 MatrixStride 16 + MemberDecorate 276(UBO) 1 Offset 64 + MemberDecorate 276(UBO) 2 Offset 128 + MemberDecorate 276(UBO) 3 Offset 144 + MemberDecorate 276(UBO) 4 Offset 240 + MemberDecorate 276(UBO) 5 Offset 244 + MemberDecorate 276(UBO) 6 Offset 248 + MemberDecorate 276(UBO) 7 Offset 256 + Decorate 299(ubo) Block + MemberDecorate 299(ubo) 0 Offset 0 + Decorate 305 Binding 0 + Decorate 305 DescriptorSet 0 + Decorate 372(input.TessLevelOuter) BuiltIn TessLevelOuter + Decorate 372(input.TessLevelOuter) Patch + Decorate 387(input.TessLevelInner) BuiltIn TessLevelInner + Decorate 387(input.TessLevelInner) Patch + Decorate 396(TessCoord) BuiltIn TessCoord + Decorate 396(TessCoord) Patch + Decorate 405(patch.Pos) BuiltIn Position + Decorate 412(patch.Normal) Location 0 + Decorate 418(patch.UV) Location 1 + Decorate 458(@entryPointOutput.Pos) BuiltIn Position + Decorate 462(@entryPointOutput.Normal) Location 0 + Decorate 466(@entryPointOutput.UV) Location 1 + Decorate 469(@entryPointOutput.ViewVec) Location 2 + Decorate 472(@entryPointOutput.LightVec) Location 3 + Decorate 475(@entryPointOutput.EyePos) Location 4 + Decorate 478(@entryPointOutput.WorldPos) Location 5 4: TypeVoid 5: TypeFunction 4 8: TypeFloat 32 @@ -230,248 +325,249 @@ spv.debuginfo.hlsl.tese 95: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression) 98: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 99 44 27 37 16 91 18 21 101: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 102 63 27 37 16 91 18 17 - 105: TypePointer Function 67(DSOutput) - 106: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 81 41 16 - 110: 11(int) Constant 70 - 108: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 109 81 27 110 16 91 18 - 113: 8(float) Constant 0 - 114: 47(fvec4) ConstantComposite 113 113 113 113 - 115: 49(fvec3) ConstantComposite 113 113 113 - 116: 43(fvec2) ConstantComposite 113 113 - 117:67(DSOutput) ConstantComposite 114 115 116 115 115 115 115 - 121: 11(int) Constant 71 - 119: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 120 44 27 121 16 91 18 - 124: TypeInt 32 1 - 126: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 125 14 18 16 - 127: 124(int) Constant 0 - 128: 124(int) Constant 2 - 130: 124(int) Constant 1 - 132: TypePointer Function 8(float) - 133: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 41 16 - 141: 11(int) Constant 72 - 139: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 140 44 27 141 16 91 18 - 144: 124(int) Constant 3 - 153: 11(int) Constant 73 - 160: TypePointer Function 49(fvec3) - 161: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 50 41 16 - 165: 11(int) Constant 75 - 163: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 164 50 27 165 16 91 18 - 177: 11(int) Constant 76 - 175: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 176 50 27 177 16 91 18 - 188: 11(int) Constant 77 - 195: TypePointer Function 47(fvec4) - 196: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 48 41 16 - 200: 11(int) Constant 80 - 198: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 199 48 27 200 16 91 18 - 212: 11(int) Constant 81 - 210: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 211 48 27 212 16 91 18 - 224: 11(int) Constant 82 - 222: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 223 48 27 224 16 91 18 - 233: TypeImage 8(float) 2D sampled format:Unknown - 236: 11(int) Constant 84 - 238: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone) - 234: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 235 16 27 236 16 38 237 238 17 - 239: TypePointer UniformConstant 233 - 240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 234 16 16 -241(displacementMapTexture): 239(ptr) Variable UniformConstant - 244: 11(int) Constant 8 - 242: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 243 234 27 236 16 38 243 241(displacementMapTexture) 244 - 247: TypeSampler - 248: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 249 36 27 236 16 38 250 238 17 - 251: TypePointer UniformConstant 247 - 252: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 248 16 16 -253(displacementMapSampler): 251(ptr) Variable UniformConstant - 254: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 255 248 27 236 16 38 255 253(displacementMapSampler) 244 - 257: TypeSampledImage 233 - 258: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 259 16 27 236 16 38 260 238 17 - 266: TypeMatrix 47(fvec4) 4 - 268: TypeBool - 270: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 269 14 21 16 - 271: 268(bool) ConstantTrue - 267: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 48 18 271 - 272: TypeArray 47(fvec4) 15 - 273: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 48 15 - 274(UBO): TypeStruct 266 266 47(fvec4) 272 8(float) 8(float) 43(fvec2) 8(float) - 277: 11(int) Constant 29 - 278: 11(int) Constant 20 - 275: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 276 267 27 277 278 16 16 17 - 279: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 276 267 27 277 278 16 16 17 - 282: 11(int) Constant 30 - 283: 11(int) Constant 17 - 280: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 281 48 27 282 283 16 16 17 - 286: 11(int) Constant 22 - 284: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 285 273 27 62 286 16 16 17 - 289: 11(int) Constant 27 - 287: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 288 10 27 58 289 16 16 17 - 290: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 288 10 27 58 289 16 16 17 - 293: 11(int) Constant 34 - 291: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 292 44 27 293 278 16 16 17 - 294: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 288 10 27 58 289 16 16 17 - 295: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 296 36 27 236 16 38 296 16 17 275 279 280 284 287 290 291 294 - 297(ubo): TypeStruct 274(UBO) - 298: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 299 295 27 74 74 16 16 17 - 300: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 299 36 27 236 16 38 299 16 17 298 - 301: TypePointer Uniform 297(ubo) - 302: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 300 21 16 - 303: 301(ptr) Variable Uniform - 304: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 2 300 27 236 16 38 2 303 244 - 305: 124(int) Constant 4 - 306: TypePointer Uniform 8(float) - 307: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 21 16 - 317: 11(int) Constant 86 - 318: TypePointer Uniform 266 - 319: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 267 21 16 - 329: 11(int) Constant 89 - 333: TypePointer Uniform 47(fvec4) - 334: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 48 21 16 - 337: 11(int) Constant 90 - 345: 124(int) Constant 6 - 348: 11(int) Constant 91 - 351: 124(int) Constant 5 - 354: 11(int) Constant 92 - 362: 11(int) Constant 93 - 368: TypePointer Input 19 -369(input.TessLevelOuter): 368(ptr) Variable Input - 370: TypePointer Input 8(float) - 383: TypePointer Input 22 -384(input.TessLevelInner): 383(ptr) Variable Input - 392: TypePointer Input 49(fvec3) - 393(TessCoord): 392(ptr) Variable Input - 398: TypePointer Function 65 - 400: TypeArray 47(fvec4) 18 - 401: TypePointer Input 400 - 402(patch.Pos): 401(ptr) Variable Input - 403: TypePointer Input 47(fvec4) - 407: TypeArray 49(fvec3) 18 - 408: TypePointer Input 407 -409(patch.Normal): 408(ptr) Variable Input - 413: TypeArray 43(fvec2) 18 - 414: TypePointer Input 413 - 415(patch.UV): 414(ptr) Variable Input - 416: TypePointer Input 43(fvec2) - 454: TypePointer Output 47(fvec4) -455(@entryPointOutput.Pos): 454(ptr) Variable Output - 458: TypePointer Output 49(fvec3) -459(@entryPointOutput.Normal): 458(ptr) Variable Output - 462: TypePointer Output 43(fvec2) -463(@entryPointOutput.UV): 462(ptr) Variable Output -466(@entryPointOutput.ViewVec): 458(ptr) Variable Output -469(@entryPointOutput.LightVec): 458(ptr) Variable Output -472(@entryPointOutput.EyePos): 458(ptr) Variable Output -475(@entryPointOutput.WorldPos): 458(ptr) Variable Output + 105: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 27 16 16 91 + 106: TypePointer Function 67(DSOutput) + 107: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 81 41 16 + 111: 11(int) Constant 70 + 109: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 110 81 27 111 16 105 18 + 115: 8(float) Constant 0 + 116: 47(fvec4) ConstantComposite 115 115 115 115 + 117: 49(fvec3) ConstantComposite 115 115 115 + 118: 43(fvec2) ConstantComposite 115 115 + 119:67(DSOutput) ConstantComposite 116 117 118 117 117 117 117 + 123: 11(int) Constant 71 + 121: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 122 44 27 123 16 105 18 + 126: TypeInt 32 1 + 128: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 127 14 18 16 + 129: 126(int) Constant 0 + 130: 126(int) Constant 2 + 132: 126(int) Constant 1 + 134: TypePointer Function 8(float) + 135: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 41 16 + 143: 11(int) Constant 72 + 141: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 142 44 27 143 16 105 18 + 146: 126(int) Constant 3 + 155: 11(int) Constant 73 + 162: TypePointer Function 49(fvec3) + 163: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 50 41 16 + 167: 11(int) Constant 75 + 165: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 166 50 27 167 16 105 18 + 179: 11(int) Constant 76 + 177: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 178 50 27 179 16 105 18 + 190: 11(int) Constant 77 + 197: TypePointer Function 47(fvec4) + 198: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 48 41 16 + 202: 11(int) Constant 80 + 200: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 201 48 27 202 16 105 18 + 214: 11(int) Constant 81 + 212: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 213 48 27 214 16 105 18 + 226: 11(int) Constant 82 + 224: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 225 48 27 226 16 105 18 + 235: TypeImage 8(float) 2D sampled format:Unknown + 238: 11(int) Constant 84 + 240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone) + 236: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 237 16 27 238 16 38 239 240 17 + 241: TypePointer UniformConstant 235 + 242: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 236 16 16 +243(displacementMapTexture): 241(ptr) Variable UniformConstant + 246: 11(int) Constant 8 + 244: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 245 236 27 238 16 38 245 243(displacementMapTexture) 246 + 249: TypeSampler + 250: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 251 36 27 238 16 38 252 240 17 + 253: TypePointer UniformConstant 249 + 254: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 250 16 16 +255(displacementMapSampler): 253(ptr) Variable UniformConstant + 256: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 257 250 27 238 16 38 257 255(displacementMapSampler) 246 + 259: TypeSampledImage 235 + 260: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 261 16 27 238 16 38 262 240 17 + 268: TypeMatrix 47(fvec4) 4 + 270: TypeBool + 272: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 271 14 21 16 + 273: 270(bool) ConstantTrue + 269: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 48 18 273 + 274: TypeArray 47(fvec4) 15 + 275: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 48 15 + 276(UBO): TypeStruct 268 268 47(fvec4) 274 8(float) 8(float) 43(fvec2) 8(float) + 279: 11(int) Constant 29 + 280: 11(int) Constant 20 + 277: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 278 269 27 279 280 16 16 17 + 281: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 278 269 27 279 280 16 16 17 + 284: 11(int) Constant 30 + 285: 11(int) Constant 17 + 282: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 283 48 27 284 285 16 16 17 + 288: 11(int) Constant 22 + 286: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 287 275 27 62 288 16 16 17 + 291: 11(int) Constant 27 + 289: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 290 10 27 58 291 16 16 17 + 292: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 290 10 27 58 291 16 16 17 + 295: 11(int) Constant 34 + 293: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 294 44 27 295 280 16 16 17 + 296: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 290 10 27 58 291 16 16 17 + 297: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 298 36 27 238 16 38 298 16 17 277 281 282 286 289 292 293 296 + 299(ubo): TypeStruct 276(UBO) + 300: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 301 297 27 74 74 16 16 17 + 302: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 301 36 27 238 16 38 301 16 17 300 + 303: TypePointer Uniform 299(ubo) + 304: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 302 21 16 + 305: 303(ptr) Variable Uniform + 306: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 307 302 27 238 16 38 307 305 246 + 308: 126(int) Constant 4 + 309: TypePointer Uniform 8(float) + 310: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 21 16 + 320: 11(int) Constant 86 + 321: TypePointer Uniform 268 + 322: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 269 21 16 + 332: 11(int) Constant 89 + 336: TypePointer Uniform 47(fvec4) + 337: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 48 21 16 + 340: 11(int) Constant 90 + 348: 126(int) Constant 6 + 351: 11(int) Constant 91 + 354: 126(int) Constant 5 + 357: 11(int) Constant 92 + 365: 11(int) Constant 93 + 371: TypePointer Input 19 +372(input.TessLevelOuter): 371(ptr) Variable Input + 373: TypePointer Input 8(float) + 386: TypePointer Input 22 +387(input.TessLevelInner): 386(ptr) Variable Input + 395: TypePointer Input 49(fvec3) + 396(TessCoord): 395(ptr) Variable Input + 401: TypePointer Function 65 + 403: TypeArray 47(fvec4) 18 + 404: TypePointer Input 403 + 405(patch.Pos): 404(ptr) Variable Input + 406: TypePointer Input 47(fvec4) + 410: TypeArray 49(fvec3) 18 + 411: TypePointer Input 410 +412(patch.Normal): 411(ptr) Variable Input + 416: TypeArray 43(fvec2) 18 + 417: TypePointer Input 416 + 418(patch.UV): 417(ptr) Variable Input + 419: TypePointer Input 43(fvec2) + 457: TypePointer Output 47(fvec4) +458(@entryPointOutput.Pos): 457(ptr) Variable Output + 461: TypePointer Output 49(fvec3) +462(@entryPointOutput.Normal): 461(ptr) Variable Output + 465: TypePointer Output 43(fvec2) +466(@entryPointOutput.UV): 465(ptr) Variable Output +469(@entryPointOutput.ViewVec): 461(ptr) Variable Output +472(@entryPointOutput.LightVec): 461(ptr) Variable Output +475(@entryPointOutput.EyePos): 461(ptr) Variable Output +478(@entryPointOutput.WorldPos): 461(ptr) Variable Output 6(main): 4 Function None 5 7: Label - 367(input): 40(ptr) Variable Function - 391(TessCoord): 45(ptr) Variable Function - 399(patch): 398(ptr) Variable Function -447(flattenTemp): 105(ptr) Variable Function - 449(param): 40(ptr) Variable Function - 451(param): 45(ptr) Variable Function - 371: 370(ptr) AccessChain 369(input.TessLevelOuter) 127 - 372: 8(float) Load 371 - 373: 132(ptr) AccessChain 367(input) 127 127 - Store 373 372 - 374: 370(ptr) AccessChain 369(input.TessLevelOuter) 130 + 370(input): 40(ptr) Variable Function + 394(TessCoord): 45(ptr) Variable Function + 402(patch): 401(ptr) Variable Function +450(flattenTemp): 106(ptr) Variable Function + 452(param): 40(ptr) Variable Function + 454(param): 45(ptr) Variable Function + 374: 373(ptr) AccessChain 372(input.TessLevelOuter) 129 375: 8(float) Load 374 - 376: 132(ptr) AccessChain 367(input) 127 130 + 376: 134(ptr) AccessChain 370(input) 129 129 Store 376 375 - 377: 370(ptr) AccessChain 369(input.TessLevelOuter) 128 + 377: 373(ptr) AccessChain 372(input.TessLevelOuter) 132 378: 8(float) Load 377 - 379: 132(ptr) AccessChain 367(input) 127 128 + 379: 134(ptr) AccessChain 370(input) 129 132 Store 379 378 - 380: 370(ptr) AccessChain 369(input.TessLevelOuter) 144 + 380: 373(ptr) AccessChain 372(input.TessLevelOuter) 130 381: 8(float) Load 380 - 382: 132(ptr) AccessChain 367(input) 127 144 + 382: 134(ptr) AccessChain 370(input) 129 130 Store 382 381 - 385: 370(ptr) AccessChain 384(input.TessLevelInner) 127 - 386: 8(float) Load 385 - 387: 132(ptr) AccessChain 367(input) 130 127 - Store 387 386 - 388: 370(ptr) AccessChain 384(input.TessLevelInner) 130 + 383: 373(ptr) AccessChain 372(input.TessLevelOuter) 146 + 384: 8(float) Load 383 + 385: 134(ptr) AccessChain 370(input) 129 146 + Store 385 384 + 388: 373(ptr) AccessChain 387(input.TessLevelInner) 129 389: 8(float) Load 388 - 390: 132(ptr) AccessChain 367(input) 130 130 + 390: 134(ptr) AccessChain 370(input) 132 129 Store 390 389 - 394: 49(fvec3) Load 393(TessCoord) - 395: 8(float) CompositeExtract 394 0 - 396: 8(float) CompositeExtract 394 1 - 397: 43(fvec2) CompositeConstruct 395 396 - Store 391(TessCoord) 397 - 404: 403(ptr) AccessChain 402(patch.Pos) 127 - 405: 47(fvec4) Load 404 - 406: 195(ptr) AccessChain 399(patch) 127 127 - Store 406 405 - 410: 392(ptr) AccessChain 409(patch.Normal) 127 - 411: 49(fvec3) Load 410 - 412: 160(ptr) AccessChain 399(patch) 127 130 - Store 412 411 - 417: 416(ptr) AccessChain 415(patch.UV) 127 - 418: 43(fvec2) Load 417 - 419: 45(ptr) AccessChain 399(patch) 127 128 - Store 419 418 - 420: 403(ptr) AccessChain 402(patch.Pos) 130 - 421: 47(fvec4) Load 420 - 422: 195(ptr) AccessChain 399(patch) 130 127 + 391: 373(ptr) AccessChain 387(input.TessLevelInner) 132 + 392: 8(float) Load 391 + 393: 134(ptr) AccessChain 370(input) 132 132 + Store 393 392 + 397: 49(fvec3) Load 396(TessCoord) + 398: 8(float) CompositeExtract 397 0 + 399: 8(float) CompositeExtract 397 1 + 400: 43(fvec2) CompositeConstruct 398 399 + Store 394(TessCoord) 400 + 407: 406(ptr) AccessChain 405(patch.Pos) 129 + 408: 47(fvec4) Load 407 + 409: 197(ptr) AccessChain 402(patch) 129 129 + Store 409 408 + 413: 395(ptr) AccessChain 412(patch.Normal) 129 + 414: 49(fvec3) Load 413 + 415: 162(ptr) AccessChain 402(patch) 129 132 + Store 415 414 + 420: 419(ptr) AccessChain 418(patch.UV) 129 + 421: 43(fvec2) Load 420 + 422: 45(ptr) AccessChain 402(patch) 129 130 Store 422 421 - 423: 392(ptr) AccessChain 409(patch.Normal) 130 - 424: 49(fvec3) Load 423 - 425: 160(ptr) AccessChain 399(patch) 130 130 + 423: 406(ptr) AccessChain 405(patch.Pos) 132 + 424: 47(fvec4) Load 423 + 425: 197(ptr) AccessChain 402(patch) 132 129 Store 425 424 - 426: 416(ptr) AccessChain 415(patch.UV) 130 - 427: 43(fvec2) Load 426 - 428: 45(ptr) AccessChain 399(patch) 130 128 + 426: 395(ptr) AccessChain 412(patch.Normal) 132 + 427: 49(fvec3) Load 426 + 428: 162(ptr) AccessChain 402(patch) 132 132 Store 428 427 - 429: 403(ptr) AccessChain 402(patch.Pos) 128 - 430: 47(fvec4) Load 429 - 431: 195(ptr) AccessChain 399(patch) 128 127 + 429: 419(ptr) AccessChain 418(patch.UV) 132 + 430: 43(fvec2) Load 429 + 431: 45(ptr) AccessChain 402(patch) 132 130 Store 431 430 - 432: 392(ptr) AccessChain 409(patch.Normal) 128 - 433: 49(fvec3) Load 432 - 434: 160(ptr) AccessChain 399(patch) 128 130 + 432: 406(ptr) AccessChain 405(patch.Pos) 130 + 433: 47(fvec4) Load 432 + 434: 197(ptr) AccessChain 402(patch) 130 129 Store 434 433 - 435: 416(ptr) AccessChain 415(patch.UV) 128 - 436: 43(fvec2) Load 435 - 437: 45(ptr) AccessChain 399(patch) 128 128 + 435: 395(ptr) AccessChain 412(patch.Normal) 130 + 436: 49(fvec3) Load 435 + 437: 162(ptr) AccessChain 402(patch) 130 132 Store 437 436 - 438: 403(ptr) AccessChain 402(patch.Pos) 144 - 439: 47(fvec4) Load 438 - 440: 195(ptr) AccessChain 399(patch) 144 127 + 438: 419(ptr) AccessChain 418(patch.UV) 130 + 439: 43(fvec2) Load 438 + 440: 45(ptr) AccessChain 402(patch) 130 130 Store 440 439 - 441: 392(ptr) AccessChain 409(patch.Normal) 144 - 442: 49(fvec3) Load 441 - 443: 160(ptr) AccessChain 399(patch) 144 130 + 441: 406(ptr) AccessChain 405(patch.Pos) 146 + 442: 47(fvec4) Load 441 + 443: 197(ptr) AccessChain 402(patch) 146 129 Store 443 442 - 444: 416(ptr) AccessChain 415(patch.UV) 144 - 445: 43(fvec2) Load 444 - 446: 45(ptr) AccessChain 399(patch) 144 128 + 444: 395(ptr) AccessChain 412(patch.Normal) 146 + 445: 49(fvec3) Load 444 + 446: 162(ptr) AccessChain 402(patch) 146 132 Store 446 445 - 448: 65 Load 399(patch) - 450:24(ConstantsHSOutput) Load 367(input) - Store 449(param) 450 - 452: 43(fvec2) Load 391(TessCoord) - Store 451(param) 452 - 453:67(DSOutput) FunctionCall 88(@main(struct-ConstantsHSOutput-f1[4]-f1[2]1;vf2;struct-HSOutput-vf4-vf3-vf21[4];) 449(param) 451(param) 448 - Store 447(flattenTemp) 453 - 456: 195(ptr) AccessChain 447(flattenTemp) 127 - 457: 47(fvec4) Load 456 - Store 455(@entryPointOutput.Pos) 457 - 460: 160(ptr) AccessChain 447(flattenTemp) 130 - 461: 49(fvec3) Load 460 - Store 459(@entryPointOutput.Normal) 461 - 464: 45(ptr) AccessChain 447(flattenTemp) 128 - 465: 43(fvec2) Load 464 - Store 463(@entryPointOutput.UV) 465 - 467: 160(ptr) AccessChain 447(flattenTemp) 144 - 468: 49(fvec3) Load 467 - Store 466(@entryPointOutput.ViewVec) 468 - 470: 160(ptr) AccessChain 447(flattenTemp) 305 + 447: 419(ptr) AccessChain 418(patch.UV) 146 + 448: 43(fvec2) Load 447 + 449: 45(ptr) AccessChain 402(patch) 146 130 + Store 449 448 + 451: 65 Load 402(patch) + 453:24(ConstantsHSOutput) Load 370(input) + Store 452(param) 453 + 455: 43(fvec2) Load 394(TessCoord) + Store 454(param) 455 + 456:67(DSOutput) FunctionCall 88(@main(struct-ConstantsHSOutput-f1[4]-f1[2]1;vf2;struct-HSOutput-vf4-vf3-vf21[4];) 452(param) 454(param) 451 + Store 450(flattenTemp) 456 + 459: 197(ptr) AccessChain 450(flattenTemp) 129 + 460: 47(fvec4) Load 459 + Store 458(@entryPointOutput.Pos) 460 + 463: 162(ptr) AccessChain 450(flattenTemp) 132 + 464: 49(fvec3) Load 463 + Store 462(@entryPointOutput.Normal) 464 + 467: 45(ptr) AccessChain 450(flattenTemp) 130 + 468: 43(fvec2) Load 467 + Store 466(@entryPointOutput.UV) 468 + 470: 162(ptr) AccessChain 450(flattenTemp) 146 471: 49(fvec3) Load 470 - Store 469(@entryPointOutput.LightVec) 471 - 473: 160(ptr) AccessChain 447(flattenTemp) 351 + Store 469(@entryPointOutput.ViewVec) 471 + 473: 162(ptr) AccessChain 450(flattenTemp) 308 474: 49(fvec3) Load 473 - Store 472(@entryPointOutput.EyePos) 474 - 476: 160(ptr) AccessChain 447(flattenTemp) 345 + Store 472(@entryPointOutput.LightVec) 474 + 476: 162(ptr) AccessChain 450(flattenTemp) 354 477: 49(fvec3) Load 476 - Store 475(@entryPointOutput.WorldPos) 477 + Store 475(@entryPointOutput.EyePos) 477 + 479: 162(ptr) AccessChain 450(flattenTemp) 348 + 480: 49(fvec3) Load 479 + Store 478(@entryPointOutput.WorldPos) 480 Return FunctionEnd 88(@main(struct-ConstantsHSOutput-f1[4]-f1[2]1;vf2;struct-HSOutput-vf4-vf3-vf21[4];):67(DSOutput) Function None 83 @@ -479,160 +575,161 @@ spv.debuginfo.hlsl.tese 86(TessCoord): 45(ptr) FunctionParameter 87(patch): 65 FunctionParameter 89: Label - 107(output): 105(ptr) Variable Function - 118(uv1): 45(ptr) Variable Function - 138(uv2): 45(ptr) Variable Function - 162(n1): 160(ptr) Variable Function - 174(n2): 160(ptr) Variable Function - 197(pos1): 195(ptr) Variable Function - 209(pos2): 195(ptr) Variable Function - 221(pos): 195(ptr) Variable Function + 108(output): 106(ptr) Variable Function + 120(uv1): 45(ptr) Variable Function + 140(uv2): 45(ptr) Variable Function + 164(n1): 162(ptr) Variable Function + 176(n2): 162(ptr) Variable Function + 199(pos1): 197(ptr) Variable Function + 211(pos2): 197(ptr) Variable Function + 223(pos): 197(ptr) Variable Function 96: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 91 97: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 37 37 16 16 94: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 92 85(input) 95 100: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 98 86(TessCoord) 95 103: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 101 87(patch) 95 104: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 91 88(@main(struct-ConstantsHSOutput-f1[4]-f1[2]1;vf2;struct-HSOutput-vf4-vf3-vf21[4];) - 112: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 110 110 16 16 - 111: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 108 107(output) 95 - Store 107(output) 117 - 123: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 121 121 16 16 - 122: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 119 118(uv1) 95 - 129: 43(fvec2) CompositeExtract 87(patch) 0 2 - 131: 43(fvec2) CompositeExtract 87(patch) 1 2 - 134: 132(ptr) AccessChain 86(TessCoord) 16 - 135: 8(float) Load 134 - 136: 43(fvec2) CompositeConstruct 135 135 - 137: 43(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 129 131 136 - Store 118(uv1) 137 - 143: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 141 141 16 16 - 142: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 139 138(uv2) 95 - 145: 43(fvec2) CompositeExtract 87(patch) 3 2 - 146: 43(fvec2) CompositeExtract 87(patch) 2 2 - 147: 132(ptr) AccessChain 86(TessCoord) 16 - 148: 8(float) Load 147 - 149: 43(fvec2) CompositeConstruct 148 148 - 150: 43(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 145 146 149 - Store 138(uv2) 150 - 152: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 153 153 16 16 - 151: 43(fvec2) Load 118(uv1) - 154: 43(fvec2) Load 138(uv2) - 155: 132(ptr) AccessChain 86(TessCoord) 36 - 156: 8(float) Load 155 - 157: 43(fvec2) CompositeConstruct 156 156 - 158: 43(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 151 154 157 - 159: 45(ptr) AccessChain 107(output) 128 - Store 159 158 - 167: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 165 165 16 16 - 166: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 163 162(n1) 95 - 168: 49(fvec3) CompositeExtract 87(patch) 0 1 - 169: 49(fvec3) CompositeExtract 87(patch) 1 1 - 170: 132(ptr) AccessChain 86(TessCoord) 16 - 171: 8(float) Load 170 - 172: 49(fvec3) CompositeConstruct 171 171 171 - 173: 49(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 168 169 172 - Store 162(n1) 173 - 179: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 177 177 16 16 - 178: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 175 174(n2) 95 - 180: 49(fvec3) CompositeExtract 87(patch) 3 1 - 181: 49(fvec3) CompositeExtract 87(patch) 2 1 - 182: 132(ptr) AccessChain 86(TessCoord) 16 - 183: 8(float) Load 182 - 184: 49(fvec3) CompositeConstruct 183 183 183 - 185: 49(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 180 181 184 - Store 174(n2) 185 - 187: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 188 188 16 16 - 186: 49(fvec3) Load 162(n1) - 189: 49(fvec3) Load 174(n2) - 190: 132(ptr) AccessChain 86(TessCoord) 36 - 191: 8(float) Load 190 - 192: 49(fvec3) CompositeConstruct 191 191 191 - 193: 49(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 186 189 192 - 194: 160(ptr) AccessChain 107(output) 130 - Store 194 193 - 202: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 200 200 16 16 - 201: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 198 197(pos1) 95 - 203: 47(fvec4) CompositeExtract 87(patch) 0 0 - 204: 47(fvec4) CompositeExtract 87(patch) 1 0 - 205: 132(ptr) AccessChain 86(TessCoord) 16 - 206: 8(float) Load 205 - 207: 47(fvec4) CompositeConstruct 206 206 206 206 - 208: 47(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 203 204 207 - Store 197(pos1) 208 - 214: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 212 212 16 16 - 213: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 210 209(pos2) 95 - 215: 47(fvec4) CompositeExtract 87(patch) 3 0 - 216: 47(fvec4) CompositeExtract 87(patch) 2 0 - 217: 132(ptr) AccessChain 86(TessCoord) 16 - 218: 8(float) Load 217 - 219: 47(fvec4) CompositeConstruct 218 218 218 218 - 220: 47(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 215 216 219 - Store 209(pos2) 220 - 226: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 224 224 16 16 - 225: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 222 221(pos) 95 - 227: 47(fvec4) Load 197(pos1) - 228: 47(fvec4) Load 209(pos2) - 229: 132(ptr) AccessChain 86(TessCoord) 36 - 230: 8(float) Load 229 - 231: 47(fvec4) CompositeConstruct 230 230 230 230 - 232: 47(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 227 228 231 - Store 221(pos) 232 - 246: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 236 236 16 16 - 245: 233 Load 241(displacementMapTexture) - 256: 247 Load 253(displacementMapSampler) - 261: 257 SampledImage 245 256 - 262: 45(ptr) AccessChain 107(output) 128 - 263: 43(fvec2) Load 262 - 264: 47(fvec4) ImageSampleExplicitLod 261 263 Lod 113 - 265: 8(float) CompositeExtract 264 0 - 308: 306(ptr) AccessChain 303 127 305 - 309: 8(float) Load 308 - 310: 8(float) FMul 265 309 - 311: 132(ptr) AccessChain 221(pos) 36 + 113: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 105 + 114: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 111 111 16 16 + 112: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 109 108(output) 95 + Store 108(output) 119 + 125: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 123 123 16 16 + 124: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 121 120(uv1) 95 + 131: 43(fvec2) CompositeExtract 87(patch) 0 2 + 133: 43(fvec2) CompositeExtract 87(patch) 1 2 + 136: 134(ptr) AccessChain 86(TessCoord) 16 + 137: 8(float) Load 136 + 138: 43(fvec2) CompositeConstruct 137 137 + 139: 43(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 131 133 138 + Store 120(uv1) 139 + 145: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 143 143 16 16 + 144: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 141 140(uv2) 95 + 147: 43(fvec2) CompositeExtract 87(patch) 3 2 + 148: 43(fvec2) CompositeExtract 87(patch) 2 2 + 149: 134(ptr) AccessChain 86(TessCoord) 16 + 150: 8(float) Load 149 + 151: 43(fvec2) CompositeConstruct 150 150 + 152: 43(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 147 148 151 + Store 140(uv2) 152 + 154: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 155 155 16 16 + 153: 43(fvec2) Load 120(uv1) + 156: 43(fvec2) Load 140(uv2) + 157: 134(ptr) AccessChain 86(TessCoord) 36 + 158: 8(float) Load 157 + 159: 43(fvec2) CompositeConstruct 158 158 + 160: 43(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 153 156 159 + 161: 45(ptr) AccessChain 108(output) 130 + Store 161 160 + 169: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 167 167 16 16 + 168: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 165 164(n1) 95 + 170: 49(fvec3) CompositeExtract 87(patch) 0 1 + 171: 49(fvec3) CompositeExtract 87(patch) 1 1 + 172: 134(ptr) AccessChain 86(TessCoord) 16 + 173: 8(float) Load 172 + 174: 49(fvec3) CompositeConstruct 173 173 173 + 175: 49(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 170 171 174 + Store 164(n1) 175 + 181: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 179 179 16 16 + 180: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 177 176(n2) 95 + 182: 49(fvec3) CompositeExtract 87(patch) 3 1 + 183: 49(fvec3) CompositeExtract 87(patch) 2 1 + 184: 134(ptr) AccessChain 86(TessCoord) 16 + 185: 8(float) Load 184 + 186: 49(fvec3) CompositeConstruct 185 185 185 + 187: 49(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 182 183 186 + Store 176(n2) 187 + 189: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 190 190 16 16 + 188: 49(fvec3) Load 164(n1) + 191: 49(fvec3) Load 176(n2) + 192: 134(ptr) AccessChain 86(TessCoord) 36 + 193: 8(float) Load 192 + 194: 49(fvec3) CompositeConstruct 193 193 193 + 195: 49(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 188 191 194 + 196: 162(ptr) AccessChain 108(output) 132 + Store 196 195 + 204: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 202 202 16 16 + 203: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 200 199(pos1) 95 + 205: 47(fvec4) CompositeExtract 87(patch) 0 0 + 206: 47(fvec4) CompositeExtract 87(patch) 1 0 + 207: 134(ptr) AccessChain 86(TessCoord) 16 + 208: 8(float) Load 207 + 209: 47(fvec4) CompositeConstruct 208 208 208 208 + 210: 47(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 205 206 209 + Store 199(pos1) 210 + 216: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 214 214 16 16 + 215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 212 211(pos2) 95 + 217: 47(fvec4) CompositeExtract 87(patch) 3 0 + 218: 47(fvec4) CompositeExtract 87(patch) 2 0 + 219: 134(ptr) AccessChain 86(TessCoord) 16 + 220: 8(float) Load 219 + 221: 47(fvec4) CompositeConstruct 220 220 220 220 + 222: 47(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 217 218 221 + Store 211(pos2) 222 + 228: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 226 226 16 16 + 227: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 224 223(pos) 95 + 229: 47(fvec4) Load 199(pos1) + 230: 47(fvec4) Load 211(pos2) + 231: 134(ptr) AccessChain 86(TessCoord) 36 + 232: 8(float) Load 231 + 233: 47(fvec4) CompositeConstruct 232 232 232 232 + 234: 47(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 229 230 233 + Store 223(pos) 234 + 248: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 238 238 16 16 + 247: 235 Load 243(displacementMapTexture) + 258: 249 Load 255(displacementMapSampler) + 263: 259 SampledImage 247 258 + 264: 45(ptr) AccessChain 108(output) 130 + 265: 43(fvec2) Load 264 + 266: 47(fvec4) ImageSampleExplicitLod 263 265 Lod 115 + 267: 8(float) CompositeExtract 266 0 + 311: 309(ptr) AccessChain 305 129 308 312: 8(float) Load 311 - 313: 8(float) FSub 312 310 - 314: 132(ptr) AccessChain 221(pos) 36 - Store 314 313 - 316: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 317 317 16 16 - 315: 47(fvec4) Load 221(pos) - 320: 318(ptr) AccessChain 303 127 130 - 321: 266 Load 320 - 322: 47(fvec4) VectorTimesMatrix 315 321 - 323: 318(ptr) AccessChain 303 127 127 - 324: 266 Load 323 - 325: 47(fvec4) VectorTimesMatrix 322 324 - 326: 195(ptr) AccessChain 107(output) 127 - Store 326 325 - 328: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 329 329 16 16 - 327: 47(fvec4) Load 221(pos) - 330: 49(fvec3) VectorShuffle 327 327 0 1 2 - 331: 49(fvec3) FNegate 330 - 332: 160(ptr) AccessChain 107(output) 144 - Store 332 331 - 336: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 337 337 16 16 - 335: 333(ptr) AccessChain 303 127 128 - 338: 47(fvec4) Load 335 - 339: 49(fvec3) VectorShuffle 338 338 0 1 2 - 340: 160(ptr) AccessChain 107(output) 144 - 341: 49(fvec3) Load 340 - 342: 49(fvec3) FAdd 339 341 - 343: 49(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 342 - 344: 160(ptr) AccessChain 107(output) 305 - Store 344 343 - 347: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 348 348 16 16 - 346: 47(fvec4) Load 221(pos) - 349: 49(fvec3) VectorShuffle 346 346 0 1 2 - 350: 160(ptr) AccessChain 107(output) 345 - Store 350 349 - 353: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 354 354 16 16 - 352: 47(fvec4) Load 221(pos) - 355: 318(ptr) AccessChain 303 127 130 - 356: 266 Load 355 - 357: 47(fvec4) VectorTimesMatrix 352 356 - 358: 49(fvec3) VectorShuffle 357 357 0 1 2 - 359: 160(ptr) AccessChain 107(output) 351 - Store 359 358 - 361: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 362 362 16 16 - 360:67(DSOutput) Load 107(output) - ReturnValue 360 + 313: 8(float) FMul 267 312 + 314: 134(ptr) AccessChain 223(pos) 36 + 315: 8(float) Load 314 + 316: 8(float) FSub 315 313 + 317: 134(ptr) AccessChain 223(pos) 36 + Store 317 316 + 319: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 320 320 16 16 + 318: 47(fvec4) Load 223(pos) + 323: 321(ptr) AccessChain 305 129 132 + 324: 268 Load 323 + 325: 47(fvec4) VectorTimesMatrix 318 324 + 326: 321(ptr) AccessChain 305 129 129 + 327: 268 Load 326 + 328: 47(fvec4) VectorTimesMatrix 325 327 + 329: 197(ptr) AccessChain 108(output) 129 + Store 329 328 + 331: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 332 332 16 16 + 330: 47(fvec4) Load 223(pos) + 333: 49(fvec3) VectorShuffle 330 330 0 1 2 + 334: 49(fvec3) FNegate 333 + 335: 162(ptr) AccessChain 108(output) 146 + Store 335 334 + 339: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 340 340 16 16 + 338: 336(ptr) AccessChain 305 129 130 + 341: 47(fvec4) Load 338 + 342: 49(fvec3) VectorShuffle 341 341 0 1 2 + 343: 162(ptr) AccessChain 108(output) 146 + 344: 49(fvec3) Load 343 + 345: 49(fvec3) FAdd 342 344 + 346: 49(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 345 + 347: 162(ptr) AccessChain 108(output) 308 + Store 347 346 + 350: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 351 351 16 16 + 349: 47(fvec4) Load 223(pos) + 352: 49(fvec3) VectorShuffle 349 349 0 1 2 + 353: 162(ptr) AccessChain 108(output) 348 + Store 353 352 + 356: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 357 357 16 16 + 355: 47(fvec4) Load 223(pos) + 358: 321(ptr) AccessChain 305 129 132 + 359: 268 Load 358 + 360: 47(fvec4) VectorTimesMatrix 355 359 + 361: 49(fvec3) VectorShuffle 360 360 0 1 2 + 362: 162(ptr) AccessChain 108(output) 354 + Store 362 361 + 364: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 27 365 365 16 16 + 363:67(DSOutput) Load 108(output) + ReturnValue 363 FunctionEnd diff --git a/Test/baseResults/spv.debuginfo.hlsl.vert.out b/Test/baseResults/spv.debuginfo.hlsl.vert.out index 094173a5..4e49f04a 100644 --- a/Test/baseResults/spv.debuginfo.hlsl.vert.out +++ b/Test/baseResults/spv.debuginfo.hlsl.vert.out @@ -1,15 +1,15 @@ spv.debuginfo.hlsl.vert // Module Version 10000 // Generated by (magic number): 8000b -// Id's are bound by 513 +// Id's are bound by 518 Capability Shader Extension "SPV_KHR_non_semantic_info" 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" 3: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 - EntryPoint Vertex 6 "main" 462 465 469 472 475 478 482 486 494 498 501 504 507 510 - 2: String "" + EntryPoint Vertex 6 "main" 467 470 474 477 480 483 487 491 499 503 506 509 512 515 + 2: String "spv.debuginfo.hlsl.vert" 9: String "float" 12: String "uint" 24: String "int" @@ -22,6 +22,118 @@ spv.debuginfo.hlsl.vert // OpModuleProcessed keep-uncalled // OpModuleProcessed hlsl-offsets #line 1 +/* +The MIT License (MIT) + +Copyright (c) 2022 Google LLC +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. +*/ + +struct VSInput +{ +[[vk::location(0)]] float3 Pos : POSITION0; +[[vk::location(1)]] float3 Normal : NORMAL0; +[[vk::location(2)]] float2 UV : TEXCOORD0; +[[vk::location(3)]] float3 Color : COLOR0; + +// Instanced attributes +[[vk::location(4)]] float3 instancePos : POSITION1; +[[vk::location(5)]] float3 instanceRot : TEXCOORD1; +[[vk::location(6)]] float instanceScale : TEXCOORD2; +[[vk::location(7)]] int instanceTexIndex : TEXCOORD3; +}; + +struct UBO +{ + float4x4 projection; + float4x4 modelview; + float4 lightPos; + float locSpeed; + float globSpeed; +}; + +cbuffer ubo : register(b0) { UBO ubo; } + +struct VSOutput +{ + float4 Pos : SV_POSITION; +[[vk::location(0)]] float3 Normal : NORMAL0; +[[vk::location(1)]] float3 Color : COLOR0; +[[vk::location(2)]] float3 UV : TEXCOORD0; +[[vk::location(3)]] float3 ViewVec : TEXCOORD1; +[[vk::location(4)]] float3 LightVec : TEXCOORD2; +}; + +VSOutput main(VSInput input) +{ + VSOutput output = (VSOutput)0; + output.Color = input.Color; + output.UV = float3(input.UV, input.instanceTexIndex); + + // rotate around x + float s = sin(input.instanceRot.x + ubo.locSpeed); + float c = cos(input.instanceRot.x + ubo.locSpeed); + + float3x3 mx = { c, -s, 0.0, + s, c, 0.0, + 0.0, 0.0, 1.0 }; + + // rotate around y + s = sin(input.instanceRot.y + ubo.locSpeed); + c = cos(input.instanceRot.y + ubo.locSpeed); + + float3x3 my = { c, 0.0, -s, + 0.0, 1.0, 0.0, + s, 0.0, c }; + + // rot around z + s = sin(input.instanceRot.z + ubo.locSpeed); + c = cos(input.instanceRot.z + ubo.locSpeed); + + float3x3 mz = { 1.0, 0.0, 0.0, + 0.0, c, -s, + 0.0, s, c }; + + float3x3 rotMat = mul(mz, mul(my, mx)); + + float4x4 gRotMat; + s = sin(input.instanceRot.y + ubo.globSpeed); + c = cos(input.instanceRot.y + ubo.globSpeed); + gRotMat[0] = float4(c, 0.0, -s, 0.0); + gRotMat[1] = float4(0.0, 1.0, 0.0, 0.0); + gRotMat[2] = float4(s, 0.0, c, 0.0); + gRotMat[3] = float4(0.0, 0.0, 0.0, 1.0); + + float4 locPos = float4(mul(rotMat, input.Pos.xyz), 1.0); + float4 pos = float4((locPos.xyz * input.instanceScale) + input.instancePos, 1.0); + + output.Pos = mul(ubo.projection, mul(ubo.modelview, mul(gRotMat, pos))); + output.Normal = mul((float3x3)mul(ubo.modelview, gRotMat), mul(rotMat, input.Normal)); + + pos = mul(ubo.modelview, float4(input.Pos.xyz + input.instancePos, 1.0)); + float3 lPos = mul((float3x3)ubo.modelview, ubo.lightPos.xyz); + output.LightVec = lPos - pos.xyz; + output.ViewVec = -pos.xyz; + return output; +} " 36: String "UV" 43: String "instanceScale" @@ -32,23 +144,24 @@ spv.debuginfo.hlsl.vert 74: String "VSOutput" 80: String "@main" 83: String "input" - 93: String "output" - 130: String "s" - 140: String "bool" - 145: String "modelview" - 150: String "lightPos" - 154: String "globSpeed" - 158: String "UBO" - 161: String "ubo" - 178: String "c" - 194: String "mx" - 229: String "my" - 263: String "mz" - 283: String "rotMat" - 313: String "gRotMat" - 341: String "locPos" - 355: String "pos" - 421: String "lPos" + 94: String "output" + 132: String "s" + 142: String "bool" + 147: String "modelview" + 152: String "lightPos" + 156: String "globSpeed" + 160: String "UBO" + 163: String "ubo" + 170: String "" + 181: String "c" + 197: String "mx" + 232: String "my" + 266: String "mz" + 286: String "rotMat" + 299: String "gRotMat" + 346: String "locPos" + 360: String "pos" + 426: String "lPos" Name 6 "main" Name 27 "VSInput" MemberName 27(VSInput) 0 "Pos" @@ -68,70 +181,70 @@ spv.debuginfo.hlsl.vert MemberName 61(VSOutput) 5 "LightVec" Name 78 "@main(struct-VSInput-vf3-vf3-vf2-vf3-vf3-vf3-f1-i11;" Name 77 "input" - Name 91 "output" - Name 128 "s" - Name 143 "UBO" - MemberName 143(UBO) 0 "projection" - MemberName 143(UBO) 1 "modelview" - MemberName 143(UBO) 2 "lightPos" - MemberName 143(UBO) 3 "locSpeed" - MemberName 143(UBO) 4 "globSpeed" - Name 159 "ubo" - MemberName 159(ubo) 0 "ubo" - Name 166 "" - Name 176 "c" - Name 192 "mx" - Name 227 "my" - Name 261 "mz" - Name 281 "rotMat" - Name 311 "gRotMat" - Name 339 "locPos" - Name 353 "pos" - Name 419 "lPos" - Name 460 "input" - Name 462 "input.Pos" - Name 465 "input.Normal" - Name 469 "input.UV" - Name 472 "input.Color" - Name 475 "input.instancePos" - Name 478 "input.instanceRot" - Name 482 "input.instanceScale" - Name 486 "input.instanceTexIndex" - Name 489 "flattenTemp" - Name 490 "param" - Name 494 "@entryPointOutput.Pos" - Name 498 "@entryPointOutput.Normal" - Name 501 "@entryPointOutput.Color" - Name 504 "@entryPointOutput.UV" - Name 507 "@entryPointOutput.ViewVec" - Name 510 "@entryPointOutput.LightVec" - MemberDecorate 143(UBO) 0 RowMajor - MemberDecorate 143(UBO) 0 MatrixStride 16 - MemberDecorate 143(UBO) 0 Offset 0 - MemberDecorate 143(UBO) 1 RowMajor - MemberDecorate 143(UBO) 1 MatrixStride 16 - MemberDecorate 143(UBO) 1 Offset 64 - MemberDecorate 143(UBO) 2 Offset 128 - MemberDecorate 143(UBO) 3 Offset 144 - MemberDecorate 143(UBO) 4 Offset 148 - Decorate 159(ubo) Block - MemberDecorate 159(ubo) 0 Offset 0 - Decorate 166 Binding 0 - Decorate 166 DescriptorSet 0 - Decorate 462(input.Pos) Location 0 - Decorate 465(input.Normal) Location 1 - Decorate 469(input.UV) Location 2 - Decorate 472(input.Color) Location 3 - Decorate 475(input.instancePos) Location 4 - Decorate 478(input.instanceRot) Location 5 - Decorate 482(input.instanceScale) Location 6 - Decorate 486(input.instanceTexIndex) Location 7 - Decorate 494(@entryPointOutput.Pos) BuiltIn Position - Decorate 498(@entryPointOutput.Normal) Location 0 - Decorate 501(@entryPointOutput.Color) Location 1 - Decorate 504(@entryPointOutput.UV) Location 2 - Decorate 507(@entryPointOutput.ViewVec) Location 3 - Decorate 510(@entryPointOutput.LightVec) Location 4 + Name 92 "output" + Name 130 "s" + Name 145 "UBO" + MemberName 145(UBO) 0 "projection" + MemberName 145(UBO) 1 "modelview" + MemberName 145(UBO) 2 "lightPos" + MemberName 145(UBO) 3 "locSpeed" + MemberName 145(UBO) 4 "globSpeed" + Name 161 "ubo" + MemberName 161(ubo) 0 "ubo" + Name 168 "" + Name 179 "c" + Name 195 "mx" + Name 230 "my" + Name 264 "mz" + Name 284 "rotMat" + Name 297 "gRotMat" + Name 344 "locPos" + Name 358 "pos" + Name 424 "lPos" + Name 465 "input" + Name 467 "input.Pos" + Name 470 "input.Normal" + Name 474 "input.UV" + Name 477 "input.Color" + Name 480 "input.instancePos" + Name 483 "input.instanceRot" + Name 487 "input.instanceScale" + Name 491 "input.instanceTexIndex" + Name 494 "flattenTemp" + Name 495 "param" + Name 499 "@entryPointOutput.Pos" + Name 503 "@entryPointOutput.Normal" + Name 506 "@entryPointOutput.Color" + Name 509 "@entryPointOutput.UV" + Name 512 "@entryPointOutput.ViewVec" + Name 515 "@entryPointOutput.LightVec" + MemberDecorate 145(UBO) 0 RowMajor + MemberDecorate 145(UBO) 0 MatrixStride 16 + MemberDecorate 145(UBO) 0 Offset 0 + MemberDecorate 145(UBO) 1 RowMajor + MemberDecorate 145(UBO) 1 MatrixStride 16 + MemberDecorate 145(UBO) 1 Offset 64 + MemberDecorate 145(UBO) 2 Offset 128 + MemberDecorate 145(UBO) 3 Offset 144 + MemberDecorate 145(UBO) 4 Offset 148 + Decorate 161(ubo) Block + MemberDecorate 161(ubo) 0 Offset 0 + Decorate 168 Binding 0 + Decorate 168 DescriptorSet 0 + Decorate 467(input.Pos) Location 0 + Decorate 470(input.Normal) Location 1 + Decorate 474(input.UV) Location 2 + Decorate 477(input.Color) Location 3 + Decorate 480(input.instancePos) Location 4 + Decorate 483(input.instanceRot) Location 5 + Decorate 487(input.instanceScale) Location 6 + Decorate 491(input.instanceTexIndex) Location 7 + Decorate 499(@entryPointOutput.Pos) BuiltIn Position + Decorate 503(@entryPointOutput.Normal) Location 0 + Decorate 506(@entryPointOutput.Color) Location 1 + Decorate 509(@entryPointOutput.UV) Location 2 + Decorate 512(@entryPointOutput.ViewVec) Location 3 + Decorate 515(@entryPointOutput.LightVec) Location 4 4: TypeVoid 5: TypeFunction 4 8: TypeFloat 32 @@ -194,462 +307,466 @@ spv.debuginfo.hlsl.vert 81: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 80 76 30 53 16 54 80 17 53 82: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 83 50 30 53 16 81 26 52 85: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression) - 89: TypePointer Function 61(VSOutput) - 90: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 73 57 16 - 94: 11(int) Constant 63 - 92: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 93 73 30 94 16 81 26 - 97: 8(float) Constant 0 - 98: 59(fvec4) ConstantComposite 97 97 97 97 - 99: 18(fvec3) ConstantComposite 97 97 97 - 100:61(VSOutput) ConstantComposite 98 99 99 99 99 99 - 101: 23(int) Constant 2 - 102: 23(int) Constant 3 - 103: TypePointer Function 18(fvec3) - 104: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 19 57 16 - 107: 11(int) Constant 64 - 110: TypePointer Function 20(fvec2) - 111: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 22 57 16 - 114: 11(int) Constant 65 - 116: 23(int) Constant 7 - 117: TypePointer Function 23(int) - 118: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 25 57 16 - 126: TypePointer Function 8(float) - 127: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 57 16 - 131: 11(int) Constant 68 - 129: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 130 10 30 131 16 81 26 - 134: 23(int) Constant 5 - 137: TypeMatrix 59(fvec4) 4 - 139: TypeBool - 141: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 140 14 21 16 - 142: 139(bool) ConstantTrue - 138: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 60 26 142 - 143(UBO): TypeStruct 137 137 59(fvec4) 8(float) 8(float) - 146: 11(int) Constant 43 - 147: 11(int) Constant 20 - 144: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 145 138 30 146 147 16 16 17 - 148: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 145 138 30 146 147 16 16 17 - 151: 11(int) Constant 44 - 152: 11(int) Constant 17 - 149: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 150 60 30 151 152 16 16 17 - 155: 11(int) Constant 46 - 153: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 154 10 30 155 152 16 16 17 - 156: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 154 10 30 155 152 16 16 17 - 157: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 158 52 30 131 16 54 158 16 17 144 148 149 153 156 - 159(ubo): TypeStruct 143(UBO) - 162: 11(int) Constant 49 - 160: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 161 157 30 162 48 16 16 17 - 163: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 161 52 30 131 16 54 161 16 17 160 - 164: TypePointer Uniform 159(ubo) - 165: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 163 21 16 - 166: 164(ptr) Variable Uniform - 168: 11(int) Constant 8 - 167: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 2 163 30 131 16 54 2 166 168 - 169: 23(int) Constant 0 - 170: TypePointer Uniform 8(float) - 171: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 21 16 - 179: 11(int) Constant 69 - 177: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 178 10 30 179 16 81 26 - 188: TypeMatrix 18(fvec3) 3 - 189: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 19 17 142 - 190: TypePointer Function 188 - 191: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 189 57 16 - 195: 11(int) Constant 71 - 193: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 194 189 30 195 16 81 26 - 203: 11(int) Constant 72 - 205: 8(float) Constant 1065353216 - 213: 11(int) Constant 76 - 221: 11(int) Constant 77 - 230: 11(int) Constant 79 - 228: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 229 189 30 230 16 81 26 - 238: 11(int) Constant 81 - 247: 11(int) Constant 84 - 255: 11(int) Constant 85 - 264: 11(int) Constant 87 - 262: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 263 189 30 264 16 81 26 - 269: 11(int) Constant 88 - 274: 11(int) Constant 89 - 284: 11(int) Constant 91 - 282: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 283 189 30 284 16 81 26 - 294: 11(int) Constant 94 - 296: 23(int) Constant 4 - 303: 11(int) Constant 95 - 309: TypePointer Function 137 - 310: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 138 57 16 - 314: 11(int) Constant 96 - 312: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 313 138 30 314 16 81 26 - 321: TypePointer Function 59(fvec4) - 322: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 60 57 16 - 324: 23(int) Constant 1 - 325: 59(fvec4) ConstantComposite 97 205 97 97 - 328: 11(int) Constant 97 - 331: 11(int) Constant 98 - 335: 59(fvec4) ConstantComposite 97 97 97 205 - 338: 11(int) Constant 99 - 342: 11(int) Constant 101 - 340: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 341 60 30 342 16 81 26 - 356: 11(int) Constant 102 - 354: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 355 60 30 356 16 81 26 - 361: 23(int) Constant 6 - 374: 11(int) Constant 104 - 377: TypePointer Uniform 137 - 378: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 138 21 16 - 388: 11(int) Constant 105 - 407: 11(int) Constant 107 - 422: 11(int) Constant 108 - 420: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 421 19 30 422 16 81 26 - 425: TypePointer Uniform 59(fvec4) - 426: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 60 21 16 - 442: 11(int) Constant 109 - 449: 11(int) Constant 110 - 455: 11(int) Constant 111 - 461: TypePointer Input 18(fvec3) - 462(input.Pos): 461(ptr) Variable Input -465(input.Normal): 461(ptr) Variable Input - 468: TypePointer Input 20(fvec2) - 469(input.UV): 468(ptr) Variable Input -472(input.Color): 461(ptr) Variable Input -475(input.instancePos): 461(ptr) Variable Input -478(input.instanceRot): 461(ptr) Variable Input - 481: TypePointer Input 8(float) -482(input.instanceScale): 481(ptr) Variable Input - 485: TypePointer Input 23(int) -486(input.instanceTexIndex): 485(ptr) Variable Input - 493: TypePointer Output 59(fvec4) -494(@entryPointOutput.Pos): 493(ptr) Variable Output - 497: TypePointer Output 18(fvec3) -498(@entryPointOutput.Normal): 497(ptr) Variable Output -501(@entryPointOutput.Color): 497(ptr) Variable Output -504(@entryPointOutput.UV): 497(ptr) Variable Output -507(@entryPointOutput.ViewVec): 497(ptr) Variable Output -510(@entryPointOutput.LightVec): 497(ptr) Variable Output + 89: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 30 16 16 81 + 90: TypePointer Function 61(VSOutput) + 91: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 73 57 16 + 95: 11(int) Constant 63 + 93: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 94 73 30 95 16 89 26 + 99: 8(float) Constant 0 + 100: 59(fvec4) ConstantComposite 99 99 99 99 + 101: 18(fvec3) ConstantComposite 99 99 99 + 102:61(VSOutput) ConstantComposite 100 101 101 101 101 101 + 103: 23(int) Constant 2 + 104: 23(int) Constant 3 + 105: TypePointer Function 18(fvec3) + 106: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 19 57 16 + 109: 11(int) Constant 64 + 112: TypePointer Function 20(fvec2) + 113: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 22 57 16 + 116: 11(int) Constant 65 + 118: 23(int) Constant 7 + 119: TypePointer Function 23(int) + 120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 25 57 16 + 128: TypePointer Function 8(float) + 129: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 57 16 + 133: 11(int) Constant 68 + 131: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 132 10 30 133 16 89 26 + 136: 23(int) Constant 5 + 139: TypeMatrix 59(fvec4) 4 + 141: TypeBool + 143: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 142 14 21 16 + 144: 141(bool) ConstantTrue + 140: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 60 26 144 + 145(UBO): TypeStruct 139 139 59(fvec4) 8(float) 8(float) + 148: 11(int) Constant 43 + 149: 11(int) Constant 20 + 146: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 147 140 30 148 149 16 16 17 + 150: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 147 140 30 148 149 16 16 17 + 153: 11(int) Constant 44 + 154: 11(int) Constant 17 + 151: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 152 60 30 153 154 16 16 17 + 157: 11(int) Constant 46 + 155: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 156 10 30 157 154 16 16 17 + 158: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 156 10 30 157 154 16 16 17 + 159: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 160 52 30 133 16 54 160 16 17 146 150 151 155 158 + 161(ubo): TypeStruct 145(UBO) + 164: 11(int) Constant 49 + 162: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 163 159 30 164 48 16 16 17 + 165: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 163 52 30 133 16 54 163 16 17 162 + 166: TypePointer Uniform 161(ubo) + 167: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 165 21 16 + 168: 166(ptr) Variable Uniform + 171: 11(int) Constant 8 + 169: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 170 165 30 133 16 54 170 168 171 + 172: 23(int) Constant 0 + 173: TypePointer Uniform 8(float) + 174: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 21 16 + 182: 11(int) Constant 69 + 180: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 181 10 30 182 16 89 26 + 191: TypeMatrix 18(fvec3) 3 + 192: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 19 17 144 + 193: TypePointer Function 191 + 194: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 192 57 16 + 198: 11(int) Constant 71 + 196: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 197 192 30 198 16 89 26 + 206: 11(int) Constant 72 + 208: 8(float) Constant 1065353216 + 216: 11(int) Constant 76 + 224: 11(int) Constant 77 + 233: 11(int) Constant 79 + 231: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 232 192 30 233 16 89 26 + 241: 11(int) Constant 81 + 250: 11(int) Constant 84 + 258: 11(int) Constant 85 + 267: 11(int) Constant 87 + 265: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 266 192 30 267 16 89 26 + 272: 11(int) Constant 88 + 277: 11(int) Constant 89 + 287: 11(int) Constant 91 + 285: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 286 192 30 287 16 89 26 + 295: TypePointer Function 139 + 296: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 140 57 16 + 300: 11(int) Constant 93 + 298: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 299 140 30 300 16 89 26 + 305: 11(int) Constant 94 + 307: 23(int) Constant 4 + 314: 11(int) Constant 95 + 322: 11(int) Constant 96 + 326: TypePointer Function 59(fvec4) + 327: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 60 57 16 + 329: 23(int) Constant 1 + 330: 59(fvec4) ConstantComposite 99 208 99 99 + 333: 11(int) Constant 97 + 336: 11(int) Constant 98 + 340: 59(fvec4) ConstantComposite 99 99 99 208 + 343: 11(int) Constant 99 + 347: 11(int) Constant 101 + 345: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 346 60 30 347 16 89 26 + 361: 11(int) Constant 102 + 359: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 360 60 30 361 16 89 26 + 366: 23(int) Constant 6 + 379: 11(int) Constant 104 + 382: TypePointer Uniform 139 + 383: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 140 21 16 + 393: 11(int) Constant 105 + 412: 11(int) Constant 107 + 427: 11(int) Constant 108 + 425: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 426 19 30 427 16 89 26 + 430: TypePointer Uniform 59(fvec4) + 431: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 60 21 16 + 447: 11(int) Constant 109 + 454: 11(int) Constant 110 + 460: 11(int) Constant 111 + 466: TypePointer Input 18(fvec3) + 467(input.Pos): 466(ptr) Variable Input +470(input.Normal): 466(ptr) Variable Input + 473: TypePointer Input 20(fvec2) + 474(input.UV): 473(ptr) Variable Input +477(input.Color): 466(ptr) Variable Input +480(input.instancePos): 466(ptr) Variable Input +483(input.instanceRot): 466(ptr) Variable Input + 486: TypePointer Input 8(float) +487(input.instanceScale): 486(ptr) Variable Input + 490: TypePointer Input 23(int) +491(input.instanceTexIndex): 490(ptr) Variable Input + 498: TypePointer Output 59(fvec4) +499(@entryPointOutput.Pos): 498(ptr) Variable Output + 502: TypePointer Output 18(fvec3) +503(@entryPointOutput.Normal): 502(ptr) Variable Output +506(@entryPointOutput.Color): 502(ptr) Variable Output +509(@entryPointOutput.UV): 502(ptr) Variable Output +512(@entryPointOutput.ViewVec): 502(ptr) Variable Output +515(@entryPointOutput.LightVec): 502(ptr) Variable Output 6(main): 4 Function None 5 7: Label - 460(input): 56(ptr) Variable Function -489(flattenTemp): 89(ptr) Variable Function - 490(param): 56(ptr) Variable Function - 463: 18(fvec3) Load 462(input.Pos) - 464: 103(ptr) AccessChain 460(input) 169 - Store 464 463 - 466: 18(fvec3) Load 465(input.Normal) - 467: 103(ptr) AccessChain 460(input) 324 - Store 467 466 - 470: 20(fvec2) Load 469(input.UV) - 471: 110(ptr) AccessChain 460(input) 101 - Store 471 470 - 473: 18(fvec3) Load 472(input.Color) - 474: 103(ptr) AccessChain 460(input) 102 - Store 474 473 - 476: 18(fvec3) Load 475(input.instancePos) - 477: 103(ptr) AccessChain 460(input) 296 - Store 477 476 - 479: 18(fvec3) Load 478(input.instanceRot) - 480: 103(ptr) AccessChain 460(input) 134 - Store 480 479 - 483: 8(float) Load 482(input.instanceScale) - 484: 126(ptr) AccessChain 460(input) 361 - Store 484 483 - 487: 23(int) Load 486(input.instanceTexIndex) - 488: 117(ptr) AccessChain 460(input) 116 - Store 488 487 - 491: 27(VSInput) Load 460(input) - Store 490(param) 491 - 492:61(VSOutput) FunctionCall 78(@main(struct-VSInput-vf3-vf3-vf2-vf3-vf3-vf3-f1-i11;) 490(param) - Store 489(flattenTemp) 492 - 495: 321(ptr) AccessChain 489(flattenTemp) 169 - 496: 59(fvec4) Load 495 - Store 494(@entryPointOutput.Pos) 496 - 499: 103(ptr) AccessChain 489(flattenTemp) 324 - 500: 18(fvec3) Load 499 - Store 498(@entryPointOutput.Normal) 500 - 502: 103(ptr) AccessChain 489(flattenTemp) 101 - 503: 18(fvec3) Load 502 - Store 501(@entryPointOutput.Color) 503 - 505: 103(ptr) AccessChain 489(flattenTemp) 102 - 506: 18(fvec3) Load 505 - Store 504(@entryPointOutput.UV) 506 - 508: 103(ptr) AccessChain 489(flattenTemp) 296 - 509: 18(fvec3) Load 508 - Store 507(@entryPointOutput.ViewVec) 509 - 511: 103(ptr) AccessChain 489(flattenTemp) 134 - 512: 18(fvec3) Load 511 - Store 510(@entryPointOutput.LightVec) 512 + 465(input): 56(ptr) Variable Function +494(flattenTemp): 90(ptr) Variable Function + 495(param): 56(ptr) Variable Function + 468: 18(fvec3) Load 467(input.Pos) + 469: 105(ptr) AccessChain 465(input) 172 + Store 469 468 + 471: 18(fvec3) Load 470(input.Normal) + 472: 105(ptr) AccessChain 465(input) 329 + Store 472 471 + 475: 20(fvec2) Load 474(input.UV) + 476: 112(ptr) AccessChain 465(input) 103 + Store 476 475 + 478: 18(fvec3) Load 477(input.Color) + 479: 105(ptr) AccessChain 465(input) 104 + Store 479 478 + 481: 18(fvec3) Load 480(input.instancePos) + 482: 105(ptr) AccessChain 465(input) 307 + Store 482 481 + 484: 18(fvec3) Load 483(input.instanceRot) + 485: 105(ptr) AccessChain 465(input) 136 + Store 485 484 + 488: 8(float) Load 487(input.instanceScale) + 489: 128(ptr) AccessChain 465(input) 366 + Store 489 488 + 492: 23(int) Load 491(input.instanceTexIndex) + 493: 119(ptr) AccessChain 465(input) 118 + Store 493 492 + 496: 27(VSInput) Load 465(input) + Store 495(param) 496 + 497:61(VSOutput) FunctionCall 78(@main(struct-VSInput-vf3-vf3-vf2-vf3-vf3-vf3-f1-i11;) 495(param) + Store 494(flattenTemp) 497 + 500: 326(ptr) AccessChain 494(flattenTemp) 172 + 501: 59(fvec4) Load 500 + Store 499(@entryPointOutput.Pos) 501 + 504: 105(ptr) AccessChain 494(flattenTemp) 329 + 505: 18(fvec3) Load 504 + Store 503(@entryPointOutput.Normal) 505 + 507: 105(ptr) AccessChain 494(flattenTemp) 103 + 508: 18(fvec3) Load 507 + Store 506(@entryPointOutput.Color) 508 + 510: 105(ptr) AccessChain 494(flattenTemp) 104 + 511: 18(fvec3) Load 510 + Store 509(@entryPointOutput.UV) 511 + 513: 105(ptr) AccessChain 494(flattenTemp) 307 + 514: 18(fvec3) Load 513 + Store 512(@entryPointOutput.ViewVec) 514 + 516: 105(ptr) AccessChain 494(flattenTemp) 136 + 517: 18(fvec3) Load 516 + Store 515(@entryPointOutput.LightVec) 517 Return FunctionEnd 78(@main(struct-VSInput-vf3-vf3-vf2-vf3-vf3-vf3-f1-i11;):61(VSOutput) Function None 75 77(input): 56(ptr) FunctionParameter 79: Label - 91(output): 89(ptr) Variable Function - 128(s): 126(ptr) Variable Function - 176(c): 126(ptr) Variable Function - 192(mx): 190(ptr) Variable Function - 227(my): 190(ptr) Variable Function - 261(mz): 190(ptr) Variable Function - 281(rotMat): 190(ptr) Variable Function - 311(gRotMat): 309(ptr) Variable Function - 339(locPos): 321(ptr) Variable Function - 353(pos): 321(ptr) Variable Function - 419(lPos): 103(ptr) Variable Function + 92(output): 90(ptr) Variable Function + 130(s): 128(ptr) Variable Function + 179(c): 128(ptr) Variable Function + 195(mx): 193(ptr) Variable Function + 230(my): 193(ptr) Variable Function + 264(mz): 193(ptr) Variable Function + 284(rotMat): 193(ptr) Variable Function + 297(gRotMat): 295(ptr) Variable Function + 344(locPos): 326(ptr) Variable Function + 358(pos): 326(ptr) Variable Function + 424(lPos): 105(ptr) Variable Function 86: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 81 87: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 53 53 16 16 84: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 82 77(input) 85 88: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 81 78(@main(struct-VSInput-vf3-vf3-vf2-vf3-vf3-vf3-f1-i11;) - 96: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 94 94 16 16 - 95: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 92 91(output) 85 - Store 91(output) 100 - 106: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 107 107 16 16 - 105: 103(ptr) AccessChain 77(input) 102 - 108: 18(fvec3) Load 105 - 109: 103(ptr) AccessChain 91(output) 101 - Store 109 108 - 113: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 114 114 16 16 - 112: 110(ptr) AccessChain 77(input) 101 - 115: 20(fvec2) Load 112 - 119: 117(ptr) AccessChain 77(input) 116 - 120: 23(int) Load 119 - 121: 8(float) ConvertSToF 120 - 122: 8(float) CompositeExtract 115 0 - 123: 8(float) CompositeExtract 115 1 - 124: 18(fvec3) CompositeConstruct 122 123 121 - 125: 103(ptr) AccessChain 91(output) 102 - Store 125 124 - 133: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 131 131 16 16 - 132: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 129 128(s) 85 - 135: 126(ptr) AccessChain 77(input) 134 16 - 136: 8(float) Load 135 - 172: 170(ptr) AccessChain 166 169 102 - 173: 8(float) Load 172 - 174: 8(float) FAdd 136 173 - 175: 8(float) ExtInst 3(GLSL.std.450) 13(Sin) 174 - Store 128(s) 175 - 181: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 179 179 16 16 - 180: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 177 176(c) 85 - 182: 126(ptr) AccessChain 77(input) 134 16 - 183: 8(float) Load 182 - 184: 170(ptr) AccessChain 166 169 102 - 185: 8(float) Load 184 - 186: 8(float) FAdd 183 185 - 187: 8(float) ExtInst 3(GLSL.std.450) 14(Cos) 186 - Store 176(c) 187 - 197: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 195 195 16 16 - 196: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 193 192(mx) 85 - 198: 8(float) Load 176(c) - 199: 8(float) Load 128(s) - 200: 8(float) FNegate 199 - 202: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 203 203 16 16 - 201: 8(float) Load 128(s) - 204: 8(float) Load 176(c) - 207: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 195 195 16 16 - 206: 18(fvec3) CompositeConstruct 198 200 97 - 208: 18(fvec3) CompositeConstruct 201 204 97 - 209: 18(fvec3) CompositeConstruct 97 97 205 - 210: 188 CompositeConstruct 206 208 209 - Store 192(mx) 210 - 212: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 213 213 16 16 - 211: 126(ptr) AccessChain 77(input) 134 52 - 214: 8(float) Load 211 - 215: 170(ptr) AccessChain 166 169 102 - 216: 8(float) Load 215 - 217: 8(float) FAdd 214 216 - 218: 8(float) ExtInst 3(GLSL.std.450) 13(Sin) 217 - Store 128(s) 218 - 220: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 221 221 16 16 - 219: 126(ptr) AccessChain 77(input) 134 52 - 222: 8(float) Load 219 - 223: 170(ptr) AccessChain 166 169 102 - 224: 8(float) Load 223 - 225: 8(float) FAdd 222 224 - 226: 8(float) ExtInst 3(GLSL.std.450) 14(Cos) 225 - Store 176(c) 226 - 232: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 230 230 16 16 - 231: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 228 227(my) 85 - 233: 8(float) Load 176(c) - 234: 8(float) Load 128(s) - 235: 8(float) FNegate 234 - 237: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 238 238 16 16 - 236: 8(float) Load 128(s) - 239: 8(float) Load 176(c) - 241: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 230 230 16 16 - 240: 18(fvec3) CompositeConstruct 233 97 235 - 242: 18(fvec3) CompositeConstruct 97 205 97 - 243: 18(fvec3) CompositeConstruct 236 97 239 - 244: 188 CompositeConstruct 240 242 243 - Store 227(my) 244 - 246: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 247 247 16 16 - 245: 126(ptr) AccessChain 77(input) 134 21 - 248: 8(float) Load 245 - 249: 170(ptr) AccessChain 166 169 102 - 250: 8(float) Load 249 - 251: 8(float) FAdd 248 250 - 252: 8(float) ExtInst 3(GLSL.std.450) 13(Sin) 251 - Store 128(s) 252 - 254: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 255 255 16 16 - 253: 126(ptr) AccessChain 77(input) 134 21 - 256: 8(float) Load 253 - 257: 170(ptr) AccessChain 166 169 102 - 258: 8(float) Load 257 - 259: 8(float) FAdd 256 258 - 260: 8(float) ExtInst 3(GLSL.std.450) 14(Cos) 259 - Store 176(c) 260 - 266: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 264 264 16 16 - 265: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 262 261(mz) 85 - 268: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 269 269 16 16 - 267: 8(float) Load 176(c) - 270: 8(float) Load 128(s) - 271: 8(float) FNegate 270 - 273: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 274 274 16 16 - 272: 8(float) Load 128(s) - 275: 8(float) Load 176(c) - 277: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 264 264 16 16 - 276: 18(fvec3) CompositeConstruct 205 97 97 - 278: 18(fvec3) CompositeConstruct 97 267 271 - 279: 18(fvec3) CompositeConstruct 97 272 275 - 280: 188 CompositeConstruct 276 278 279 - Store 261(mz) 280 - 286: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 284 284 16 16 - 285: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 282 281(rotMat) 85 - 287: 188 Load 192(mx) - 288: 188 Load 227(my) - 289: 188 MatrixTimesMatrix 287 288 - 290: 188 Load 261(mz) - 291: 188 MatrixTimesMatrix 289 290 - Store 281(rotMat) 291 - 293: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 294 294 16 16 - 292: 126(ptr) AccessChain 77(input) 134 52 - 295: 8(float) Load 292 - 297: 170(ptr) AccessChain 166 169 296 - 298: 8(float) Load 297 - 299: 8(float) FAdd 295 298 - 300: 8(float) ExtInst 3(GLSL.std.450) 13(Sin) 299 - Store 128(s) 300 - 302: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 303 303 16 16 - 301: 126(ptr) AccessChain 77(input) 134 52 - 304: 8(float) Load 301 - 305: 170(ptr) AccessChain 166 169 296 - 306: 8(float) Load 305 - 307: 8(float) FAdd 304 306 - 308: 8(float) ExtInst 3(GLSL.std.450) 14(Cos) 307 - Store 176(c) 308 - 316: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 314 314 16 16 - 315: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 312 311(gRotMat) 85 - 317: 8(float) Load 176(c) - 318: 8(float) Load 128(s) - 319: 8(float) FNegate 318 - 320: 59(fvec4) CompositeConstruct 317 97 319 97 - 323: 321(ptr) AccessChain 311(gRotMat) 169 - Store 323 320 - 327: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 328 328 16 16 - 326: 321(ptr) AccessChain 311(gRotMat) 324 - Store 326 325 - 330: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 331 331 16 16 - 329: 8(float) Load 128(s) - 332: 8(float) Load 176(c) - 333: 59(fvec4) CompositeConstruct 329 97 332 97 - 334: 321(ptr) AccessChain 311(gRotMat) 101 - Store 334 333 - 337: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 338 338 16 16 - 336: 321(ptr) AccessChain 311(gRotMat) 102 - Store 336 335 - 344: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 342 342 16 16 - 343: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 340 339(locPos) 85 - 345: 103(ptr) AccessChain 77(input) 169 - 346: 18(fvec3) Load 345 - 347: 188 Load 281(rotMat) - 348: 18(fvec3) VectorTimesMatrix 346 347 - 349: 8(float) CompositeExtract 348 0 - 350: 8(float) CompositeExtract 348 1 - 351: 8(float) CompositeExtract 348 2 - 352: 59(fvec4) CompositeConstruct 349 350 351 205 - Store 339(locPos) 352 - 358: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 356 356 16 16 - 357: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 354 353(pos) 85 - 359: 59(fvec4) Load 339(locPos) - 360: 18(fvec3) VectorShuffle 359 359 0 1 2 - 362: 126(ptr) AccessChain 77(input) 361 - 363: 8(float) Load 362 - 364: 18(fvec3) VectorTimesScalar 360 363 - 365: 103(ptr) AccessChain 77(input) 296 - 366: 18(fvec3) Load 365 - 367: 18(fvec3) FAdd 364 366 - 368: 8(float) CompositeExtract 367 0 - 369: 8(float) CompositeExtract 367 1 - 370: 8(float) CompositeExtract 367 2 - 371: 59(fvec4) CompositeConstruct 368 369 370 205 - Store 353(pos) 371 - 373: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 374 374 16 16 - 372: 59(fvec4) Load 353(pos) - 375: 137 Load 311(gRotMat) - 376: 59(fvec4) VectorTimesMatrix 372 375 - 379: 377(ptr) AccessChain 166 169 324 - 380: 137 Load 379 - 381: 59(fvec4) VectorTimesMatrix 376 380 - 382: 377(ptr) AccessChain 166 169 169 - 383: 137 Load 382 - 384: 59(fvec4) VectorTimesMatrix 381 383 - 385: 321(ptr) AccessChain 91(output) 169 - Store 385 384 - 387: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 388 388 16 16 - 386: 103(ptr) AccessChain 77(input) 324 - 389: 18(fvec3) Load 386 - 390: 188 Load 281(rotMat) - 391: 18(fvec3) VectorTimesMatrix 389 390 - 392: 137 Load 311(gRotMat) - 393: 377(ptr) AccessChain 166 169 324 - 394: 137 Load 393 - 395: 137 MatrixTimesMatrix 392 394 - 396: 59(fvec4) CompositeExtract 395 0 - 397: 18(fvec3) VectorShuffle 396 396 0 1 2 - 398: 59(fvec4) CompositeExtract 395 1 - 399: 18(fvec3) VectorShuffle 398 398 0 1 2 - 400: 59(fvec4) CompositeExtract 395 2 - 401: 18(fvec3) VectorShuffle 400 400 0 1 2 - 402: 188 CompositeConstruct 397 399 401 - 403: 18(fvec3) VectorTimesMatrix 391 402 - 404: 103(ptr) AccessChain 91(output) 324 - Store 404 403 - 406: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 407 407 16 16 - 405: 103(ptr) AccessChain 77(input) 169 - 408: 18(fvec3) Load 405 - 409: 103(ptr) AccessChain 77(input) 296 - 410: 18(fvec3) Load 409 - 411: 18(fvec3) FAdd 408 410 - 412: 8(float) CompositeExtract 411 0 - 413: 8(float) CompositeExtract 411 1 - 414: 8(float) CompositeExtract 411 2 - 415: 59(fvec4) CompositeConstruct 412 413 414 205 - 416: 377(ptr) AccessChain 166 169 324 - 417: 137 Load 416 - 418: 59(fvec4) VectorTimesMatrix 415 417 - Store 353(pos) 418 - 424: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 422 422 16 16 - 423: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 420 419(lPos) 85 - 427: 425(ptr) AccessChain 166 169 101 - 428: 59(fvec4) Load 427 - 429: 18(fvec3) VectorShuffle 428 428 0 1 2 - 430: 377(ptr) AccessChain 166 169 324 - 431: 137 Load 430 - 432: 59(fvec4) CompositeExtract 431 0 - 433: 18(fvec3) VectorShuffle 432 432 0 1 2 - 434: 59(fvec4) CompositeExtract 431 1 - 435: 18(fvec3) VectorShuffle 434 434 0 1 2 - 436: 59(fvec4) CompositeExtract 431 2 - 437: 18(fvec3) VectorShuffle 436 436 0 1 2 - 438: 188 CompositeConstruct 433 435 437 - 439: 18(fvec3) VectorTimesMatrix 429 438 - Store 419(lPos) 439 - 441: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 442 442 16 16 - 440: 18(fvec3) Load 419(lPos) - 443: 59(fvec4) Load 353(pos) - 444: 18(fvec3) VectorShuffle 443 443 0 1 2 - 445: 18(fvec3) FSub 440 444 - 446: 103(ptr) AccessChain 91(output) 134 - Store 446 445 - 448: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 449 449 16 16 - 447: 59(fvec4) Load 353(pos) - 450: 18(fvec3) VectorShuffle 447 447 0 1 2 - 451: 18(fvec3) FNegate 450 - 452: 103(ptr) AccessChain 91(output) 296 - Store 452 451 - 454: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 455 455 16 16 - 453:61(VSOutput) Load 91(output) - ReturnValue 453 + 97: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 89 + 98: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 95 95 16 16 + 96: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 93 92(output) 85 + Store 92(output) 102 + 108: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 109 109 16 16 + 107: 105(ptr) AccessChain 77(input) 104 + 110: 18(fvec3) Load 107 + 111: 105(ptr) AccessChain 92(output) 103 + Store 111 110 + 115: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 116 116 16 16 + 114: 112(ptr) AccessChain 77(input) 103 + 117: 20(fvec2) Load 114 + 121: 119(ptr) AccessChain 77(input) 118 + 122: 23(int) Load 121 + 123: 8(float) ConvertSToF 122 + 124: 8(float) CompositeExtract 117 0 + 125: 8(float) CompositeExtract 117 1 + 126: 18(fvec3) CompositeConstruct 124 125 123 + 127: 105(ptr) AccessChain 92(output) 104 + Store 127 126 + 135: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 133 133 16 16 + 134: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 131 130(s) 85 + 137: 128(ptr) AccessChain 77(input) 136 16 + 138: 8(float) Load 137 + 175: 173(ptr) AccessChain 168 172 104 + 176: 8(float) Load 175 + 177: 8(float) FAdd 138 176 + 178: 8(float) ExtInst 3(GLSL.std.450) 13(Sin) 177 + Store 130(s) 178 + 184: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 182 182 16 16 + 183: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 180 179(c) 85 + 185: 128(ptr) AccessChain 77(input) 136 16 + 186: 8(float) Load 185 + 187: 173(ptr) AccessChain 168 172 104 + 188: 8(float) Load 187 + 189: 8(float) FAdd 186 188 + 190: 8(float) ExtInst 3(GLSL.std.450) 14(Cos) 189 + Store 179(c) 190 + 200: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 198 198 16 16 + 199: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 196 195(mx) 85 + 201: 8(float) Load 179(c) + 202: 8(float) Load 130(s) + 203: 8(float) FNegate 202 + 205: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 206 206 16 16 + 204: 8(float) Load 130(s) + 207: 8(float) Load 179(c) + 210: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 198 198 16 16 + 209: 18(fvec3) CompositeConstruct 201 203 99 + 211: 18(fvec3) CompositeConstruct 204 207 99 + 212: 18(fvec3) CompositeConstruct 99 99 208 + 213: 191 CompositeConstruct 209 211 212 + Store 195(mx) 213 + 215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 216 216 16 16 + 214: 128(ptr) AccessChain 77(input) 136 52 + 217: 8(float) Load 214 + 218: 173(ptr) AccessChain 168 172 104 + 219: 8(float) Load 218 + 220: 8(float) FAdd 217 219 + 221: 8(float) ExtInst 3(GLSL.std.450) 13(Sin) 220 + Store 130(s) 221 + 223: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 224 224 16 16 + 222: 128(ptr) AccessChain 77(input) 136 52 + 225: 8(float) Load 222 + 226: 173(ptr) AccessChain 168 172 104 + 227: 8(float) Load 226 + 228: 8(float) FAdd 225 227 + 229: 8(float) ExtInst 3(GLSL.std.450) 14(Cos) 228 + Store 179(c) 229 + 235: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 233 233 16 16 + 234: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 231 230(my) 85 + 236: 8(float) Load 179(c) + 237: 8(float) Load 130(s) + 238: 8(float) FNegate 237 + 240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 241 241 16 16 + 239: 8(float) Load 130(s) + 242: 8(float) Load 179(c) + 244: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 233 233 16 16 + 243: 18(fvec3) CompositeConstruct 236 99 238 + 245: 18(fvec3) CompositeConstruct 99 208 99 + 246: 18(fvec3) CompositeConstruct 239 99 242 + 247: 191 CompositeConstruct 243 245 246 + Store 230(my) 247 + 249: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 250 250 16 16 + 248: 128(ptr) AccessChain 77(input) 136 21 + 251: 8(float) Load 248 + 252: 173(ptr) AccessChain 168 172 104 + 253: 8(float) Load 252 + 254: 8(float) FAdd 251 253 + 255: 8(float) ExtInst 3(GLSL.std.450) 13(Sin) 254 + Store 130(s) 255 + 257: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 258 258 16 16 + 256: 128(ptr) AccessChain 77(input) 136 21 + 259: 8(float) Load 256 + 260: 173(ptr) AccessChain 168 172 104 + 261: 8(float) Load 260 + 262: 8(float) FAdd 259 261 + 263: 8(float) ExtInst 3(GLSL.std.450) 14(Cos) 262 + Store 179(c) 263 + 269: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 267 267 16 16 + 268: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 265 264(mz) 85 + 271: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 272 272 16 16 + 270: 8(float) Load 179(c) + 273: 8(float) Load 130(s) + 274: 8(float) FNegate 273 + 276: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 277 277 16 16 + 275: 8(float) Load 130(s) + 278: 8(float) Load 179(c) + 280: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 267 267 16 16 + 279: 18(fvec3) CompositeConstruct 208 99 99 + 281: 18(fvec3) CompositeConstruct 99 270 274 + 282: 18(fvec3) CompositeConstruct 99 275 278 + 283: 191 CompositeConstruct 279 281 282 + Store 264(mz) 283 + 289: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 287 287 16 16 + 288: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 285 284(rotMat) 85 + 290: 191 Load 195(mx) + 291: 191 Load 230(my) + 292: 191 MatrixTimesMatrix 290 291 + 293: 191 Load 264(mz) + 294: 191 MatrixTimesMatrix 292 293 + Store 284(rotMat) 294 + 302: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 300 300 16 16 + 301: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 298 297(gRotMat) 85 + 304: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 305 305 16 16 + 303: 128(ptr) AccessChain 77(input) 136 52 + 306: 8(float) Load 303 + 308: 173(ptr) AccessChain 168 172 307 + 309: 8(float) Load 308 + 310: 8(float) FAdd 306 309 + 311: 8(float) ExtInst 3(GLSL.std.450) 13(Sin) 310 + Store 130(s) 311 + 313: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 314 314 16 16 + 312: 128(ptr) AccessChain 77(input) 136 52 + 315: 8(float) Load 312 + 316: 173(ptr) AccessChain 168 172 307 + 317: 8(float) Load 316 + 318: 8(float) FAdd 315 317 + 319: 8(float) ExtInst 3(GLSL.std.450) 14(Cos) 318 + Store 179(c) 319 + 321: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 322 322 16 16 + 320: 8(float) Load 179(c) + 323: 8(float) Load 130(s) + 324: 8(float) FNegate 323 + 325: 59(fvec4) CompositeConstruct 320 99 324 99 + 328: 326(ptr) AccessChain 297(gRotMat) 172 + Store 328 325 + 332: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 333 333 16 16 + 331: 326(ptr) AccessChain 297(gRotMat) 329 + Store 331 330 + 335: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 336 336 16 16 + 334: 8(float) Load 130(s) + 337: 8(float) Load 179(c) + 338: 59(fvec4) CompositeConstruct 334 99 337 99 + 339: 326(ptr) AccessChain 297(gRotMat) 103 + Store 339 338 + 342: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 343 343 16 16 + 341: 326(ptr) AccessChain 297(gRotMat) 104 + Store 341 340 + 349: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 347 347 16 16 + 348: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 345 344(locPos) 85 + 350: 105(ptr) AccessChain 77(input) 172 + 351: 18(fvec3) Load 350 + 352: 191 Load 284(rotMat) + 353: 18(fvec3) VectorTimesMatrix 351 352 + 354: 8(float) CompositeExtract 353 0 + 355: 8(float) CompositeExtract 353 1 + 356: 8(float) CompositeExtract 353 2 + 357: 59(fvec4) CompositeConstruct 354 355 356 208 + Store 344(locPos) 357 + 363: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 361 361 16 16 + 362: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 359 358(pos) 85 + 364: 59(fvec4) Load 344(locPos) + 365: 18(fvec3) VectorShuffle 364 364 0 1 2 + 367: 128(ptr) AccessChain 77(input) 366 + 368: 8(float) Load 367 + 369: 18(fvec3) VectorTimesScalar 365 368 + 370: 105(ptr) AccessChain 77(input) 307 + 371: 18(fvec3) Load 370 + 372: 18(fvec3) FAdd 369 371 + 373: 8(float) CompositeExtract 372 0 + 374: 8(float) CompositeExtract 372 1 + 375: 8(float) CompositeExtract 372 2 + 376: 59(fvec4) CompositeConstruct 373 374 375 208 + Store 358(pos) 376 + 378: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 379 379 16 16 + 377: 59(fvec4) Load 358(pos) + 380: 139 Load 297(gRotMat) + 381: 59(fvec4) VectorTimesMatrix 377 380 + 384: 382(ptr) AccessChain 168 172 329 + 385: 139 Load 384 + 386: 59(fvec4) VectorTimesMatrix 381 385 + 387: 382(ptr) AccessChain 168 172 172 + 388: 139 Load 387 + 389: 59(fvec4) VectorTimesMatrix 386 388 + 390: 326(ptr) AccessChain 92(output) 172 + Store 390 389 + 392: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 393 393 16 16 + 391: 105(ptr) AccessChain 77(input) 329 + 394: 18(fvec3) Load 391 + 395: 191 Load 284(rotMat) + 396: 18(fvec3) VectorTimesMatrix 394 395 + 397: 139 Load 297(gRotMat) + 398: 382(ptr) AccessChain 168 172 329 + 399: 139 Load 398 + 400: 139 MatrixTimesMatrix 397 399 + 401: 59(fvec4) CompositeExtract 400 0 + 402: 18(fvec3) VectorShuffle 401 401 0 1 2 + 403: 59(fvec4) CompositeExtract 400 1 + 404: 18(fvec3) VectorShuffle 403 403 0 1 2 + 405: 59(fvec4) CompositeExtract 400 2 + 406: 18(fvec3) VectorShuffle 405 405 0 1 2 + 407: 191 CompositeConstruct 402 404 406 + 408: 18(fvec3) VectorTimesMatrix 396 407 + 409: 105(ptr) AccessChain 92(output) 329 + Store 409 408 + 411: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 412 412 16 16 + 410: 105(ptr) AccessChain 77(input) 172 + 413: 18(fvec3) Load 410 + 414: 105(ptr) AccessChain 77(input) 307 + 415: 18(fvec3) Load 414 + 416: 18(fvec3) FAdd 413 415 + 417: 8(float) CompositeExtract 416 0 + 418: 8(float) CompositeExtract 416 1 + 419: 8(float) CompositeExtract 416 2 + 420: 59(fvec4) CompositeConstruct 417 418 419 208 + 421: 382(ptr) AccessChain 168 172 329 + 422: 139 Load 421 + 423: 59(fvec4) VectorTimesMatrix 420 422 + Store 358(pos) 423 + 429: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 427 427 16 16 + 428: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 425 424(lPos) 85 + 432: 430(ptr) AccessChain 168 172 103 + 433: 59(fvec4) Load 432 + 434: 18(fvec3) VectorShuffle 433 433 0 1 2 + 435: 382(ptr) AccessChain 168 172 329 + 436: 139 Load 435 + 437: 59(fvec4) CompositeExtract 436 0 + 438: 18(fvec3) VectorShuffle 437 437 0 1 2 + 439: 59(fvec4) CompositeExtract 436 1 + 440: 18(fvec3) VectorShuffle 439 439 0 1 2 + 441: 59(fvec4) CompositeExtract 436 2 + 442: 18(fvec3) VectorShuffle 441 441 0 1 2 + 443: 191 CompositeConstruct 438 440 442 + 444: 18(fvec3) VectorTimesMatrix 434 443 + Store 424(lPos) 444 + 446: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 447 447 16 16 + 445: 18(fvec3) Load 424(lPos) + 448: 59(fvec4) Load 358(pos) + 449: 18(fvec3) VectorShuffle 448 448 0 1 2 + 450: 18(fvec3) FSub 445 449 + 451: 105(ptr) AccessChain 92(output) 136 + Store 451 450 + 453: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 454 454 16 16 + 452: 59(fvec4) Load 358(pos) + 455: 18(fvec3) VectorShuffle 452 452 0 1 2 + 456: 18(fvec3) FNegate 455 + 457: 105(ptr) AccessChain 92(output) 307 + Store 457 456 + 459: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 460 460 16 16 + 458:61(VSOutput) Load 92(output) + ReturnValue 458 FunctionEnd diff --git a/Test/baseResults/spv.debuginfo.implicit_br.glsl.frag.out b/Test/baseResults/spv.debuginfo.implicit_br.glsl.frag.out index 8b2af8e8..7a3ef975 100644 --- a/Test/baseResults/spv.debuginfo.implicit_br.glsl.frag.out +++ b/Test/baseResults/spv.debuginfo.implicit_br.glsl.frag.out @@ -1,14 +1,14 @@ spv.debuginfo.implicit_br.glsl.frag // Module Version 10000 // Generated by (magic number): 8000b -// Id's are bound by 194 +// Id's are bound by 204 Capability Shader Extension "SPV_KHR_non_semantic_info" 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" 3: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 - EntryPoint Fragment 14 "main" 186 + EntryPoint Fragment 14 "main" 196 ExecutionMode 14 OriginUpperLeft 2: String "spv.debuginfo.implicit_br.glsl.frag" 8: String "uint" @@ -88,7 +88,7 @@ void main() { 50: String "int" 56: String "counter" 65: String "bool" - 188: String "outx" + 198: String "outx" Name 14 "main" Name 16 "test_if(" Name 26 "test_ifelse(" @@ -96,8 +96,8 @@ void main() { Name 36 "test_if_compound2(" Name 41 "test_switch(" Name 54 "counter" - Name 186 "outx" - Decorate 186(outx) Location 0 + Name 196 "outx" + Decorate 196(outx) Location 0 4: TypeVoid 5: TypeFunction 4 7: TypeInt 32 0 @@ -134,55 +134,65 @@ void main() { 64: TypeBool 66: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 65 10 25 12 67: 64(bool) ConstantFalse - 70: 49(int) Constant 1 - 77: 7(int) Constant 10 + 71: 7(int) Constant 17 + 70: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 20 57 71 19 + 72: 49(int) Constant 1 + 79: 7(int) Constant 10 86: 7(int) Constant 14 - 89: 49(int) Constant 2 - 93: 7(int) Constant 17 - 97: 7(int) Constant 19 - 110: 7(int) Constant 24 - 114: 7(int) Constant 27 - 131: 7(int) Constant 35 - 135: 7(int) Constant 37 - 146: 7(int) Constant 42 - 151: 7(int) Constant 45 - 154: 7(int) Constant 46 - 156: 49(int) Constant 3 - 160: 7(int) Constant 48 - 165: 7(int) Constant 51 - 171: 7(int) Constant 54 - 174: 7(int) Constant 55 - 177: 7(int) Constant 56 - 180: 7(int) Constant 57 - 183: 7(int) Constant 58 - 184: TypePointer Output 49(int) - 185: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 51 13 12 - 186(outx): 184(ptr) Variable Output - 189: 7(int) Constant 59 - 187: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 188 51 20 189 12 22 188 186(outx) 57 - 193: 7(int) Constant 60 + 85: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 20 86 71 29 + 92: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 20 71 71 29 + 93: 49(int) Constant 2 + 100: 7(int) Constant 19 + 107: 7(int) Constant 23 + 108: 7(int) Constant 9 + 106: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 20 107 108 34 + 114: 7(int) Constant 24 + 113: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 20 114 35 106 + 121: 7(int) Constant 27 + 128: 7(int) Constant 31 + 127: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 20 128 108 39 + 133: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 20 10 35 127 + 141: 7(int) Constant 35 + 145: 7(int) Constant 37 + 156: 7(int) Constant 42 + 161: 7(int) Constant 45 + 164: 7(int) Constant 46 + 166: 49(int) Constant 3 + 170: 7(int) Constant 48 + 175: 7(int) Constant 51 + 181: 7(int) Constant 54 + 184: 7(int) Constant 55 + 187: 7(int) Constant 56 + 190: 7(int) Constant 57 + 193: 7(int) Constant 58 + 194: TypePointer Output 49(int) + 195: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 51 13 12 + 196(outx): 194(ptr) Variable Output + 199: 7(int) Constant 59 + 197: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 198 51 20 199 12 22 198 196(outx) 57 + 203: 7(int) Constant 60 14(main): 4 Function None 5 15: Label 59: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 22 60: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 24 24 12 12 Store 54(counter) 58 - 167: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 47 - 168: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 48 48 12 12 - 166: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 47 14(main) - 170: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 171 171 12 12 - 169: 4 FunctionCall 16(test_if() - 173: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 174 174 12 12 - 172: 4 FunctionCall 26(test_ifelse() - 176: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 177 177 12 12 - 175: 4 FunctionCall 31(test_if_compound() - 179: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 180 180 12 12 - 178: 4 FunctionCall 36(test_if_compound2() - 182: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 183 183 12 12 - 181: 4 FunctionCall 41(test_switch() - 191: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 189 189 12 12 - 190: 49(int) Load 54(counter) - Store 186(outx) 190 + 177: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 47 + 178: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 48 48 12 12 + 176: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 47 14(main) + 180: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 181 181 12 12 + 179: 4 FunctionCall 16(test_if() + 183: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 184 184 12 12 + 182: 4 FunctionCall 26(test_ifelse() + 186: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 187 187 12 12 + 185: 4 FunctionCall 31(test_if_compound() + 189: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 190 190 12 12 + 188: 4 FunctionCall 36(test_if_compound2() 192: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 193 193 12 12 + 191: 4 FunctionCall 41(test_switch() + 201: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 199 199 12 12 + 200: 49(int) Load 54(counter) + Store 196(outx) 200 + 202: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 203 203 12 12 Return FunctionEnd 16(test_if(): 4 Function None 5 @@ -193,133 +203,133 @@ void main() { SelectionMerge 69 None BranchConditional 67 68 69 68: Label - 72: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 19 - 73: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 57 57 12 12 - 71: 49(int) Load 54(counter) - 74: 49(int) IAdd 71 70 - Store 54(counter) 74 + 74: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 70 + 75: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 57 57 12 12 + 73: 49(int) Load 54(counter) + 76: 49(int) IAdd 73 72 + Store 54(counter) 76 Branch 69 69: Label - 75: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 19 - 76: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 77 77 12 12 + 77: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 19 + 78: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 79 79 12 12 Return FunctionEnd 26(test_ifelse(): 4 Function None 5 27: Label - 79: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 29 - 80: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 30 30 12 12 - 78: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 29 26(test_ifelse() - SelectionMerge 82 None - BranchConditional 67 81 88 - 81: Label - 84: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 29 - 85: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 86 86 12 12 - 83: 49(int) Load 54(counter) - 87: 49(int) IAdd 83 70 - Store 54(counter) 87 - Branch 82 - 88: Label - 91: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 29 - 92: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 93 93 12 12 - 90: 49(int) Load 54(counter) - 94: 49(int) IAdd 90 89 - Store 54(counter) 94 - Branch 82 - 82: Label - 95: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 29 - 96: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 97 97 12 12 + 81: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 29 + 82: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 30 30 12 12 + 80: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 29 26(test_ifelse() + SelectionMerge 84 None + BranchConditional 67 83 91 + 83: Label + 88: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 85 + 89: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 86 86 12 12 + 87: 49(int) Load 54(counter) + 90: 49(int) IAdd 87 72 + Store 54(counter) 90 + Branch 84 + 91: Label + 95: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 92 + 96: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 71 71 12 12 + 94: 49(int) Load 54(counter) + 97: 49(int) IAdd 94 93 + Store 54(counter) 97 + Branch 84 + 84: Label + 98: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 29 + 99: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 100 100 12 12 Return FunctionEnd 31(test_if_compound(): 4 Function None 5 32: Label - 99: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34 - 100: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 35 35 12 12 - 98: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 34 31(test_if_compound() - SelectionMerge 102 None - BranchConditional 67 101 102 - 101: Label - 105: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34 - 106: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 35 35 12 12 - SelectionMerge 104 None - BranchConditional 67 103 104 - 103: Label - 108: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34 - 109: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 110 110 12 12 - 107: 49(int) Load 54(counter) - 111: 49(int) IAdd 107 70 - Store 54(counter) 111 - Branch 104 + 102: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34 + 103: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 35 35 12 12 + 101: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 34 31(test_if_compound() + SelectionMerge 105 None + BranchConditional 67 104 105 104: Label - Branch 102 - 102: Label - 112: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34 - 113: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 114 114 12 12 + 111: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 106 + 112: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 35 35 12 12 + SelectionMerge 110 None + BranchConditional 67 109 110 + 109: Label + 116: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 113 + 117: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 114 114 12 12 + 115: 49(int) Load 54(counter) + 118: 49(int) IAdd 115 72 + Store 54(counter) 118 + Branch 110 + 110: Label + Branch 105 + 105: Label + 119: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 34 + 120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 121 121 12 12 Return FunctionEnd 36(test_if_compound2(): 4 Function None 5 37: Label - 116: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 39 - 117: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 40 40 12 12 - 115: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 39 36(test_if_compound2() - SelectionMerge 119 None - BranchConditional 67 118 119 - 118: Label - 122: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 39 - 123: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 40 40 12 12 - SelectionMerge 121 None - BranchConditional 67 120 121 - 120: Label - 125: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 39 - 126: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 10 10 12 12 - 124: 49(int) Load 54(counter) - 127: 49(int) IAdd 124 70 - Store 54(counter) 127 - Branch 121 - 121: Label - 129: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 39 - 130: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 131 131 12 12 - 128: 49(int) Load 54(counter) - 132: 49(int) IAdd 128 89 - Store 54(counter) 132 - Branch 119 - 119: Label - 133: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 39 - 134: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 135 135 12 12 + 123: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 39 + 124: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 40 40 12 12 + 122: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 39 36(test_if_compound2() + SelectionMerge 126 None + BranchConditional 67 125 126 + 125: Label + 131: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 127 + 132: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 40 40 12 12 + SelectionMerge 130 None + BranchConditional 67 129 130 + 129: Label + 135: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 133 + 136: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 10 10 12 12 + 134: 49(int) Load 54(counter) + 137: 49(int) IAdd 134 72 + Store 54(counter) 137 + Branch 130 + 130: Label + 139: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 127 + 140: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 141 141 12 12 + 138: 49(int) Load 54(counter) + 142: 49(int) IAdd 138 93 + Store 54(counter) 142 + Branch 126 + 126: Label + 143: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 39 + 144: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 145 145 12 12 Return FunctionEnd 41(test_switch(): 4 Function None 5 42: Label - 137: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 44 - 138: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 45 45 12 12 - 136: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 44 41(test_switch() - SelectionMerge 142 None - Switch 58 141 - case 0: 139 - case 1: 140 - 141: Label - 158: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 44 - 159: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 160 160 12 12 - 157: 49(int) Load 54(counter) - 161: 49(int) IAdd 157 156 - Store 54(counter) 161 - Branch 142 - 139: Label - 144: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 44 - 145: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 146 146 12 12 - 143: 49(int) Load 54(counter) - 147: 49(int) IAdd 143 70 - Store 54(counter) 147 - Branch 140 - 140: Label - 149: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 44 - 150: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 151 151 12 12 - 148: 49(int) Load 54(counter) - 152: 49(int) IAdd 148 89 - Store 54(counter) 152 - 153: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 154 154 12 12 - Branch 142 - 142: Label - 163: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 44 - 164: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 165 165 12 12 + 147: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 44 + 148: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 45 45 12 12 + 146: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 44 41(test_switch() + SelectionMerge 152 None + Switch 58 151 + case 0: 149 + case 1: 150 + 151: Label + 168: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 44 + 169: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 170 170 12 12 + 167: 49(int) Load 54(counter) + 171: 49(int) IAdd 167 166 + Store 54(counter) 171 + Branch 152 + 149: Label + 154: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 44 + 155: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 156 156 12 12 + 153: 49(int) Load 54(counter) + 157: 49(int) IAdd 153 72 + Store 54(counter) 157 + Branch 150 + 150: Label + 159: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 44 + 160: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 161 161 12 12 + 158: 49(int) Load 54(counter) + 162: 49(int) IAdd 158 93 + Store 54(counter) 162 + 163: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 164 164 12 12 + Branch 152 + 152: Label + 173: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 44 + 174: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 20 175 175 12 12 Return FunctionEnd diff --git a/Test/baseResults/spv.debuginfo.rt_types.glsl.rgen.out b/Test/baseResults/spv.debuginfo.rt_types.glsl.rgen.out index 02e5280b..04384097 100644 --- a/Test/baseResults/spv.debuginfo.rt_types.glsl.rgen.out +++ b/Test/baseResults/spv.debuginfo.rt_types.glsl.rgen.out @@ -1,7 +1,7 @@ spv.debuginfo.rt_types.glsl.rgen // Module Version 10000 // Generated by (magic number): 8000b -// Id's are bound by 125 +// Id's are bound by 127 Capability RayQueryKHR Capability RayTracingNV @@ -147,8 +147,10 @@ void main() 110: TypeBool 112: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 111 10 24 12 115: 7(int) Constant 19 - 121: 7(int) Constant 21 - 124: 7(int) Constant 23 + 120: 7(int) Constant 21 + 121: 7(int) Constant 30 + 119: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 18 120 121 17 + 126: 7(int) Constant 23 14(main): 4 Function None 5 15: Label 31(rayFlags): 28(ptr) Variable Function @@ -182,12 +184,12 @@ void main() SelectionMerge 118 None BranchConditional 116 117 118 117: Label - 119: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 17 - 120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 121 121 12 12 + 122: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 119 + 123: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 120 120 12 12 RayQueryTerminateKHR 66(localRayQuery) Branch 118 118: Label - 122: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 17 - 123: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 124 124 12 12 + 124: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 17 + 125: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 126 126 12 12 Return FunctionEnd diff --git a/gtests/Hlsl.FromFile.cpp b/gtests/Hlsl.FromFile.cpp index 053793df..315ccdac 100644 --- a/gtests/Hlsl.FromFile.cpp +++ b/gtests/Hlsl.FromFile.cpp @@ -149,7 +149,7 @@ TEST_P(HlslNonSemanticShaderDebugInfoTest, FromFile) { loadFileCompileAndCheck(GlobalTestSettings.testRoot, GetParam().fileName, Source::HLSL, Semantics::Vulkan, glslang::EShTargetVulkan_1_0, glslang::EShTargetSpv_1_0, - Target::Spv, true, GetParam().entryPoint, "/baseResults/", false, false, true); + Target::Spv, true, GetParam().entryPoint, "/baseResults/", false, true, true); } // clang-format off diff --git a/gtests/TestFixture.h b/gtests/TestFixture.h index ab548f56..68bb3c6a 100644 --- a/gtests/TestFixture.h +++ b/gtests/TestFixture.h @@ -262,6 +262,14 @@ public: shader.setAutoMapLocations(true); shader.setAutoMapBindings(true); } + + if (enableDebug) { + shader.setDebugInfo(true); + } + if (enableNonSemanticShaderDebugInfo) { + assert(enableDebug && "Debug must be on for non-semantic debug info"); + } + shader.setTextureSamplerTransformMode(texSampTransMode); #ifdef ENABLE_HLSL shader.setFlattenUniformArrays(flattenUniformArrays);