David Gonzalez Martin be2de1d672 Render a texture
2024-11-10 08:48:46 -06:00

550 lines
33 KiB
Plaintext

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