| spv.debuginfo.hlsl.geom |
| // Module Version 10000 |
| // Generated by (magic number): 8000b |
| // Id's are bound by 373 |
| |
| Capability Geometry |
| Capability MultiViewport |
| Extension "SPV_KHR_non_semantic_info" |
| 1: ExtInstImport "NonSemantic.Shader.DebugInfo.100" |
| 3: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| 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 "spv.debuginfo.hlsl.geom" |
| 9: String "float" |
| 12: String "uint" |
| 25: String "Pos" |
| 27: String "// OpModuleProcessed auto-map-locations |
| // OpModuleProcessed auto-map-bindings |
| // OpModuleProcessed entry-point main |
| // OpModuleProcessed client vulkan100 |
| // OpModuleProcessed target-env vulkan1.0 |
| // 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<GSOutput> 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" |
| 50: String "PrimitiveID" |
| 55: String "LightVec" |
| 61: String "GSOutput" |
| 74: String "@main" |
| 77: String "input" |
| 83: String "outStream" |
| 87: String "InvocationID" |
| 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" |
| MemberName 23(VSOutput) 1 "Normal" |
| MemberName 23(VSOutput) 2 "Color" |
| Name 46 "GSOutput" |
| MemberName 46(GSOutput) 0 "Pos" |
| MemberName 46(GSOutput) 1 "ViewportIndex" |
| MemberName 46(GSOutput) 2 "PrimitiveID" |
| MemberName 46(GSOutput) 3 "Normal" |
| MemberName 46(GSOutput) 4 "Color" |
| MemberName 46(GSOutput) 5 "ViewVec" |
| MemberName 46(GSOutput) 6 "LightVec" |
| Name 72 "@main(struct-VSOutput-vf4-vf3-vf31[3];struct-GSOutput-vf4-u1-u1-vf3-vf3-vf3-vf31;u1;u1;" |
| Name 68 "input" |
| Name 69 "outStream" |
| Name 70 "InvocationID" |
| Name 71 "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 |
| 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: TypeVector 8(float) 3 |
| 22: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 17 |
| 23(VSOutput): TypeStruct 18(fvec4) 21(fvec3) 21(fvec3) |
| 26: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 2 27 |
| 28: 11(int) Constant 37 |
| 29: 11(int) Constant 13 |
| 24: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 25 20 26 28 29 16 16 17 |
| 32: 11(int) Constant 39 |
| 33: 11(int) Constant 34 |
| 30: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 31 22 26 32 33 16 16 17 |
| 34: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 31 22 26 32 33 16 16 17 |
| 37: 11(int) Constant 1 |
| 38: 11(int) Constant 56 |
| 40: 11(int) Constant 5 |
| 39: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 37 19 26 40 |
| 35: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 36 37 26 38 16 39 36 16 17 24 30 34 |
| 41: TypeArray 23(VSOutput) 17 |
| 42: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 5(DebugTypeArray) 35 17 |
| 43: TypePointer Function 41 |
| 44: 11(int) Constant 7 |
| 45: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 42 44 16 |
| 46(GSOutput): TypeStruct 18(fvec4) 11(int) 11(int) 21(fvec3) 21(fvec3) 21(fvec3) 21(fvec3) |
| 48: 11(int) Constant 44 |
| 47: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 25 20 26 48 29 16 16 17 |
| 51: 11(int) Constant 46 |
| 52: 11(int) Constant 19 |
| 49: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 50 13 26 51 52 16 16 17 |
| 53: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 50 13 26 51 52 16 16 17 |
| 56: 11(int) Constant 50 |
| 54: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 55 22 26 56 28 16 16 17 |
| 57: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 55 22 26 56 28 16 16 17 |
| 58: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 55 22 26 56 28 16 16 17 |
| 59: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 55 22 26 56 28 16 16 17 |
| 60: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 61 37 26 38 16 39 61 16 17 47 49 53 54 57 58 59 |
| 62: TypePointer Function 46(GSOutput) |
| 63: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 60 44 16 |
| 64: TypePointer Function 11(int) |
| 65: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 13 44 16 |
| 66: TypeFunction 4 43(ptr) 62(ptr) 64(ptr) 64(ptr) |
| 67: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 4 42 60 13 13 |
| 75: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 74 67 26 38 16 39 74 17 38 |
| 76: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 77 42 26 38 16 75 19 37 |
| 79: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression) |
| 84: 11(int) Constant 2 |
| 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: 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.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 |
| 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 |
| 331: 330(ptr) AccessChain 329(input.Normal) 107 |
| 332: 21(fvec3) Load 331 |
| 333: 139(ptr) AccessChain 319(input) 107 138 |
| Store 333 332 |
| 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 |
| 68(input): 43(ptr) FunctionParameter |
| 69(outStream): 62(ptr) FunctionParameter |
| 70(InvocationID): 64(ptr) FunctionParameter |
| 71(PrimitiveID): 64(ptr) FunctionParameter |
| 73: Label |
| 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 |
| 85: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 82 69(outStream) 79 |
| 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;) |
| 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 |
| 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 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 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 |