blob: 4e49f04a0e832f7962dbceea3dc88ad85b70c5f7 [file] [log] [blame]
spv.debuginfo.hlsl.vert
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 518
Capability Shader
Extension "SPV_KHR_non_semantic_info"
1: ExtInstImport "NonSemantic.Shader.DebugInfo.100"
3: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 6 "main" 467 470 474 477 480 483 487 491 499 503 506 509 512 515
2: String "spv.debuginfo.hlsl.vert"
9: String "float"
12: String "uint"
24: String "int"
29: String "instanceRot"
31: 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 VSInput
{
[[vk::location(0)]] float3 Pos : POSITION0;
[[vk::location(1)]] float3 Normal : NORMAL0;
[[vk::location(2)]] float2 UV : TEXCOORD0;
[[vk::location(3)]] float3 Color : COLOR0;
// Instanced attributes
[[vk::location(4)]] float3 instancePos : POSITION1;
[[vk::location(5)]] float3 instanceRot : TEXCOORD1;
[[vk::location(6)]] float instanceScale : TEXCOORD2;
[[vk::location(7)]] int instanceTexIndex : TEXCOORD3;
};
struct UBO
{
float4x4 projection;
float4x4 modelview;
float4 lightPos;
float locSpeed;
float globSpeed;
};
cbuffer ubo : register(b0) { UBO ubo; }
struct VSOutput
{
float4 Pos : SV_POSITION;
[[vk::location(0)]] float3 Normal : NORMAL0;
[[vk::location(1)]] float3 Color : COLOR0;
[[vk::location(2)]] float3 UV : TEXCOORD0;
[[vk::location(3)]] float3 ViewVec : TEXCOORD1;
[[vk::location(4)]] float3 LightVec : TEXCOORD2;
};
VSOutput main(VSInput input)
{
VSOutput output = (VSOutput)0;
output.Color = input.Color;
output.UV = float3(input.UV, input.instanceTexIndex);
// rotate around x
float s = sin(input.instanceRot.x + ubo.locSpeed);
float c = cos(input.instanceRot.x + ubo.locSpeed);
float3x3 mx = { c, -s, 0.0,
s, c, 0.0,
0.0, 0.0, 1.0 };
// rotate around y
s = sin(input.instanceRot.y + ubo.locSpeed);
c = cos(input.instanceRot.y + ubo.locSpeed);
float3x3 my = { c, 0.0, -s,
0.0, 1.0, 0.0,
s, 0.0, c };
// rot around z
s = sin(input.instanceRot.z + ubo.locSpeed);
c = cos(input.instanceRot.z + ubo.locSpeed);
float3x3 mz = { 1.0, 0.0, 0.0,
0.0, c, -s,
0.0, s, c };
float3x3 rotMat = mul(mz, mul(my, mx));
float4x4 gRotMat;
s = sin(input.instanceRot.y + ubo.globSpeed);
c = cos(input.instanceRot.y + ubo.globSpeed);
gRotMat[0] = float4(c, 0.0, -s, 0.0);
gRotMat[1] = float4(0.0, 1.0, 0.0, 0.0);
gRotMat[2] = float4(s, 0.0, c, 0.0);
gRotMat[3] = float4(0.0, 0.0, 0.0, 1.0);
float4 locPos = float4(mul(rotMat, input.Pos.xyz), 1.0);
float4 pos = float4((locPos.xyz * input.instanceScale) + input.instancePos, 1.0);
output.Pos = mul(ubo.projection, mul(ubo.modelview, mul(gRotMat, pos)));
output.Normal = mul((float3x3)mul(ubo.modelview, gRotMat), mul(rotMat, input.Normal));
pos = mul(ubo.modelview, float4(input.Pos.xyz + input.instancePos, 1.0));
float3 lPos = mul((float3x3)ubo.modelview, ubo.lightPos.xyz);
output.LightVec = lPos - pos.xyz;
output.ViewVec = -pos.xyz;
return output;
}
"
36: String "UV"
43: String "instanceScale"
47: String "instanceTexIndex"
51: String "VSInput"
63: String "Pos"
67: String "LightVec"
74: String "VSOutput"
80: String "@main"
83: String "input"
94: String "output"
132: String "s"
142: String "bool"
147: String "modelview"
152: String "lightPos"
156: String "globSpeed"
160: String "UBO"
163: String "ubo"
170: String ""
181: String "c"
197: String "mx"
232: String "my"
266: String "mz"
286: String "rotMat"
299: String "gRotMat"
346: String "locPos"
360: String "pos"
426: String "lPos"
Name 6 "main"
Name 27 "VSInput"
MemberName 27(VSInput) 0 "Pos"
MemberName 27(VSInput) 1 "Normal"
MemberName 27(VSInput) 2 "UV"
MemberName 27(VSInput) 3 "Color"
MemberName 27(VSInput) 4 "instancePos"
MemberName 27(VSInput) 5 "instanceRot"
MemberName 27(VSInput) 6 "instanceScale"
MemberName 27(VSInput) 7 "instanceTexIndex"
Name 61 "VSOutput"
MemberName 61(VSOutput) 0 "Pos"
MemberName 61(VSOutput) 1 "Normal"
MemberName 61(VSOutput) 2 "Color"
MemberName 61(VSOutput) 3 "UV"
MemberName 61(VSOutput) 4 "ViewVec"
MemberName 61(VSOutput) 5 "LightVec"
Name 78 "@main(struct-VSInput-vf3-vf3-vf2-vf3-vf3-vf3-f1-i11;"
Name 77 "input"
Name 92 "output"
Name 130 "s"
Name 145 "UBO"
MemberName 145(UBO) 0 "projection"
MemberName 145(UBO) 1 "modelview"
MemberName 145(UBO) 2 "lightPos"
MemberName 145(UBO) 3 "locSpeed"
MemberName 145(UBO) 4 "globSpeed"
Name 161 "ubo"
MemberName 161(ubo) 0 "ubo"
Name 168 ""
Name 179 "c"
Name 195 "mx"
Name 230 "my"
Name 264 "mz"
Name 284 "rotMat"
Name 297 "gRotMat"
Name 344 "locPos"
Name 358 "pos"
Name 424 "lPos"
Name 465 "input"
Name 467 "input.Pos"
Name 470 "input.Normal"
Name 474 "input.UV"
Name 477 "input.Color"
Name 480 "input.instancePos"
Name 483 "input.instanceRot"
Name 487 "input.instanceScale"
Name 491 "input.instanceTexIndex"
Name 494 "flattenTemp"
Name 495 "param"
Name 499 "@entryPointOutput.Pos"
Name 503 "@entryPointOutput.Normal"
Name 506 "@entryPointOutput.Color"
Name 509 "@entryPointOutput.UV"
Name 512 "@entryPointOutput.ViewVec"
Name 515 "@entryPointOutput.LightVec"
MemberDecorate 145(UBO) 0 RowMajor
MemberDecorate 145(UBO) 0 MatrixStride 16
MemberDecorate 145(UBO) 0 Offset 0
MemberDecorate 145(UBO) 1 RowMajor
MemberDecorate 145(UBO) 1 MatrixStride 16
MemberDecorate 145(UBO) 1 Offset 64
MemberDecorate 145(UBO) 2 Offset 128
MemberDecorate 145(UBO) 3 Offset 144
MemberDecorate 145(UBO) 4 Offset 148
Decorate 161(ubo) Block
MemberDecorate 161(ubo) 0 Offset 0
Decorate 168 Binding 0
Decorate 168 DescriptorSet 0
Decorate 467(input.Pos) Location 0
Decorate 470(input.Normal) Location 1
Decorate 474(input.UV) Location 2
Decorate 477(input.Color) Location 3
Decorate 480(input.instancePos) Location 4
Decorate 483(input.instanceRot) Location 5
Decorate 487(input.instanceScale) Location 6
Decorate 491(input.instanceTexIndex) Location 7
Decorate 499(@entryPointOutput.Pos) BuiltIn Position
Decorate 503(@entryPointOutput.Normal) Location 0
Decorate 506(@entryPointOutput.Color) Location 1
Decorate 509(@entryPointOutput.UV) Location 2
Decorate 512(@entryPointOutput.ViewVec) Location 3
Decorate 515(@entryPointOutput.LightVec) Location 4
4: TypeVoid
5: TypeFunction 4
8: TypeFloat 32
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) 3
19: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 17
20: TypeVector 8(float) 2
21: 11(int) Constant 2
22: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 21
23: TypeInt 32 1
26: 11(int) Constant 4
25: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 24 14 26 16
27(VSInput): TypeStruct 18(fvec3) 18(fvec3) 20(fvec2) 18(fvec3) 18(fvec3) 18(fvec3) 8(float) 23(int)
30: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 35(DebugSource) 2 31
32: 11(int) Constant 35
33: 11(int) Constant 40
28: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 29 19 30 32 33 16 16 17
34: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 29 19 30 32 33 16 16 17
37: 11(int) Constant 30
38: 11(int) Constant 31
35: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 36 22 30 37 38 16 16 17
39: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 29 19 30 32 33 16 16 17
40: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 29 19 30 32 33 16 16 17
41: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 29 19 30 32 33 16 16 17
44: 11(int) Constant 36
45: 11(int) Constant 41
42: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 43 10 30 44 45 16 16 17
48: 11(int) Constant 37
49: 11(int) Constant 42
46: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 47 25 30 48 49 16 16 17
52: 11(int) Constant 1
53: 11(int) Constant 62
55: 11(int) Constant 5
54: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 1(DebugCompilationUnit) 52 26 30 55
50: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 51 52 30 53 16 54 51 16 17 28 34 35 39 40 41 42 46
56: TypePointer Function 27(VSInput)
57: 11(int) Constant 7
58: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 50 57 16
59: TypeVector 8(float) 4
60: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 6(DebugTypeVector) 10 26
61(VSOutput): TypeStruct 59(fvec4) 18(fvec3) 18(fvec3) 18(fvec3) 18(fvec3) 18(fvec3)
64: 11(int) Constant 53
65: 11(int) Constant 13
62: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 63 60 30 64 65 16 16 17
68: 11(int) Constant 58
66: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 67 19 30 68 48 16 16 17
69: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 67 19 30 68 48 16 16 17
70: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 67 19 30 68 48 16 16 17
71: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 67 19 30 68 48 16 16 17
72: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 67 19 30 68 48 16 16 17
73: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 74 52 30 53 16 54 74 16 17 62 66 69 70 71 72
75: TypeFunction 61(VSOutput) 56(ptr)
76: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 8(DebugTypeFunction) 17 73 50
81: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 20(DebugFunction) 80 76 30 53 16 54 80 17 53
82: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 83 50 30 53 16 81 26 52
85: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 31(DebugExpression)
89: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 21(DebugLexicalBlock) 30 16 16 81
90: TypePointer Function 61(VSOutput)
91: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 73 57 16
95: 11(int) Constant 63
93: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 94 73 30 95 16 89 26
99: 8(float) Constant 0
100: 59(fvec4) ConstantComposite 99 99 99 99
101: 18(fvec3) ConstantComposite 99 99 99
102:61(VSOutput) ConstantComposite 100 101 101 101 101 101
103: 23(int) Constant 2
104: 23(int) Constant 3
105: TypePointer Function 18(fvec3)
106: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 19 57 16
109: 11(int) Constant 64
112: TypePointer Function 20(fvec2)
113: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 22 57 16
116: 11(int) Constant 65
118: 23(int) Constant 7
119: TypePointer Function 23(int)
120: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 25 57 16
128: TypePointer Function 8(float)
129: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 57 16
133: 11(int) Constant 68
131: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 132 10 30 133 16 89 26
136: 23(int) Constant 5
139: TypeMatrix 59(fvec4) 4
141: TypeBool
143: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 2(DebugTypeBasic) 142 14 21 16
144: 141(bool) ConstantTrue
140: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 60 26 144
145(UBO): TypeStruct 139 139 59(fvec4) 8(float) 8(float)
148: 11(int) Constant 43
149: 11(int) Constant 20
146: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 147 140 30 148 149 16 16 17
150: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 147 140 30 148 149 16 16 17
153: 11(int) Constant 44
154: 11(int) Constant 17
151: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 152 60 30 153 154 16 16 17
157: 11(int) Constant 46
155: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 156 10 30 157 154 16 16 17
158: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 156 10 30 157 154 16 16 17
159: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 160 52 30 133 16 54 160 16 17 146 150 151 155 158
161(ubo): TypeStruct 145(UBO)
164: 11(int) Constant 49
162: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 11(DebugTypeMember) 163 159 30 164 48 16 16 17
165: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 10(DebugTypeComposite) 163 52 30 133 16 54 163 16 17 162
166: TypePointer Uniform 161(ubo)
167: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 165 21 16
168: 166(ptr) Variable Uniform
171: 11(int) Constant 8
169: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 18(DebugGlobalVariable) 170 165 30 133 16 54 170 168 171
172: 23(int) Constant 0
173: TypePointer Uniform 8(float)
174: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 10 21 16
182: 11(int) Constant 69
180: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 181 10 30 182 16 89 26
191: TypeMatrix 18(fvec3) 3
192: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 108(DebugTypeMatrix) 19 17 144
193: TypePointer Function 191
194: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 192 57 16
198: 11(int) Constant 71
196: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 197 192 30 198 16 89 26
206: 11(int) Constant 72
208: 8(float) Constant 1065353216
216: 11(int) Constant 76
224: 11(int) Constant 77
233: 11(int) Constant 79
231: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 232 192 30 233 16 89 26
241: 11(int) Constant 81
250: 11(int) Constant 84
258: 11(int) Constant 85
267: 11(int) Constant 87
265: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 266 192 30 267 16 89 26
272: 11(int) Constant 88
277: 11(int) Constant 89
287: 11(int) Constant 91
285: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 286 192 30 287 16 89 26
295: TypePointer Function 139
296: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 140 57 16
300: 11(int) Constant 93
298: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 299 140 30 300 16 89 26
305: 11(int) Constant 94
307: 23(int) Constant 4
314: 11(int) Constant 95
322: 11(int) Constant 96
326: TypePointer Function 59(fvec4)
327: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 60 57 16
329: 23(int) Constant 1
330: 59(fvec4) ConstantComposite 99 208 99 99
333: 11(int) Constant 97
336: 11(int) Constant 98
340: 59(fvec4) ConstantComposite 99 99 99 208
343: 11(int) Constant 99
347: 11(int) Constant 101
345: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 346 60 30 347 16 89 26
361: 11(int) Constant 102
359: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 360 60 30 361 16 89 26
366: 23(int) Constant 6
379: 11(int) Constant 104
382: TypePointer Uniform 139
383: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 140 21 16
393: 11(int) Constant 105
412: 11(int) Constant 107
427: 11(int) Constant 108
425: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 26(DebugLocalVariable) 426 19 30 427 16 89 26
430: TypePointer Uniform 59(fvec4)
431: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 3(DebugTypePointer) 60 21 16
447: 11(int) Constant 109
454: 11(int) Constant 110
460: 11(int) Constant 111
466: TypePointer Input 18(fvec3)
467(input.Pos): 466(ptr) Variable Input
470(input.Normal): 466(ptr) Variable Input
473: TypePointer Input 20(fvec2)
474(input.UV): 473(ptr) Variable Input
477(input.Color): 466(ptr) Variable Input
480(input.instancePos): 466(ptr) Variable Input
483(input.instanceRot): 466(ptr) Variable Input
486: TypePointer Input 8(float)
487(input.instanceScale): 486(ptr) Variable Input
490: TypePointer Input 23(int)
491(input.instanceTexIndex): 490(ptr) Variable Input
498: TypePointer Output 59(fvec4)
499(@entryPointOutput.Pos): 498(ptr) Variable Output
502: TypePointer Output 18(fvec3)
503(@entryPointOutput.Normal): 502(ptr) Variable Output
506(@entryPointOutput.Color): 502(ptr) Variable Output
509(@entryPointOutput.UV): 502(ptr) Variable Output
512(@entryPointOutput.ViewVec): 502(ptr) Variable Output
515(@entryPointOutput.LightVec): 502(ptr) Variable Output
6(main): 4 Function None 5
7: Label
465(input): 56(ptr) Variable Function
494(flattenTemp): 90(ptr) Variable Function
495(param): 56(ptr) Variable Function
468: 18(fvec3) Load 467(input.Pos)
469: 105(ptr) AccessChain 465(input) 172
Store 469 468
471: 18(fvec3) Load 470(input.Normal)
472: 105(ptr) AccessChain 465(input) 329
Store 472 471
475: 20(fvec2) Load 474(input.UV)
476: 112(ptr) AccessChain 465(input) 103
Store 476 475
478: 18(fvec3) Load 477(input.Color)
479: 105(ptr) AccessChain 465(input) 104
Store 479 478
481: 18(fvec3) Load 480(input.instancePos)
482: 105(ptr) AccessChain 465(input) 307
Store 482 481
484: 18(fvec3) Load 483(input.instanceRot)
485: 105(ptr) AccessChain 465(input) 136
Store 485 484
488: 8(float) Load 487(input.instanceScale)
489: 128(ptr) AccessChain 465(input) 366
Store 489 488
492: 23(int) Load 491(input.instanceTexIndex)
493: 119(ptr) AccessChain 465(input) 118
Store 493 492
496: 27(VSInput) Load 465(input)
Store 495(param) 496
497:61(VSOutput) FunctionCall 78(@main(struct-VSInput-vf3-vf3-vf2-vf3-vf3-vf3-f1-i11;) 495(param)
Store 494(flattenTemp) 497
500: 326(ptr) AccessChain 494(flattenTemp) 172
501: 59(fvec4) Load 500
Store 499(@entryPointOutput.Pos) 501
504: 105(ptr) AccessChain 494(flattenTemp) 329
505: 18(fvec3) Load 504
Store 503(@entryPointOutput.Normal) 505
507: 105(ptr) AccessChain 494(flattenTemp) 103
508: 18(fvec3) Load 507
Store 506(@entryPointOutput.Color) 508
510: 105(ptr) AccessChain 494(flattenTemp) 104
511: 18(fvec3) Load 510
Store 509(@entryPointOutput.UV) 511
513: 105(ptr) AccessChain 494(flattenTemp) 307
514: 18(fvec3) Load 513
Store 512(@entryPointOutput.ViewVec) 514
516: 105(ptr) AccessChain 494(flattenTemp) 136
517: 18(fvec3) Load 516
Store 515(@entryPointOutput.LightVec) 517
Return
FunctionEnd
78(@main(struct-VSInput-vf3-vf3-vf2-vf3-vf3-vf3-f1-i11;):61(VSOutput) Function None 75
77(input): 56(ptr) FunctionParameter
79: Label
92(output): 90(ptr) Variable Function
130(s): 128(ptr) Variable Function
179(c): 128(ptr) Variable Function
195(mx): 193(ptr) Variable Function
230(my): 193(ptr) Variable Function
264(mz): 193(ptr) Variable Function
284(rotMat): 193(ptr) Variable Function
297(gRotMat): 295(ptr) Variable Function
344(locPos): 326(ptr) Variable Function
358(pos): 326(ptr) Variable Function
424(lPos): 105(ptr) Variable Function
86: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 81
87: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 53 53 16 16
84: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 82 77(input) 85
88: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 101(DebugFunctionDefinition) 81 78(@main(struct-VSInput-vf3-vf3-vf2-vf3-vf3-vf3-f1-i11;)
97: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 23(DebugScope) 89
98: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 95 95 16 16
96: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 93 92(output) 85
Store 92(output) 102
108: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 109 109 16 16
107: 105(ptr) AccessChain 77(input) 104
110: 18(fvec3) Load 107
111: 105(ptr) AccessChain 92(output) 103
Store 111 110
115: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 116 116 16 16
114: 112(ptr) AccessChain 77(input) 103
117: 20(fvec2) Load 114
121: 119(ptr) AccessChain 77(input) 118
122: 23(int) Load 121
123: 8(float) ConvertSToF 122
124: 8(float) CompositeExtract 117 0
125: 8(float) CompositeExtract 117 1
126: 18(fvec3) CompositeConstruct 124 125 123
127: 105(ptr) AccessChain 92(output) 104
Store 127 126
135: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 133 133 16 16
134: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 131 130(s) 85
137: 128(ptr) AccessChain 77(input) 136 16
138: 8(float) Load 137
175: 173(ptr) AccessChain 168 172 104
176: 8(float) Load 175
177: 8(float) FAdd 138 176
178: 8(float) ExtInst 3(GLSL.std.450) 13(Sin) 177
Store 130(s) 178
184: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 182 182 16 16
183: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 180 179(c) 85
185: 128(ptr) AccessChain 77(input) 136 16
186: 8(float) Load 185
187: 173(ptr) AccessChain 168 172 104
188: 8(float) Load 187
189: 8(float) FAdd 186 188
190: 8(float) ExtInst 3(GLSL.std.450) 14(Cos) 189
Store 179(c) 190
200: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 198 198 16 16
199: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 196 195(mx) 85
201: 8(float) Load 179(c)
202: 8(float) Load 130(s)
203: 8(float) FNegate 202
205: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 206 206 16 16
204: 8(float) Load 130(s)
207: 8(float) Load 179(c)
210: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 198 198 16 16
209: 18(fvec3) CompositeConstruct 201 203 99
211: 18(fvec3) CompositeConstruct 204 207 99
212: 18(fvec3) CompositeConstruct 99 99 208
213: 191 CompositeConstruct 209 211 212
Store 195(mx) 213
215: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 216 216 16 16
214: 128(ptr) AccessChain 77(input) 136 52
217: 8(float) Load 214
218: 173(ptr) AccessChain 168 172 104
219: 8(float) Load 218
220: 8(float) FAdd 217 219
221: 8(float) ExtInst 3(GLSL.std.450) 13(Sin) 220
Store 130(s) 221
223: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 224 224 16 16
222: 128(ptr) AccessChain 77(input) 136 52
225: 8(float) Load 222
226: 173(ptr) AccessChain 168 172 104
227: 8(float) Load 226
228: 8(float) FAdd 225 227
229: 8(float) ExtInst 3(GLSL.std.450) 14(Cos) 228
Store 179(c) 229
235: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 233 233 16 16
234: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 231 230(my) 85
236: 8(float) Load 179(c)
237: 8(float) Load 130(s)
238: 8(float) FNegate 237
240: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 241 241 16 16
239: 8(float) Load 130(s)
242: 8(float) Load 179(c)
244: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 233 233 16 16
243: 18(fvec3) CompositeConstruct 236 99 238
245: 18(fvec3) CompositeConstruct 99 208 99
246: 18(fvec3) CompositeConstruct 239 99 242
247: 191 CompositeConstruct 243 245 246
Store 230(my) 247
249: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 250 250 16 16
248: 128(ptr) AccessChain 77(input) 136 21
251: 8(float) Load 248
252: 173(ptr) AccessChain 168 172 104
253: 8(float) Load 252
254: 8(float) FAdd 251 253
255: 8(float) ExtInst 3(GLSL.std.450) 13(Sin) 254
Store 130(s) 255
257: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 258 258 16 16
256: 128(ptr) AccessChain 77(input) 136 21
259: 8(float) Load 256
260: 173(ptr) AccessChain 168 172 104
261: 8(float) Load 260
262: 8(float) FAdd 259 261
263: 8(float) ExtInst 3(GLSL.std.450) 14(Cos) 262
Store 179(c) 263
269: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 267 267 16 16
268: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 265 264(mz) 85
271: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 272 272 16 16
270: 8(float) Load 179(c)
273: 8(float) Load 130(s)
274: 8(float) FNegate 273
276: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 277 277 16 16
275: 8(float) Load 130(s)
278: 8(float) Load 179(c)
280: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 267 267 16 16
279: 18(fvec3) CompositeConstruct 208 99 99
281: 18(fvec3) CompositeConstruct 99 270 274
282: 18(fvec3) CompositeConstruct 99 275 278
283: 191 CompositeConstruct 279 281 282
Store 264(mz) 283
289: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 287 287 16 16
288: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 285 284(rotMat) 85
290: 191 Load 195(mx)
291: 191 Load 230(my)
292: 191 MatrixTimesMatrix 290 291
293: 191 Load 264(mz)
294: 191 MatrixTimesMatrix 292 293
Store 284(rotMat) 294
302: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 300 300 16 16
301: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 298 297(gRotMat) 85
304: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 305 305 16 16
303: 128(ptr) AccessChain 77(input) 136 52
306: 8(float) Load 303
308: 173(ptr) AccessChain 168 172 307
309: 8(float) Load 308
310: 8(float) FAdd 306 309
311: 8(float) ExtInst 3(GLSL.std.450) 13(Sin) 310
Store 130(s) 311
313: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 314 314 16 16
312: 128(ptr) AccessChain 77(input) 136 52
315: 8(float) Load 312
316: 173(ptr) AccessChain 168 172 307
317: 8(float) Load 316
318: 8(float) FAdd 315 317
319: 8(float) ExtInst 3(GLSL.std.450) 14(Cos) 318
Store 179(c) 319
321: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 322 322 16 16
320: 8(float) Load 179(c)
323: 8(float) Load 130(s)
324: 8(float) FNegate 323
325: 59(fvec4) CompositeConstruct 320 99 324 99
328: 326(ptr) AccessChain 297(gRotMat) 172
Store 328 325
332: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 333 333 16 16
331: 326(ptr) AccessChain 297(gRotMat) 329
Store 331 330
335: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 336 336 16 16
334: 8(float) Load 130(s)
337: 8(float) Load 179(c)
338: 59(fvec4) CompositeConstruct 334 99 337 99
339: 326(ptr) AccessChain 297(gRotMat) 103
Store 339 338
342: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 343 343 16 16
341: 326(ptr) AccessChain 297(gRotMat) 104
Store 341 340
349: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 347 347 16 16
348: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 345 344(locPos) 85
350: 105(ptr) AccessChain 77(input) 172
351: 18(fvec3) Load 350
352: 191 Load 284(rotMat)
353: 18(fvec3) VectorTimesMatrix 351 352
354: 8(float) CompositeExtract 353 0
355: 8(float) CompositeExtract 353 1
356: 8(float) CompositeExtract 353 2
357: 59(fvec4) CompositeConstruct 354 355 356 208
Store 344(locPos) 357
363: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 361 361 16 16
362: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 359 358(pos) 85
364: 59(fvec4) Load 344(locPos)
365: 18(fvec3) VectorShuffle 364 364 0 1 2
367: 128(ptr) AccessChain 77(input) 366
368: 8(float) Load 367
369: 18(fvec3) VectorTimesScalar 365 368
370: 105(ptr) AccessChain 77(input) 307
371: 18(fvec3) Load 370
372: 18(fvec3) FAdd 369 371
373: 8(float) CompositeExtract 372 0
374: 8(float) CompositeExtract 372 1
375: 8(float) CompositeExtract 372 2
376: 59(fvec4) CompositeConstruct 373 374 375 208
Store 358(pos) 376
378: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 379 379 16 16
377: 59(fvec4) Load 358(pos)
380: 139 Load 297(gRotMat)
381: 59(fvec4) VectorTimesMatrix 377 380
384: 382(ptr) AccessChain 168 172 329
385: 139 Load 384
386: 59(fvec4) VectorTimesMatrix 381 385
387: 382(ptr) AccessChain 168 172 172
388: 139 Load 387
389: 59(fvec4) VectorTimesMatrix 386 388
390: 326(ptr) AccessChain 92(output) 172
Store 390 389
392: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 393 393 16 16
391: 105(ptr) AccessChain 77(input) 329
394: 18(fvec3) Load 391
395: 191 Load 284(rotMat)
396: 18(fvec3) VectorTimesMatrix 394 395
397: 139 Load 297(gRotMat)
398: 382(ptr) AccessChain 168 172 329
399: 139 Load 398
400: 139 MatrixTimesMatrix 397 399
401: 59(fvec4) CompositeExtract 400 0
402: 18(fvec3) VectorShuffle 401 401 0 1 2
403: 59(fvec4) CompositeExtract 400 1
404: 18(fvec3) VectorShuffle 403 403 0 1 2
405: 59(fvec4) CompositeExtract 400 2
406: 18(fvec3) VectorShuffle 405 405 0 1 2
407: 191 CompositeConstruct 402 404 406
408: 18(fvec3) VectorTimesMatrix 396 407
409: 105(ptr) AccessChain 92(output) 329
Store 409 408
411: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 412 412 16 16
410: 105(ptr) AccessChain 77(input) 172
413: 18(fvec3) Load 410
414: 105(ptr) AccessChain 77(input) 307
415: 18(fvec3) Load 414
416: 18(fvec3) FAdd 413 415
417: 8(float) CompositeExtract 416 0
418: 8(float) CompositeExtract 416 1
419: 8(float) CompositeExtract 416 2
420: 59(fvec4) CompositeConstruct 417 418 419 208
421: 382(ptr) AccessChain 168 172 329
422: 139 Load 421
423: 59(fvec4) VectorTimesMatrix 420 422
Store 358(pos) 423
429: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 427 427 16 16
428: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 28(DebugDeclare) 425 424(lPos) 85
432: 430(ptr) AccessChain 168 172 103
433: 59(fvec4) Load 432
434: 18(fvec3) VectorShuffle 433 433 0 1 2
435: 382(ptr) AccessChain 168 172 329
436: 139 Load 435
437: 59(fvec4) CompositeExtract 436 0
438: 18(fvec3) VectorShuffle 437 437 0 1 2
439: 59(fvec4) CompositeExtract 436 1
440: 18(fvec3) VectorShuffle 439 439 0 1 2
441: 59(fvec4) CompositeExtract 436 2
442: 18(fvec3) VectorShuffle 441 441 0 1 2
443: 191 CompositeConstruct 438 440 442
444: 18(fvec3) VectorTimesMatrix 434 443
Store 424(lPos) 444
446: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 447 447 16 16
445: 18(fvec3) Load 424(lPos)
448: 59(fvec4) Load 358(pos)
449: 18(fvec3) VectorShuffle 448 448 0 1 2
450: 18(fvec3) FSub 445 449
451: 105(ptr) AccessChain 92(output) 136
Store 451 450
453: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 454 454 16 16
452: 59(fvec4) Load 358(pos)
455: 18(fvec3) VectorShuffle 452 452 0 1 2
456: 18(fvec3) FNegate 455
457: 105(ptr) AccessChain 92(output) 307
Store 457 456
459: 4 ExtInst 1(NonSemantic.Shader.DebugInfo.100) 103(DebugLine) 30 460 460 16 16
458:61(VSOutput) Load 92(output)
ReturnValue 458
FunctionEnd