spv.debuginfo.hlsl.tesc 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 731 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" 623 630 637 671 680 687 694 709 724 ExecutionMode 6 OutputVertices 4 ExecutionMode 6 Quads ExecutionMode 6 SpacingEqual ExecutionMode 6 VertexOrderCw 2: String "spv.debuginfo.hlsl.tesc" 9: String "float" 12: String "uint" 30: String "screenSpaceTessFactor" 33: String "/* 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" 53: String "bool" 61: String "frustumCheck" 65: String "Pos" 70: String "inUV" 79: String "Normal" 83: String "UV" 87: String "VSOutput" 99: String "TessLevelOuter" 103: String "TessLevelInner" 106: String "ConstantsHSOutput" 112: String "ConstantsHS" 115: String "patch" 129: String "HSOutput" 137: String "@main" 144: String "InvocationID" 150: String "midPoint" 164: String "radius" 175: String "v0" 187: String "projection" 191: String "modelview" 195: String "lightPos" 199: String "frustumPlanes" 202: String "displacementFactor" 205: String "tessellationFactor" 208: String "viewportDim" 211: String "tessellatedEdgeSize" 214: String "UBO" 217: String "ubo" 224: String "" 227: String "int" 238: String "clip0" 256: String "clip1" 335: String "pos" 343: String "type.2d.image" 345: String "@type.2d.image" 351: String "textureHeight" 356: String "type.sampler" 357: String "@type.sampler" 362: String "samplerHeight" 366: String "type.sampled.image" 367: String "@type.sampled.image" 387: String "i" 442: String "output" Name 6 "main" Name 28 "screenSpaceTessFactor(vf4;vf4;" Name 26 "p0" Name 27 "p1" Name 59 "frustumCheck(vf4;vf2;" Name 57 "Pos" Name 58 "inUV" Name 74 "VSOutput" MemberName 74(VSOutput) 0 "Pos" MemberName 74(VSOutput) 1 "Normal" MemberName 74(VSOutput) 2 "UV" Name 97 "ConstantsHSOutput" MemberName 97(ConstantsHSOutput) 0 "TessLevelOuter" MemberName 97(ConstantsHSOutput) 1 "TessLevelInner" Name 110 "ConstantsHS(struct-VSOutput-vf4-vf3-vf21[4];" Name 109 "patch" Name 121 "HSOutput" MemberName 121(HSOutput) 0 "Pos" MemberName 121(HSOutput) 1 "Normal" MemberName 121(HSOutput) 2 "UV" Name 135 "@main(struct-VSOutput-vf4-vf3-vf21[4];u1;" Name 133 "patch" Name 134 "InvocationID" 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 215 "ubo" MemberName 215(ubo) 0 "ubo" Name 222 "" Name 236 "clip0" Name 254 "clip1" Name 333 "pos" Name 349 "textureHeight" Name 360 "samplerHeight" Name 385 "i" Name 440 "output" Name 451 "param" Name 456 "param" Name 494 "param" Name 500 "param" Name 505 "param" Name 510 "param" Name 515 "param" Name 520 "param" Name 525 "param" Name 530 "param" Name 584 "output" Name 620 "patch" Name 623 "patch.Pos" Name 630 "patch.Normal" Name 637 "patch.UV" Name 669 "InvocationID" Name 671 "InvocationID" Name 673 "flattenTemp" Name 674 "param" Name 676 "param" Name 680 "@entryPointOutput.Pos" Name 687 "@entryPointOutput.Normal" Name 694 "@entryPointOutput.UV" Name 704 "@patchConstantResult" Name 705 "param" Name 709 "@patchConstantOutput.TessLevelOuter" Name 724 "@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 215(ubo) Block MemberDecorate 215(ubo) 0 Offset 0 Decorate 222 Binding 0 Decorate 222 DescriptorSet 0 Decorate 349(textureHeight) Binding 1 Decorate 349(textureHeight) DescriptorSet 0 Decorate 360(samplerHeight) Binding 1 Decorate 360(samplerHeight) DescriptorSet 0 Decorate 623(patch.Pos) BuiltIn Position Decorate 630(patch.Normal) Location 0 Decorate 637(patch.UV) Location 1 Decorate 671(InvocationID) BuiltIn InvocationId Decorate 680(@entryPointOutput.Pos) BuiltIn Position Decorate 687(@entryPointOutput.Normal) Location 0 Decorate 694(@entryPointOutput.UV) Location 1 Decorate 709(@patchConstantOutput.TessLevelOuter) BuiltIn TessLevelOuter Decorate 709(@patchConstantOutput.TessLevelOuter) Patch Decorate 724(@patchConstantOutput.TessLevelInner) BuiltIn TessLevelInner Decorate 724(@patchConstantOutput.TessLevelInner) Patch 4: TypeVoid 5: TypeFunction 4 8: TypeFloat 32 11: TypeInt 32 0 14: 11(int) Constant 32 15: 11(int) Constant 6 16: 11(int) Constant 0 13: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 12 14 15 16 17: 11(int) Constant 3 10: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 9 14 17 16 18: TypeVector 8(float) 4 19: 11(int) Constant 4 20: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 19 21: TypePointer Function 18(fvec4) 22: 11(int) Constant 7 23: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 22 16 24: TypeFunction 8(float) 21(ptr) 21(ptr) 25: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 10 20 20 32: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 2 33 34: 11(int) Constant 65 36: 11(int) Constant 1 37: 11(int) Constant 5 35: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 36 19 32 37 31: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 30 25 32 34 16 35 30 17 34 38: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 39 20 32 34 16 31 19 36 41: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression) 46: 11(int) Constant 2 44: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 45 20 32 34 16 31 19 46 48: TypeVector 8(float) 2 49: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 46 50: TypePointer Function 48(fvec2) 51: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 49 22 16 52: TypeBool 54: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 53 14 46 16 55: TypeFunction 52(bool) 21(ptr) 50(ptr) 56: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 54 20 49 63: 11(int) Constant 95 62: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 61 56 32 63 16 35 61 17 63 64: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 65 20 32 63 16 62 19 36 69: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 70 49 32 63 16 62 19 46 72: TypeVector 8(float) 3 73: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 17 74(VSOutput): TypeStruct 18(fvec4) 72(fvec3) 48(fvec2) 76: 11(int) Constant 44 77: 11(int) Constant 13 75: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 65 20 32 76 77 16 16 17 80: 11(int) Constant 45 81: 11(int) Constant 35 78: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 79 73 32 80 81 16 16 17 84: 11(int) Constant 46 85: 11(int) Constant 31 82: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 83 49 32 84 85 16 16 17 88: 11(int) Constant 112 86: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 87 36 32 88 16 35 87 16 17 75 78 82 89: TypeArray 74(VSOutput) 19 90: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 86 19 91: TypePointer Function 89 92: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 90 22 16 93: TypeArray 8(float) 19 94: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 10 19 95: TypeArray 8(float) 46 96: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 10 46 97(ConstantsHSOutput): TypeStruct 93 95 100: 11(int) Constant 58 101: 11(int) Constant 25 98: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 99 94 32 100 101 16 16 17 104: 11(int) Constant 59 102: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 103 96 32 104 101 16 16 17 105: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 106 36 32 88 16 35 106 16 17 98 102 107: TypeFunction 97(ConstantsHSOutput) 91(ptr) 108: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 105 90 113: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 112 108 32 88 16 35 112 17 88 114: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 115 90 32 88 16 113 19 36 119: TypePointer Function 11(int) 120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 13 22 16 121(HSOutput): TypeStruct 18(fvec4) 72(fvec3) 48(fvec2) 123: 11(int) Constant 51 122: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 65 20 32 123 14 16 16 17 125: 11(int) Constant 52 124: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 79 73 32 125 81 16 16 17 127: 11(int) Constant 53 126: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 83 49 32 127 85 16 16 17 130: 11(int) Constant 158 128: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 129 36 32 130 16 35 129 16 17 122 124 126 131: TypeFunction 121(HSOutput) 91(ptr) 119(ptr) 132: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 128 90 13 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 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 28 189: 11(int) Constant 21 186: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 187 181 32 188 189 16 16 17 192: 11(int) Constant 29 193: 11(int) Constant 20 190: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 191 181 32 192 193 16 16 17 196: 11(int) Constant 30 197: 11(int) Constant 17 194: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 195 20 32 196 197 16 16 17 200: 11(int) Constant 22 198: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 199 184 32 85 200 16 16 17 203: 11(int) Constant 26 201: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 202 10 32 14 203 16 16 17 206: 11(int) Constant 33 204: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 205 10 32 206 203 16 16 17 209: 11(int) Constant 34 207: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 208 49 32 209 193 16 16 17 212: 11(int) Constant 27 210: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 211 10 32 81 212 16 16 17 213: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 214 36 32 176 16 35 214 16 17 186 190 194 198 201 204 207 210 215(ubo): TypeStruct 185(UBO) 218: 11(int) Constant 37 216: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 217 213 32 218 218 16 16 17 219: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 217 36 32 176 16 35 217 16 17 216 220: TypePointer Uniform 215(ubo) 221: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 219 46 16 222: 220(ptr) Variable Uniform 225: 11(int) Constant 8 223: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 224 219 32 176 16 35 224 222 225 226: TypeInt 32 1 228: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 227 14 19 16 229: 226(int) Constant 0 230: 226(int) Constant 1 231: TypePointer Uniform 180 232: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 181 46 16 239: 11(int) Constant 75 237: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 238 20 32 239 16 147 19 244: 8(float) Constant 0 245: 72(fvec3) ConstantComposite 244 244 244 257: 11(int) Constant 76 255: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 256 20 32 257 16 147 19 272: 11(int) Constant 79 279: 11(int) Constant 80 284: 226(int) Constant 6 285: TypePointer Uniform 48(fvec2) 286: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 49 46 16 289: 11(int) Constant 83 300: 11(int) Constant 84 311: 11(int) Constant 89 314: 226(int) Constant 7 315: TypePointer Uniform 8(float) 316: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 46 16 320: 226(int) Constant 5 324: 8(float) Constant 1065353216 325: 8(float) Constant 1115684864 332: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 62 336: 11(int) Constant 98 334: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 335 20 32 336 16 332 19 341: TypeImage 8(float) 2D sampled format:Unknown 344: 11(int) Constant 99 346: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 0(DebugInfoNone) 342: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 343 36 32 344 16 35 345 346 17 347: TypePointer UniformConstant 341 348: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 342 16 16 349(textureHeight): 347(ptr) Variable UniformConstant 350: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 351 342 32 344 16 35 351 349(textureHeight) 225 354: TypeSampler 355: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 356 36 32 344 16 35 357 346 17 358: TypePointer UniformConstant 354 359: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 355 16 16 360(samplerHeight): 358(ptr) Variable UniformConstant 361: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 362 355 32 344 16 35 362 360(samplerHeight) 225 364: TypeSampledImage 341 365: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 366 36 32 344 16 35 367 346 17 372: 226(int) Constant 4 381: 11(int) Constant 102 382: 11(int) Constant 11 380: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 381 382 332 383: TypePointer Function 226(int) 384: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 228 22 16 386: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 387 228 32 381 16 380 19 402: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 380 406: 11(int) Constant 103 407: 226(int) Constant 3 409: TypePointer Uniform 18(fvec4) 410: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 20 46 16 414: 8(float) Constant 1090519040 419: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 402 420: 52(bool) ConstantFalse 423: 11(int) Constant 105 431: 11(int) Constant 108 437: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 113 438: TypePointer Function 97(ConstantsHSOutput) 439: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 105 22 16 443: 11(int) Constant 113 441: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 442 105 32 443 16 437 19 447: 93 ConstantComposite 244 244 244 244 448: 95 ConstantComposite 244 244 449:97(ConstantsHSOutput) ConstantComposite 447 448 450: 226(int) Constant 2 454: 11(int) Constant 115 463: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 437 467: 11(int) Constant 117 470: 11(int) Constant 118 473: 11(int) Constant 119 476: 11(int) Constant 120 479: 11(int) Constant 121 482: 11(int) Constant 122 484: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 437 488: 11(int) Constant 126 493: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 484 498: 11(int) Constant 128 508: 11(int) Constant 129 518: 11(int) Constant 130 528: 11(int) Constant 131 537: 11(int) Constant 132 545: 11(int) Constant 133 552: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 484 556: 11(int) Constant 139 559: 11(int) Constant 140 562: 11(int) Constant 141 565: 11(int) Constant 142 568: 11(int) Constant 143 571: 11(int) Constant 144 575: 11(int) Constant 148 581: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 32 16 16 138 582: TypePointer Function 121(HSOutput) 583: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 128 22 16 586: 11(int) Constant 159 585: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 442 128 32 586 16 581 19 590: 18(fvec4) ConstantComposite 244 244 244 244 591: 48(fvec2) ConstantComposite 244 244 592:121(HSOutput) ConstantComposite 590 245 591 595: 11(int) Constant 160 601: 11(int) Constant 161 602: TypePointer Function 72(fvec3) 603: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 73 22 16 609: 11(int) Constant 162 615: 11(int) Constant 163 621: TypeArray 18(fvec4) 19 622: TypePointer Input 621 623(patch.Pos): 622(ptr) Variable Input 624: TypePointer Input 18(fvec4) 628: TypeArray 72(fvec3) 19 629: TypePointer Input 628 630(patch.Normal): 629(ptr) Variable Input 631: TypePointer Input 72(fvec3) 635: TypeArray 48(fvec2) 19 636: TypePointer Input 635 637(patch.UV): 636(ptr) Variable Input 638: TypePointer Input 48(fvec2) 670: TypePointer Input 11(int) 671(InvocationID): 670(ptr) Variable Input 679: TypePointer Output 621 680(@entryPointOutput.Pos): 679(ptr) Variable Output 684: TypePointer Output 18(fvec4) 686: TypePointer Output 628 687(@entryPointOutput.Normal): 686(ptr) Variable Output 691: TypePointer Output 72(fvec3) 693: TypePointer Output 635 694(@entryPointOutput.UV): 693(ptr) Variable Output 698: TypePointer Output 48(fvec2) 708: TypePointer Output 93 709(@patchConstantOutput.TessLevelOuter): 708(ptr) Variable Output 712: TypePointer Output 8(float) 723: TypePointer Output 95 724(@patchConstantOutput.TessLevelInner): 723(ptr) Variable Output 6(main): 4 Function None 5 7: Label 620(patch): 91(ptr) Variable Function 669(InvocationID): 119(ptr) Variable Function 673(flattenTemp): 582(ptr) Variable Function 674(param): 91(ptr) Variable Function 676(param): 119(ptr) Variable Function 704(@patchConstantResult): 438(ptr) Variable Function 705(param): 91(ptr) Variable Function 625: 624(ptr) AccessChain 623(patch.Pos) 229 626: 18(fvec4) Load 625 627: 21(ptr) AccessChain 620(patch) 229 229 Store 627 626 632: 631(ptr) AccessChain 630(patch.Normal) 229 633: 72(fvec3) Load 632 634: 602(ptr) AccessChain 620(patch) 229 230 Store 634 633 639: 638(ptr) AccessChain 637(patch.UV) 229 640: 48(fvec2) Load 639 641: 50(ptr) AccessChain 620(patch) 229 450 Store 641 640 642: 624(ptr) AccessChain 623(patch.Pos) 230 643: 18(fvec4) Load 642 644: 21(ptr) AccessChain 620(patch) 230 229 Store 644 643 645: 631(ptr) AccessChain 630(patch.Normal) 230 646: 72(fvec3) Load 645 647: 602(ptr) AccessChain 620(patch) 230 230 Store 647 646 648: 638(ptr) AccessChain 637(patch.UV) 230 649: 48(fvec2) Load 648 650: 50(ptr) AccessChain 620(patch) 230 450 Store 650 649 651: 624(ptr) AccessChain 623(patch.Pos) 450 652: 18(fvec4) Load 651 653: 21(ptr) AccessChain 620(patch) 450 229 Store 653 652 654: 631(ptr) AccessChain 630(patch.Normal) 450 655: 72(fvec3) Load 654 656: 602(ptr) AccessChain 620(patch) 450 230 Store 656 655 657: 638(ptr) AccessChain 637(patch.UV) 450 658: 48(fvec2) Load 657 659: 50(ptr) AccessChain 620(patch) 450 450 Store 659 658 660: 624(ptr) AccessChain 623(patch.Pos) 407 661: 18(fvec4) Load 660 662: 21(ptr) AccessChain 620(patch) 407 229 Store 662 661 663: 631(ptr) AccessChain 630(patch.Normal) 407 664: 72(fvec3) Load 663 665: 602(ptr) AccessChain 620(patch) 407 230 Store 665 664 666: 638(ptr) AccessChain 637(patch.UV) 407 667: 48(fvec2) Load 666 668: 50(ptr) AccessChain 620(patch) 407 450 Store 668 667 672: 11(int) Load 671(InvocationID) Store 669(InvocationID) 672 675: 89 Load 620(patch) Store 674(param) 675 677: 11(int) Load 669(InvocationID) Store 676(param) 677 678:121(HSOutput) FunctionCall 135(@main(struct-VSOutput-vf4-vf3-vf21[4];u1;) 674(param) 676(param) Store 673(flattenTemp) 678 681: 11(int) Load 671(InvocationID) 682: 21(ptr) AccessChain 673(flattenTemp) 229 683: 18(fvec4) Load 682 685: 684(ptr) AccessChain 680(@entryPointOutput.Pos) 681 Store 685 683 688: 11(int) Load 671(InvocationID) 689: 602(ptr) AccessChain 673(flattenTemp) 230 690: 72(fvec3) Load 689 692: 691(ptr) AccessChain 687(@entryPointOutput.Normal) 688 Store 692 690 695: 11(int) Load 671(InvocationID) 696: 50(ptr) AccessChain 673(flattenTemp) 450 697: 48(fvec2) Load 696 699: 698(ptr) AccessChain 694(@entryPointOutput.UV) 695 Store 699 697 ControlBarrier 46 19 16 700: 11(int) Load 671(InvocationID) 701: 52(bool) IEqual 700 229 SelectionMerge 703 None BranchConditional 701 702 703 702: Label 706: 89 Load 620(patch) Store 705(param) 706 707:97(ConstantsHSOutput) FunctionCall 110(ConstantsHS(struct-VSOutput-vf4-vf3-vf21[4];) 705(param) Store 704(@patchConstantResult) 707 710: 160(ptr) AccessChain 704(@patchConstantResult) 229 229 711: 8(float) Load 710 713: 712(ptr) AccessChain 709(@patchConstantOutput.TessLevelOuter) 229 Store 713 711 714: 160(ptr) AccessChain 704(@patchConstantResult) 229 230 715: 8(float) Load 714 716: 712(ptr) AccessChain 709(@patchConstantOutput.TessLevelOuter) 230 Store 716 715 717: 160(ptr) AccessChain 704(@patchConstantResult) 229 450 718: 8(float) Load 717 719: 712(ptr) AccessChain 709(@patchConstantOutput.TessLevelOuter) 450 Store 719 718 720: 160(ptr) AccessChain 704(@patchConstantResult) 229 407 721: 8(float) Load 720 722: 712(ptr) AccessChain 709(@patchConstantOutput.TessLevelOuter) 407 Store 722 721 725: 160(ptr) AccessChain 704(@patchConstantResult) 230 229 726: 8(float) Load 725 727: 712(ptr) AccessChain 724(@patchConstantOutput.TessLevelInner) 229 Store 727 726 728: 160(ptr) AccessChain 704(@patchConstantResult) 230 230 729: 8(float) Load 728 730: 712(ptr) AccessChain 724(@patchConstantOutput.TessLevelInner) 230 Store 730 729 Branch 703 703: Label Return FunctionEnd 28(screenSpaceTessFactor(vf4;vf4;): 8(float) Function None 24 26(p0): 21(ptr) FunctionParameter 27(p1): 21(ptr) FunctionParameter 29: Label 148(midPoint): 21(ptr) Variable Function 162(radius): 160(ptr) Variable Function 173(v0): 21(ptr) Variable Function 236(clip0): 21(ptr) Variable Function 254(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;) 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) 233: 231(ptr) AccessChain 222 229 230 234: 180 Load 233 235: 18(fvec4) VectorTimesMatrix 179 234 Store 173(v0) 235 241: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 239 239 16 16 240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 237 236(clip0) 41 242: 18(fvec4) Load 173(v0) 243: 8(float) Load 162(radius) 246: 8(float) CompositeExtract 245 0 247: 8(float) CompositeExtract 245 1 248: 8(float) CompositeExtract 245 2 249: 18(fvec4) CompositeConstruct 243 246 247 248 250: 18(fvec4) FSub 242 249 251: 231(ptr) AccessChain 222 229 229 252: 180 Load 251 253: 18(fvec4) VectorTimesMatrix 250 252 Store 236(clip0) 253 259: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 257 257 16 16 258: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 255 254(clip1) 41 260: 18(fvec4) Load 173(v0) 261: 8(float) Load 162(radius) 262: 8(float) CompositeExtract 245 0 263: 8(float) CompositeExtract 245 1 264: 8(float) CompositeExtract 245 2 265: 18(fvec4) CompositeConstruct 261 262 263 264 266: 18(fvec4) FAdd 260 265 267: 231(ptr) AccessChain 222 229 229 268: 180 Load 267 269: 18(fvec4) VectorTimesMatrix 266 268 Store 254(clip1) 269 271: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 272 272 16 16 270: 160(ptr) AccessChain 236(clip0) 17 273: 8(float) Load 270 274: 18(fvec4) Load 236(clip0) 275: 18(fvec4) CompositeConstruct 273 273 273 273 276: 18(fvec4) FDiv 274 275 Store 236(clip0) 276 278: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 279 279 16 16 277: 160(ptr) AccessChain 254(clip1) 17 280: 8(float) Load 277 281: 18(fvec4) Load 254(clip1) 282: 18(fvec4) CompositeConstruct 280 280 280 280 283: 18(fvec4) FDiv 281 282 Store 254(clip1) 283 288: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 289 289 16 16 287: 285(ptr) AccessChain 222 229 284 290: 48(fvec2) Load 287 291: 18(fvec4) Load 236(clip0) 292: 48(fvec2) VectorShuffle 291 291 0 1 293: 48(fvec2) FMul 292 290 294: 160(ptr) AccessChain 236(clip0) 16 295: 8(float) CompositeExtract 293 0 Store 294 295 296: 160(ptr) AccessChain 236(clip0) 36 297: 8(float) CompositeExtract 293 1 Store 296 297 299: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 300 300 16 16 298: 285(ptr) AccessChain 222 229 284 301: 48(fvec2) Load 298 302: 18(fvec4) Load 254(clip1) 303: 48(fvec2) VectorShuffle 302 302 0 1 304: 48(fvec2) FMul 303 301 305: 160(ptr) AccessChain 254(clip1) 16 306: 8(float) CompositeExtract 304 0 Store 305 306 307: 160(ptr) AccessChain 254(clip1) 36 308: 8(float) CompositeExtract 304 1 Store 307 308 310: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 311 311 16 16 309: 18(fvec4) Load 236(clip0) 312: 18(fvec4) Load 254(clip1) 313: 8(float) ExtInst 3(GLSL.std.450) 67(Distance) 309 312 317: 315(ptr) AccessChain 222 229 314 318: 8(float) Load 317 319: 8(float) FDiv 313 318 321: 315(ptr) AccessChain 222 229 320 322: 8(float) Load 321 323: 8(float) FMul 319 322 326: 8(float) ExtInst 3(GLSL.std.450) 43(FClamp) 323 324 325 ReturnValue 326 FunctionEnd 59(frustumCheck(vf4;vf2;): 52(bool) Function None 55 57(Pos): 21(ptr) FunctionParameter 58(inUV): 50(ptr) FunctionParameter 60: Label 333(pos): 21(ptr) Variable Function 385(i): 383(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 331: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 62 59(frustumCheck(vf4;vf2;) 338: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 332 339: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 336 336 16 16 337: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 334 333(pos) 41 340: 18(fvec4) Load 57(Pos) Store 333(pos) 340 353: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 344 344 16 16 352: 341 Load 349(textureHeight) 363: 354 Load 360(samplerHeight) 368: 364 SampledImage 352 363 369: 48(fvec2) Load 58(inUV) 370: 18(fvec4) ImageSampleExplicitLod 368 369 Lod 244 371: 8(float) CompositeExtract 370 0 373: 315(ptr) AccessChain 222 229 372 374: 8(float) Load 373 375: 8(float) FMul 371 374 376: 160(ptr) AccessChain 333(pos) 36 377: 8(float) Load 376 378: 8(float) FSub 377 375 379: 160(ptr) AccessChain 333(pos) 36 Store 379 378 389: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 380 390: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 381 381 16 16 388: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 386 385(i) 41 Store 385(i) 229 Branch 391 391: Label 395: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 380 396: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 381 381 16 16 LoopMerge 393 394 None Branch 397 397: Label 399: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 380 400: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 381 381 16 16 398: 226(int) Load 385(i) 401: 52(bool) SLessThan 398 284 BranchConditional 401 392 393 392: Label 404: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 402 405: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 406 406 16 16 403: 18(fvec4) Load 333(pos) 408: 226(int) Load 385(i) 411: 409(ptr) AccessChain 222 229 407 408 412: 18(fvec4) Load 411 413: 8(float) Dot 403 412 415: 8(float) FAdd 413 414 416: 52(bool) FOrdLessThan 415 244 SelectionMerge 418 None BranchConditional 416 417 418 417: Label 421: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 419 422: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 423 423 16 16 ReturnValue 420 418: Label Branch 394 394: Label 426: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 380 427: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 381 381 16 16 425: 226(int) Load 385(i) 428: 226(int) IAdd 425 230 Store 385(i) 428 Branch 391 393: Label 429: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 332 430: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 431 431 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 440(output): 438(ptr) Variable Function 451(param): 21(ptr) Variable Function 456(param): 50(ptr) Variable Function 494(param): 21(ptr) Variable Function 500(param): 21(ptr) Variable Function 505(param): 21(ptr) Variable Function 510(param): 21(ptr) Variable Function 515(param): 21(ptr) Variable Function 520(param): 21(ptr) Variable Function 525(param): 21(ptr) Variable Function 530(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 436: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 113 110(ConstantsHS(struct-VSOutput-vf4-vf3-vf21[4];) 445: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 437 446: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 443 443 16 16 444: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 441 440(output) 41 Store 440(output) 449 453: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 454 454 16 16 452: 21(ptr) AccessChain 109(patch) 229 229 455: 18(fvec4) Load 452 Store 451(param) 455 457: 50(ptr) AccessChain 109(patch) 229 450 458: 48(fvec2) Load 457 Store 456(param) 458 459: 52(bool) FunctionCall 59(frustumCheck(vf4;vf2;) 451(param) 456(param) 460: 52(bool) LogicalNot 459 SelectionMerge 462 None BranchConditional 460 461 483 461: Label 465: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 463 466: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 467 467 16 16 464: 160(ptr) AccessChain 440(output) 230 229 Store 464 244 469: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 470 470 16 16 468: 160(ptr) AccessChain 440(output) 230 230 Store 468 244 472: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 473 473 16 16 471: 160(ptr) AccessChain 440(output) 229 229 Store 471 244 475: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 476 476 16 16 474: 160(ptr) AccessChain 440(output) 229 230 Store 474 244 478: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 479 479 16 16 477: 160(ptr) AccessChain 440(output) 229 450 Store 477 244 481: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 482 482 16 16 480: 160(ptr) AccessChain 440(output) 229 407 Store 480 244 Branch 462 483: Label 486: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 484 487: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 488 488 16 16 485: 315(ptr) AccessChain 222 229 320 489: 8(float) Load 485 490: 52(bool) FOrdGreaterThan 489 244 SelectionMerge 492 None BranchConditional 490 491 551 491: Label 496: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 493 497: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 498 498 16 16 495: 21(ptr) AccessChain 109(patch) 407 229 499: 18(fvec4) Load 495 Store 494(param) 499 501: 21(ptr) AccessChain 109(patch) 229 229 502: 18(fvec4) Load 501 Store 500(param) 502 503: 8(float) FunctionCall 28(screenSpaceTessFactor(vf4;vf4;) 494(param) 500(param) 504: 160(ptr) AccessChain 440(output) 229 229 Store 504 503 507: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 508 508 16 16 506: 21(ptr) AccessChain 109(patch) 229 229 509: 18(fvec4) Load 506 Store 505(param) 509 511: 21(ptr) AccessChain 109(patch) 230 229 512: 18(fvec4) Load 511 Store 510(param) 512 513: 8(float) FunctionCall 28(screenSpaceTessFactor(vf4;vf4;) 505(param) 510(param) 514: 160(ptr) AccessChain 440(output) 229 230 Store 514 513 517: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 518 518 16 16 516: 21(ptr) AccessChain 109(patch) 230 229 519: 18(fvec4) Load 516 Store 515(param) 519 521: 21(ptr) AccessChain 109(patch) 450 229 522: 18(fvec4) Load 521 Store 520(param) 522 523: 8(float) FunctionCall 28(screenSpaceTessFactor(vf4;vf4;) 515(param) 520(param) 524: 160(ptr) AccessChain 440(output) 229 450 Store 524 523 527: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 528 528 16 16 526: 21(ptr) AccessChain 109(patch) 450 229 529: 18(fvec4) Load 526 Store 525(param) 529 531: 21(ptr) AccessChain 109(patch) 407 229 532: 18(fvec4) Load 531 Store 530(param) 532 533: 8(float) FunctionCall 28(screenSpaceTessFactor(vf4;vf4;) 525(param) 530(param) 534: 160(ptr) AccessChain 440(output) 229 407 Store 534 533 536: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 537 537 16 16 535: 160(ptr) AccessChain 440(output) 229 229 538: 8(float) Load 535 539: 160(ptr) AccessChain 440(output) 229 407 540: 8(float) Load 539 541: 8(float) ExtInst 3(GLSL.std.450) 46(FMix) 538 540 155 542: 160(ptr) AccessChain 440(output) 230 229 Store 542 541 544: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 545 545 16 16 543: 160(ptr) AccessChain 440(output) 229 450 546: 8(float) Load 543 547: 160(ptr) AccessChain 440(output) 229 230 548: 8(float) Load 547 549: 8(float) ExtInst 3(GLSL.std.450) 46(FMix) 546 548 155 550: 160(ptr) AccessChain 440(output) 230 230 Store 550 549 Branch 492 551: Label 554: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 552 555: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 556 556 16 16 553: 160(ptr) AccessChain 440(output) 230 229 Store 553 324 558: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 559 559 16 16 557: 160(ptr) AccessChain 440(output) 230 230 Store 557 324 561: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 562 562 16 16 560: 160(ptr) AccessChain 440(output) 229 229 Store 560 324 564: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 565 565 16 16 563: 160(ptr) AccessChain 440(output) 229 230 Store 563 324 567: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 568 568 16 16 566: 160(ptr) AccessChain 440(output) 229 450 Store 566 324 570: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 571 571 16 16 569: 160(ptr) AccessChain 440(output) 229 407 Store 569 324 Branch 492 492: Label Branch 462 462: Label 573: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 437 574: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 575 575 16 16 572:97(ConstantsHSOutput) Load 440(output) ReturnValue 572 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 584(output): 582(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 580: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 138 135(@main(struct-VSOutput-vf4-vf3-vf21[4];u1;) 588: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 581 589: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 586 586 16 16 587: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 585 584(output) 41 Store 584(output) 592 594: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 595 595 16 16 593: 11(int) Load 134(InvocationID) 596: 21(ptr) AccessChain 133(patch) 593 229 597: 18(fvec4) Load 596 598: 21(ptr) AccessChain 584(output) 229 Store 598 597 600: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 601 601 16 16 599: 11(int) Load 134(InvocationID) 604: 602(ptr) AccessChain 133(patch) 599 230 605: 72(fvec3) Load 604 606: 602(ptr) AccessChain 584(output) 230 Store 606 605 608: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 609 609 16 16 607: 11(int) Load 134(InvocationID) 610: 50(ptr) AccessChain 133(patch) 607 450 611: 48(fvec2) Load 610 612: 50(ptr) AccessChain 584(output) 450 Store 612 611 614: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 32 615 615 16 16 613:121(HSOutput) Load 584(output) ReturnValue 613 FunctionEnd