spv.debuginfo.glsl.tese // Module Version 10000 // Generated by (magic number): 8000b // Id's are bound by 370 Capability Tessellation Extension "SPV_KHR_non_semantic_info" 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" 3: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint TessellationEvaluation 14 "main" 95 103 109 115 119 123 127 131 160 256 323 ExecutionMode 14 Quads ExecutionMode 14 SpacingEqual ExecutionMode 14 VertexOrderCw 2: String "spv.debuginfo.glsl.tese" 8: String "uint" 16: String "main" 19: String "/* The MIT License (MIT) Copyright (c) 2022 Sascha Willems Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ #version 450 layout (set = 0, binding = 0) uniform UBO { mat4 projection; mat4 modelview; vec4 lightPos; vec4 frustumPlanes[6]; float displacementFactor; float tessellationFactor; vec2 viewportDim; float tessellatedEdgeSize; } ubo; layout (set = 0, binding = 1) uniform sampler2D displacementMap; layout(quads, equal_spacing, cw) in; layout (location = 0) in vec3 inNormal[]; layout (location = 1) in vec2 inUV[]; layout (location = 0) out vec3 outNormal; layout (location = 1) out vec2 outUV; layout (location = 2) out vec3 outViewVec; layout (location = 3) out vec3 outLightVec; layout (location = 4) out vec3 outEyePos; layout (location = 5) out vec3 outWorldPos; void main() { // Interpolate UV coordinates vec2 uv1 = mix(inUV[0], inUV[1], gl_TessCoord.x); vec2 uv2 = mix(inUV[3], inUV[2], gl_TessCoord.x); outUV = mix(uv1, uv2, gl_TessCoord.y); vec3 n1 = mix(inNormal[0], inNormal[1], gl_TessCoord.x); vec3 n2 = mix(inNormal[3], inNormal[2], gl_TessCoord.x); outNormal = mix(n1, n2, gl_TessCoord.y); // Interpolate positions vec4 pos1 = mix(gl_in[0].gl_Position, gl_in[1].gl_Position, gl_TessCoord.x); vec4 pos2 = mix(gl_in[3].gl_Position, gl_in[2].gl_Position, gl_TessCoord.x); vec4 pos = mix(pos1, pos2, gl_TessCoord.y); // Displace pos.y -= textureLod(displacementMap, outUV, 0.0).r * ubo.displacementFactor; // Perspective projection gl_Position = ubo.projection * ubo.modelview * pos; // Calculate vectors for lighting based on tessellated position outViewVec = -pos.xyz; outLightVec = normalize(ubo.lightPos.xyz + outViewVec); outWorldPos = pos.xyz; outEyePos = vec3(ubo.modelview * pos); } " 26: String "float" 33: String "bool" 42: String "projection" 46: String "modelview" 49: String "lightPos" 52: String "frustumPlanes" 54: String "displacementFactor" 58: String "tessellationFactor" 61: String "viewportDim" 64: String "tessellatedEdgeSize" 67: String "UBO" 73: String "ubo" 76: String "texture2D" 78: String "@texture2D" 82: String "sampler2D" 83: String "@sampler2D" 88: String "displacementMap" 97: String "inNormal" 105: String "inUV" 111: String "outNormal" 117: String "outUV" 121: String "outViewVec" 125: String "outLightVec" 129: String "outEyePos" 133: String "outWorldPos" 142: String "uv1" 148: String "int" 162: String "gl_TessCoord" 171: String "uv2" 197: String "n1" 211: String "n2" 235: String "pos1" 243: String "gl_Position" 245: String "gl_PointSize" 247: String "gl_ClipDistance" 249: String "gl_CullDistance" 251: String "gl_PerVertex" 258: String "gl_in" 271: String "pos2" 285: String "pos" 325: String "" Name 14 "main" Name 40 "UBO" MemberName 40(UBO) 0 "projection" MemberName 40(UBO) 1 "modelview" MemberName 40(UBO) 2 "lightPos" MemberName 40(UBO) 3 "frustumPlanes" MemberName 40(UBO) 4 "displacementFactor" MemberName 40(UBO) 5 "tessellationFactor" MemberName 40(UBO) 6 "viewportDim" MemberName 40(UBO) 7 "tessellatedEdgeSize" Name 71 "ubo" Name 86 "displacementMap" Name 95 "inNormal" Name 103 "inUV" Name 109 "outNormal" Name 115 "outUV" Name 119 "outViewVec" Name 123 "outLightVec" Name 127 "outEyePos" Name 131 "outWorldPos" Name 140 "uv1" Name 160 "gl_TessCoord" Name 169 "uv2" Name 195 "n1" Name 209 "n2" Name 233 "pos1" Name 241 "gl_PerVertex" MemberName 241(gl_PerVertex) 0 "gl_Position" MemberName 241(gl_PerVertex) 1 "gl_PointSize" MemberName 241(gl_PerVertex) 2 "gl_ClipDistance" MemberName 241(gl_PerVertex) 3 "gl_CullDistance" Name 256 "gl_in" Name 269 "pos2" Name 283 "pos" Name 314 "gl_PerVertex" MemberName 314(gl_PerVertex) 0 "gl_Position" MemberName 314(gl_PerVertex) 1 "gl_PointSize" MemberName 314(gl_PerVertex) 2 "gl_ClipDistance" MemberName 314(gl_PerVertex) 3 "gl_CullDistance" Name 323 "" Decorate 36 ArrayStride 16 Decorate 40(UBO) Block MemberDecorate 40(UBO) 0 ColMajor MemberDecorate 40(UBO) 0 MatrixStride 16 MemberDecorate 40(UBO) 0 Offset 0 MemberDecorate 40(UBO) 1 ColMajor MemberDecorate 40(UBO) 1 MatrixStride 16 MemberDecorate 40(UBO) 1 Offset 64 MemberDecorate 40(UBO) 2 Offset 128 MemberDecorate 40(UBO) 3 Offset 144 MemberDecorate 40(UBO) 4 Offset 240 MemberDecorate 40(UBO) 5 Offset 244 MemberDecorate 40(UBO) 6 Offset 248 MemberDecorate 40(UBO) 7 Offset 256 Decorate 71(ubo) Binding 0 Decorate 71(ubo) DescriptorSet 0 Decorate 86(displacementMap) Binding 1 Decorate 86(displacementMap) DescriptorSet 0 Decorate 95(inNormal) Location 0 Decorate 103(inUV) Location 1 Decorate 109(outNormal) Location 0 Decorate 115(outUV) Location 1 Decorate 119(outViewVec) Location 2 Decorate 123(outLightVec) Location 3 Decorate 127(outEyePos) Location 4 Decorate 131(outWorldPos) Location 5 Decorate 160(gl_TessCoord) BuiltIn TessCoord Decorate 241(gl_PerVertex) Block MemberDecorate 241(gl_PerVertex) 0 BuiltIn Position MemberDecorate 241(gl_PerVertex) 1 BuiltIn PointSize MemberDecorate 241(gl_PerVertex) 2 BuiltIn ClipDistance MemberDecorate 241(gl_PerVertex) 3 BuiltIn CullDistance Decorate 314(gl_PerVertex) Block MemberDecorate 314(gl_PerVertex) 0 BuiltIn Position MemberDecorate 314(gl_PerVertex) 1 BuiltIn PointSize MemberDecorate 314(gl_PerVertex) 2 BuiltIn ClipDistance MemberDecorate 314(gl_PerVertex) 3 BuiltIn CullDistance 4: TypeVoid 5: TypeFunction 4 7: TypeInt 32 0 10: 7(int) Constant 32 11: 7(int) Constant 6 12: 7(int) Constant 0 9: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 8 10 11 12 13: 7(int) Constant 3 6: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 13 4 18: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 2 19 20: 7(int) Constant 53 22: 7(int) Constant 1 23: 7(int) Constant 4 24: 7(int) Constant 2 21: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 22 23 18 24 17: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 16 6 18 20 12 21 16 13 20 25: TypeFloat 32 27: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 26 10 13 12 28: TypeVector 25(float) 4 29: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 27 23 30: TypeMatrix 28(fvec4) 4 32: TypeBool 34: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 33 10 24 12 35: 32(bool) ConstantTrue 31: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 29 23 35 36: TypeArray 28(fvec4) 11 37: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 29 11 38: TypeVector 25(float) 2 39: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 27 24 40(UBO): TypeStruct 30 30 28(fvec4) 36 25(float) 25(float) 38(fvec2) 25(float) 43: 7(int) Constant 29 44: 7(int) Constant 7 41: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 42 31 18 43 44 12 12 13 47: 7(int) Constant 30 45: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 46 31 18 47 44 12 12 13 50: 7(int) Constant 31 48: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 49 29 18 50 44 12 12 13 51: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 52 37 18 10 44 12 12 13 55: 7(int) Constant 33 56: 7(int) Constant 8 53: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 54 27 18 55 56 12 12 13 59: 7(int) Constant 34 57: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 58 27 18 59 56 12 12 13 62: 7(int) Constant 35 60: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 61 39 18 62 44 12 12 13 65: 7(int) Constant 36 63: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 64 27 18 65 56 12 12 13 68: 7(int) Constant 27 66: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 67 22 18 68 12 21 67 12 13 41 45 48 51 53 57 60 63 69: TypePointer Uniform 40(UBO) 70: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 66 24 12 71(ubo): 69(ptr) Variable Uniform 72: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 73 66 18 68 12 21 73 71(ubo) 56 74: TypeImage 25(float) 2D sampled format:Unknown 77: 7(int) Constant 39 79: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone) 75: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 76 22 18 77 12 21 78 79 13 80: TypeSampledImage 74 81: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 82 22 18 77 12 21 83 79 13 84: TypePointer UniformConstant 80 85: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 81 12 12 86(displacementMap): 84(ptr) Variable UniformConstant 87: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 88 81 18 77 12 21 88 86(displacementMap) 56 89: TypeVector 25(float) 3 90: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 27 13 91: TypeArray 89(fvec3) 10 92: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 90 10 93: TypePointer Input 91 94: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 92 22 12 95(inNormal): 93(ptr) Variable Input 98: 7(int) Constant 43 96: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 97 92 18 98 12 21 97 95(inNormal) 56 99: TypeArray 38(fvec2) 10 100: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 39 10 101: TypePointer Input 99 102: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 100 22 12 103(inUV): 101(ptr) Variable Input 106: 7(int) Constant 44 104: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 105 100 18 106 12 21 105 103(inUV) 56 107: TypePointer Output 89(fvec3) 108: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 90 13 12 109(outNormal): 107(ptr) Variable Output 112: 7(int) Constant 46 110: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 111 90 18 112 12 21 111 109(outNormal) 56 113: TypePointer Output 38(fvec2) 114: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 39 13 12 115(outUV): 113(ptr) Variable Output 118: 7(int) Constant 47 116: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 117 39 18 118 12 21 117 115(outUV) 56 119(outViewVec): 107(ptr) Variable Output 122: 7(int) Constant 48 120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 121 90 18 122 12 21 121 119(outViewVec) 56 123(outLightVec): 107(ptr) Variable Output 126: 7(int) Constant 49 124: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 125 90 18 126 12 21 125 123(outLightVec) 56 127(outEyePos): 107(ptr) Variable Output 130: 7(int) Constant 50 128: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 129 90 18 130 12 21 129 127(outEyePos) 56 131(outWorldPos): 107(ptr) Variable Output 134: 7(int) Constant 51 132: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 133 90 18 134 12 21 133 131(outWorldPos) 56 138: TypePointer Function 38(fvec2) 139: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 39 44 12 143: 7(int) Constant 56 141: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 142 39 18 143 12 17 23 145: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression) 147: TypeInt 32 1 149: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 148 10 23 12 150: 147(int) Constant 0 151: TypePointer Input 38(fvec2) 152: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 39 22 12 155: 147(int) Constant 1 158: TypePointer Input 89(fvec3) 159: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 90 22 12 160(gl_TessCoord): 158(ptr) Variable Input 161: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 162 90 18 143 12 21 162 160(gl_TessCoord) 56 163: TypePointer Input 25(float) 164: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 27 22 12 172: 7(int) Constant 57 170: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 171 39 18 172 12 17 23 175: 147(int) Constant 3 178: 147(int) Constant 2 187: 7(int) Constant 58 193: TypePointer Function 89(fvec3) 194: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 90 44 12 198: 7(int) Constant 60 196: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 197 90 18 198 12 17 23 212: 7(int) Constant 61 210: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 211 90 18 212 12 17 23 225: 7(int) Constant 62 231: TypePointer Function 28(fvec4) 232: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 29 44 12 236: 7(int) Constant 65 234: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 235 29 18 236 12 17 23 239: TypeArray 25(float) 22 240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 27 22 241(gl_PerVertex): TypeStruct 28(fvec4) 25(float) 239 239 242: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 243 29 18 12 12 12 12 13 244: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 245 27 18 12 12 12 12 13 246: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 247 240 18 12 12 12 12 13 248: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 249 240 18 12 12 12 12 13 250: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 251 22 18 236 12 21 251 12 13 242 244 246 248 252: TypeArray 241(gl_PerVertex) 10 253: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 250 10 254: TypePointer Input 252 255: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 253 22 12 256(gl_in): 254(ptr) Variable Input 257: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 258 253 18 236 12 21 258 256(gl_in) 56 259: TypePointer Input 28(fvec4) 260: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 29 22 12 272: 7(int) Constant 66 270: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 271 29 18 272 12 17 23 286: 7(int) Constant 67 284: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 285 29 18 286 12 17 23 297: 7(int) Constant 69 299: 25(float) Constant 0 302: 147(int) Constant 4 303: TypePointer Uniform 25(float) 304: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 27 24 12 308: TypePointer Function 25(float) 309: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 27 44 12 314(gl_PerVertex): TypeStruct 28(fvec4) 25(float) 239 239 315: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 243 29 18 12 12 12 12 13 316: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 245 27 18 12 12 12 12 13 317: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 247 240 18 12 12 12 12 13 318: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 249 240 18 12 12 12 12 13 320: 7(int) Constant 71 319: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 251 22 18 320 12 21 251 12 13 315 316 317 318 321: TypePointer Output 314(gl_PerVertex) 322: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 319 13 12 323: 321(ptr) Variable Output 324: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 325 319 18 320 12 21 325 323 56 326: TypePointer Uniform 30 327: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 31 24 12 336: TypePointer Output 28(fvec4) 337: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 29 13 12 341: 7(int) Constant 74 344: TypePointer Uniform 28(fvec4) 345: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 29 24 12 348: 7(int) Constant 75 356: 7(int) Constant 76 360: 7(int) Constant 77 369: 7(int) Constant 78 14(main): 4 Function None 5 15: Label 140(uv1): 138(ptr) Variable Function 169(uv2): 138(ptr) Variable Function 195(n1): 193(ptr) Variable Function 209(n2): 193(ptr) Variable Function 233(pos1): 231(ptr) Variable Function 269(pos2): 231(ptr) Variable Function 283(pos): 231(ptr) Variable Function 136: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 17 137: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 20 20 12 12 135: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 17 14(main) 146: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 143 143 12 12 144: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 141 140(uv1) 145 153: 151(ptr) AccessChain 103(inUV) 150 154: 38(fvec2) Load 153 156: 151(ptr) AccessChain 103(inUV) 155 157: 38(fvec2) Load 156 165: 163(ptr) AccessChain 160(gl_TessCoord) 12 166: 25(float) Load 165 167: 38(fvec2) CompositeConstruct 166 166 168: 38(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 154 157 167 Store 140(uv1) 168 174: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 172 172 12 12 173: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 170 169(uv2) 145 176: 151(ptr) AccessChain 103(inUV) 175 177: 38(fvec2) Load 176 179: 151(ptr) AccessChain 103(inUV) 178 180: 38(fvec2) Load 179 181: 163(ptr) AccessChain 160(gl_TessCoord) 12 182: 25(float) Load 181 183: 38(fvec2) CompositeConstruct 182 182 184: 38(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 177 180 183 Store 169(uv2) 184 186: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 187 187 12 12 185: 38(fvec2) Load 140(uv1) 188: 38(fvec2) Load 169(uv2) 189: 163(ptr) AccessChain 160(gl_TessCoord) 22 190: 25(float) Load 189 191: 38(fvec2) CompositeConstruct 190 190 192: 38(fvec2) ExtInst 3(GLSL.std.450) 46(FMix) 185 188 191 Store 115(outUV) 192 200: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 198 198 12 12 199: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 196 195(n1) 145 201: 158(ptr) AccessChain 95(inNormal) 150 202: 89(fvec3) Load 201 203: 158(ptr) AccessChain 95(inNormal) 155 204: 89(fvec3) Load 203 205: 163(ptr) AccessChain 160(gl_TessCoord) 12 206: 25(float) Load 205 207: 89(fvec3) CompositeConstruct 206 206 206 208: 89(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 202 204 207 Store 195(n1) 208 214: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 212 212 12 12 213: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 210 209(n2) 145 215: 158(ptr) AccessChain 95(inNormal) 175 216: 89(fvec3) Load 215 217: 158(ptr) AccessChain 95(inNormal) 178 218: 89(fvec3) Load 217 219: 163(ptr) AccessChain 160(gl_TessCoord) 12 220: 25(float) Load 219 221: 89(fvec3) CompositeConstruct 220 220 220 222: 89(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 216 218 221 Store 209(n2) 222 224: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 225 225 12 12 223: 89(fvec3) Load 195(n1) 226: 89(fvec3) Load 209(n2) 227: 163(ptr) AccessChain 160(gl_TessCoord) 22 228: 25(float) Load 227 229: 89(fvec3) CompositeConstruct 228 228 228 230: 89(fvec3) ExtInst 3(GLSL.std.450) 46(FMix) 223 226 229 Store 109(outNormal) 230 238: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 236 236 12 12 237: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 234 233(pos1) 145 261: 259(ptr) AccessChain 256(gl_in) 150 150 262: 28(fvec4) Load 261 263: 259(ptr) AccessChain 256(gl_in) 155 150 264: 28(fvec4) Load 263 265: 163(ptr) AccessChain 160(gl_TessCoord) 12 266: 25(float) Load 265 267: 28(fvec4) CompositeConstruct 266 266 266 266 268: 28(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 262 264 267 Store 233(pos1) 268 274: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 272 272 12 12 273: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 270 269(pos2) 145 275: 259(ptr) AccessChain 256(gl_in) 175 150 276: 28(fvec4) Load 275 277: 259(ptr) AccessChain 256(gl_in) 178 150 278: 28(fvec4) Load 277 279: 163(ptr) AccessChain 160(gl_TessCoord) 12 280: 25(float) Load 279 281: 28(fvec4) CompositeConstruct 280 280 280 280 282: 28(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 276 278 281 Store 269(pos2) 282 288: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 286 286 12 12 287: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 284 283(pos) 145 289: 28(fvec4) Load 233(pos1) 290: 28(fvec4) Load 269(pos2) 291: 163(ptr) AccessChain 160(gl_TessCoord) 22 292: 25(float) Load 291 293: 28(fvec4) CompositeConstruct 292 292 292 292 294: 28(fvec4) ExtInst 3(GLSL.std.450) 46(FMix) 289 290 293 Store 283(pos) 294 296: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 297 297 12 12 295: 80 Load 86(displacementMap) 298: 38(fvec2) Load 115(outUV) 300: 28(fvec4) ImageSampleExplicitLod 295 298 Lod 299 301: 25(float) CompositeExtract 300 0 305: 303(ptr) AccessChain 71(ubo) 302 306: 25(float) Load 305 307: 25(float) FMul 301 306 310: 308(ptr) AccessChain 283(pos) 22 311: 25(float) Load 310 312: 25(float) FSub 311 307 313: 308(ptr) AccessChain 283(pos) 22 Store 313 312 329: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 320 320 12 12 328: 326(ptr) AccessChain 71(ubo) 150 330: 30 Load 328 331: 326(ptr) AccessChain 71(ubo) 155 332: 30 Load 331 333: 30 MatrixTimesMatrix 330 332 334: 28(fvec4) Load 283(pos) 335: 28(fvec4) MatrixTimesVector 333 334 338: 336(ptr) AccessChain 323 150 Store 338 335 340: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 341 341 12 12 339: 28(fvec4) Load 283(pos) 342: 89(fvec3) VectorShuffle 339 339 0 1 2 343: 89(fvec3) FNegate 342 Store 119(outViewVec) 343 347: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 348 348 12 12 346: 344(ptr) AccessChain 71(ubo) 178 349: 28(fvec4) Load 346 350: 89(fvec3) VectorShuffle 349 349 0 1 2 351: 89(fvec3) Load 119(outViewVec) 352: 89(fvec3) FAdd 350 351 353: 89(fvec3) ExtInst 3(GLSL.std.450) 69(Normalize) 352 Store 123(outLightVec) 353 355: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 356 356 12 12 354: 28(fvec4) Load 283(pos) 357: 89(fvec3) VectorShuffle 354 354 0 1 2 Store 131(outWorldPos) 357 359: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 360 360 12 12 358: 326(ptr) AccessChain 71(ubo) 155 361: 30 Load 358 362: 28(fvec4) Load 283(pos) 363: 28(fvec4) MatrixTimesVector 361 362 364: 25(float) CompositeExtract 363 0 365: 25(float) CompositeExtract 363 1 366: 25(float) CompositeExtract 363 2 367: 89(fvec3) CompositeConstruct 364 365 366 Store 127(outEyePos) 367 368: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 18 369 369 12 12 Return FunctionEnd