1hlsl.flattenOpaque.frag 2WARNING: AST will form illegal SPIR-V; need to transform to legalize 3Shader version: 500 4gl_FragCoord origin is upper left 50:? Sequence 60:15 Function Definition: osCall1(struct-os-p11; ( temp 4-component vector of float) 70:15 Function Parameters: 80:15 's' ( in structure{ temp sampler s2D}) 90:? Sequence 100:16 Branch: Return with expression 110:16 texture ( temp 4-component vector of float) 120:16 Construct combined texture-sampler ( temp sampler2D) 130:16 'tex' ( uniform texture2D) 140:16 s2D: direct index for structure ( temp sampler) 150:16 's' ( in structure{ temp sampler s2D}) 160:16 Constant: 170:16 0 (const int) 180:? Constant: 190:? 0.200000 200:? 0.300000 210:20 Function Definition: osCall2(struct-os-p11;vf2; ( temp 4-component vector of float) 220:20 Function Parameters: 230:20 's' ( in structure{ temp sampler s2D}) 240:20 'f2' ( in 2-component vector of float) 250:? Sequence 260:21 Branch: Return with expression 270:21 texture ( temp 4-component vector of float) 280:21 Construct combined texture-sampler ( temp sampler2D) 290:21 'tex' ( uniform texture2D) 300:21 s2D: direct index for structure ( temp sampler) 310:21 's' ( in structure{ temp sampler s2D}) 320:21 Constant: 330:21 0 (const int) 340:21 'f2' ( in 2-component vector of float) 350:25 Function Definition: os2Call1(struct-os2-p1-t211; ( temp 4-component vector of float) 360:25 Function Parameters: 370:25 's' ( in structure{ temp sampler s2D, temp texture2D tex}) 380:? Sequence 390:26 Branch: Return with expression 400:26 texture ( temp 4-component vector of float) 410:26 Construct combined texture-sampler ( temp sampler2D) 420:26 tex: direct index for structure ( temp texture2D) 430:26 's' ( in structure{ temp sampler s2D, temp texture2D tex}) 440:26 Constant: 450:26 1 (const int) 460:26 s2D: direct index for structure ( temp sampler) 470:26 's' ( in structure{ temp sampler s2D, temp texture2D tex}) 480:26 Constant: 490:26 0 (const int) 500:? Constant: 510:? 0.200000 520:? 0.300000 530:30 Function Definition: os2Call2(struct-os2-p1-t211;vf2; ( temp 4-component vector of float) 540:30 Function Parameters: 550:30 's' ( in structure{ temp sampler s2D, temp texture2D tex}) 560:30 'f2' ( in 2-component vector of float) 570:? Sequence 580:31 Branch: Return with expression 590:31 texture ( temp 4-component vector of float) 600:31 Construct combined texture-sampler ( temp sampler2D) 610:31 tex: direct index for structure ( temp texture2D) 620:31 's' ( in structure{ temp sampler s2D, temp texture2D tex}) 630:31 Constant: 640:31 1 (const int) 650:31 s2D: direct index for structure ( temp sampler) 660:31 's' ( in structure{ temp sampler s2D, temp texture2D tex}) 670:31 Constant: 680:31 0 (const int) 690:31 'f2' ( in 2-component vector of float) 700:35 Function Definition: @main( ( temp 4-component vector of float) 710:35 Function Parameters: 720:? Sequence 730:39 Branch: Return with expression 740:38 add ( temp 4-component vector of float) 750:37 add ( temp 4-component vector of float) 760:36 add ( temp 4-component vector of float) 770:36 Function Call: osCall1(struct-os-p11; ( temp 4-component vector of float) 780:36 Comma ( temp structure{ temp sampler s2D}) 790:36 Sequence 800:36 move second child to first child ( temp sampler) 810:36 s2D: direct index for structure ( temp sampler) 820:36 'aggShadow' ( temp structure{ temp sampler s2D}) 830:36 Constant: 840:36 0 (const int) 850:? 's.s2D' ( uniform sampler) 860:36 'aggShadow' ( temp structure{ temp sampler s2D}) 870:37 Function Call: osCall2(struct-os-p11;vf2; ( temp 4-component vector of float) 880:37 Comma ( temp structure{ temp sampler s2D}) 890:37 Sequence 900:37 move second child to first child ( temp sampler) 910:37 s2D: direct index for structure ( temp sampler) 920:37 'aggShadow' ( temp structure{ temp sampler s2D}) 930:37 Constant: 940:37 0 (const int) 950:? 's.s2D' ( uniform sampler) 960:37 'aggShadow' ( temp structure{ temp sampler s2D}) 970:? Constant: 980:? 0.200000 990:? 0.300000 1000:38 Function Call: os2Call1(struct-os2-p1-t211; ( temp 4-component vector of float) 1010:38 Comma ( temp structure{ temp sampler s2D, temp texture2D tex}) 1020:38 Sequence 1030:38 move second child to first child ( temp sampler) 1040:38 s2D: direct index for structure ( temp sampler) 1050:38 'aggShadow' ( temp structure{ temp sampler s2D, temp texture2D tex}) 1060:38 Constant: 1070:38 0 (const int) 1080:? 's2.s2D' ( uniform sampler) 1090:38 move second child to first child ( temp texture2D) 1100:38 tex: direct index for structure ( temp texture2D) 1110:38 'aggShadow' ( temp structure{ temp sampler s2D, temp texture2D tex}) 1120:38 Constant: 1130:38 1 (const int) 1140:? 's2.tex' ( uniform texture2D) 1150:38 'aggShadow' ( temp structure{ temp sampler s2D, temp texture2D tex}) 1160:39 Function Call: os2Call2(struct-os2-p1-t211;vf2; ( temp 4-component vector of float) 1170:39 Comma ( temp structure{ temp sampler s2D, temp texture2D tex}) 1180:39 Sequence 1190:39 move second child to first child ( temp sampler) 1200:39 s2D: direct index for structure ( temp sampler) 1210:39 'aggShadow' ( temp structure{ temp sampler s2D, temp texture2D tex}) 1220:39 Constant: 1230:39 0 (const int) 1240:? 's2.s2D' ( uniform sampler) 1250:39 move second child to first child ( temp texture2D) 1260:39 tex: direct index for structure ( temp texture2D) 1270:39 'aggShadow' ( temp structure{ temp sampler s2D, temp texture2D tex}) 1280:39 Constant: 1290:39 1 (const int) 1300:? 's2.tex' ( uniform texture2D) 1310:39 'aggShadow' ( temp structure{ temp sampler s2D, temp texture2D tex}) 1320:? Constant: 1330:? 0.200000 1340:? 0.300000 1350:35 Function Definition: main( ( temp void) 1360:35 Function Parameters: 1370:? Sequence 1380:35 move second child to first child ( temp 4-component vector of float) 1390:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 1400:35 Function Call: @main( ( temp 4-component vector of float) 1410:? Linker Objects 1420:? 'tex' ( uniform texture2D) 1430:? 's.s2D' ( uniform sampler) 1440:? 's2.s2D' ( uniform sampler) 1450:? 's2.tex' ( uniform texture2D) 1460:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 147 148 149Linked fragment stage: 150 151 152Shader version: 500 153gl_FragCoord origin is upper left 1540:? Sequence 1550:15 Function Definition: osCall1(struct-os-p11; ( temp 4-component vector of float) 1560:15 Function Parameters: 1570:15 's' ( in structure{ temp sampler s2D}) 1580:? Sequence 1590:16 Branch: Return with expression 1600:16 texture ( temp 4-component vector of float) 1610:16 Construct combined texture-sampler ( temp sampler2D) 1620:16 'tex' ( uniform texture2D) 1630:16 s2D: direct index for structure ( temp sampler) 1640:16 's' ( in structure{ temp sampler s2D}) 1650:16 Constant: 1660:16 0 (const int) 1670:? Constant: 1680:? 0.200000 1690:? 0.300000 1700:20 Function Definition: osCall2(struct-os-p11;vf2; ( temp 4-component vector of float) 1710:20 Function Parameters: 1720:20 's' ( in structure{ temp sampler s2D}) 1730:20 'f2' ( in 2-component vector of float) 1740:? Sequence 1750:21 Branch: Return with expression 1760:21 texture ( temp 4-component vector of float) 1770:21 Construct combined texture-sampler ( temp sampler2D) 1780:21 'tex' ( uniform texture2D) 1790:21 s2D: direct index for structure ( temp sampler) 1800:21 's' ( in structure{ temp sampler s2D}) 1810:21 Constant: 1820:21 0 (const int) 1830:21 'f2' ( in 2-component vector of float) 1840:25 Function Definition: os2Call1(struct-os2-p1-t211; ( temp 4-component vector of float) 1850:25 Function Parameters: 1860:25 's' ( in structure{ temp sampler s2D, temp texture2D tex}) 1870:? Sequence 1880:26 Branch: Return with expression 1890:26 texture ( temp 4-component vector of float) 1900:26 Construct combined texture-sampler ( temp sampler2D) 1910:26 tex: direct index for structure ( temp texture2D) 1920:26 's' ( in structure{ temp sampler s2D, temp texture2D tex}) 1930:26 Constant: 1940:26 1 (const int) 1950:26 s2D: direct index for structure ( temp sampler) 1960:26 's' ( in structure{ temp sampler s2D, temp texture2D tex}) 1970:26 Constant: 1980:26 0 (const int) 1990:? Constant: 2000:? 0.200000 2010:? 0.300000 2020:30 Function Definition: os2Call2(struct-os2-p1-t211;vf2; ( temp 4-component vector of float) 2030:30 Function Parameters: 2040:30 's' ( in structure{ temp sampler s2D, temp texture2D tex}) 2050:30 'f2' ( in 2-component vector of float) 2060:? Sequence 2070:31 Branch: Return with expression 2080:31 texture ( temp 4-component vector of float) 2090:31 Construct combined texture-sampler ( temp sampler2D) 2100:31 tex: direct index for structure ( temp texture2D) 2110:31 's' ( in structure{ temp sampler s2D, temp texture2D tex}) 2120:31 Constant: 2130:31 1 (const int) 2140:31 s2D: direct index for structure ( temp sampler) 2150:31 's' ( in structure{ temp sampler s2D, temp texture2D tex}) 2160:31 Constant: 2170:31 0 (const int) 2180:31 'f2' ( in 2-component vector of float) 2190:35 Function Definition: @main( ( temp 4-component vector of float) 2200:35 Function Parameters: 2210:? Sequence 2220:39 Branch: Return with expression 2230:38 add ( temp 4-component vector of float) 2240:37 add ( temp 4-component vector of float) 2250:36 add ( temp 4-component vector of float) 2260:36 Function Call: osCall1(struct-os-p11; ( temp 4-component vector of float) 2270:36 Comma ( temp structure{ temp sampler s2D}) 2280:36 Sequence 2290:36 move second child to first child ( temp sampler) 2300:36 s2D: direct index for structure ( temp sampler) 2310:36 'aggShadow' ( temp structure{ temp sampler s2D}) 2320:36 Constant: 2330:36 0 (const int) 2340:? 's.s2D' ( uniform sampler) 2350:36 'aggShadow' ( temp structure{ temp sampler s2D}) 2360:37 Function Call: osCall2(struct-os-p11;vf2; ( temp 4-component vector of float) 2370:37 Comma ( temp structure{ temp sampler s2D}) 2380:37 Sequence 2390:37 move second child to first child ( temp sampler) 2400:37 s2D: direct index for structure ( temp sampler) 2410:37 'aggShadow' ( temp structure{ temp sampler s2D}) 2420:37 Constant: 2430:37 0 (const int) 2440:? 's.s2D' ( uniform sampler) 2450:37 'aggShadow' ( temp structure{ temp sampler s2D}) 2460:? Constant: 2470:? 0.200000 2480:? 0.300000 2490:38 Function Call: os2Call1(struct-os2-p1-t211; ( temp 4-component vector of float) 2500:38 Comma ( temp structure{ temp sampler s2D, temp texture2D tex}) 2510:38 Sequence 2520:38 move second child to first child ( temp sampler) 2530:38 s2D: direct index for structure ( temp sampler) 2540:38 'aggShadow' ( temp structure{ temp sampler s2D, temp texture2D tex}) 2550:38 Constant: 2560:38 0 (const int) 2570:? 's2.s2D' ( uniform sampler) 2580:38 move second child to first child ( temp texture2D) 2590:38 tex: direct index for structure ( temp texture2D) 2600:38 'aggShadow' ( temp structure{ temp sampler s2D, temp texture2D tex}) 2610:38 Constant: 2620:38 1 (const int) 2630:? 's2.tex' ( uniform texture2D) 2640:38 'aggShadow' ( temp structure{ temp sampler s2D, temp texture2D tex}) 2650:39 Function Call: os2Call2(struct-os2-p1-t211;vf2; ( temp 4-component vector of float) 2660:39 Comma ( temp structure{ temp sampler s2D, temp texture2D tex}) 2670:39 Sequence 2680:39 move second child to first child ( temp sampler) 2690:39 s2D: direct index for structure ( temp sampler) 2700:39 'aggShadow' ( temp structure{ temp sampler s2D, temp texture2D tex}) 2710:39 Constant: 2720:39 0 (const int) 2730:? 's2.s2D' ( uniform sampler) 2740:39 move second child to first child ( temp texture2D) 2750:39 tex: direct index for structure ( temp texture2D) 2760:39 'aggShadow' ( temp structure{ temp sampler s2D, temp texture2D tex}) 2770:39 Constant: 2780:39 1 (const int) 2790:? 's2.tex' ( uniform texture2D) 2800:39 'aggShadow' ( temp structure{ temp sampler s2D, temp texture2D tex}) 2810:? Constant: 2820:? 0.200000 2830:? 0.300000 2840:35 Function Definition: main( ( temp void) 2850:35 Function Parameters: 2860:? Sequence 2870:35 move second child to first child ( temp 4-component vector of float) 2880:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 2890:35 Function Call: @main( ( temp 4-component vector of float) 2900:? Linker Objects 2910:? 'tex' ( uniform texture2D) 2920:? 's.s2D' ( uniform sampler) 2930:? 's2.s2D' ( uniform sampler) 2940:? 's2.tex' ( uniform texture2D) 2950:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 296 297// Module Version 10000 298// Generated by (magic number): 80007 299// Id's are bound by 122 300 301 Capability Shader 302 1: ExtInstImport "GLSL.std.450" 303 MemoryModel Logical GLSL450 304 EntryPoint Fragment 4 "main" 120 305 ExecutionMode 4 OriginUpperLeft 306 Source HLSL 500 307 Name 4 "main" 308 Name 7 "os" 309 MemberName 7(os) 0 "s2D" 310 Name 13 "osCall1(struct-os-p11;" 311 Name 12 "s" 312 Name 20 "osCall2(struct-os-p11;vf2;" 313 Name 18 "s" 314 Name 19 "f2" 315 Name 23 "os2" 316 MemberName 23(os2) 0 "s2D" 317 MemberName 23(os2) 1 "tex" 318 Name 27 "os2Call1(struct-os2-p1-t211;" 319 Name 26 "s" 320 Name 32 "os2Call2(struct-os2-p1-t211;vf2;" 321 Name 30 "s" 322 Name 31 "f2" 323 Name 35 "@main(" 324 Name 38 "tex" 325 Name 80 "aggShadow" 326 Name 82 "s.s2D" 327 Name 85 "param" 328 Name 88 "aggShadow" 329 Name 91 "param" 330 Name 93 "param" 331 Name 96 "aggShadow" 332 Name 97 "s2.s2D" 333 Name 100 "s2.tex" 334 Name 103 "param" 335 Name 107 "aggShadow" 336 Name 112 "param" 337 Name 114 "param" 338 Name 120 "@entryPointOutput" 339 Decorate 38(tex) DescriptorSet 0 340 Decorate 82(s.s2D) DescriptorSet 0 341 Decorate 97(s2.s2D) DescriptorSet 0 342 Decorate 100(s2.tex) DescriptorSet 0 343 Decorate 120(@entryPointOutput) Location 0 344 2: TypeVoid 345 3: TypeFunction 2 346 6: TypeSampler 347 7(os): TypeStruct 6 348 8: TypePointer Function 7(os) 349 9: TypeFloat 32 350 10: TypeVector 9(float) 4 351 11: TypeFunction 10(fvec4) 8(ptr) 352 15: TypeVector 9(float) 2 353 16: TypePointer Function 15(fvec2) 354 17: TypeFunction 10(fvec4) 8(ptr) 16(ptr) 355 22: TypeImage 9(float) 2D sampled format:Unknown 356 23(os2): TypeStruct 6 22 357 24: TypePointer Function 23(os2) 358 25: TypeFunction 10(fvec4) 24(ptr) 359 29: TypeFunction 10(fvec4) 24(ptr) 16(ptr) 360 34: TypeFunction 10(fvec4) 361 37: TypePointer UniformConstant 22 362 38(tex): 37(ptr) Variable UniformConstant 363 40: TypeInt 32 1 364 41: 40(int) Constant 0 365 42: TypePointer Function 6 366 45: TypeSampledImage 22 367 47: 9(float) Constant 1045220557 368 48: 9(float) Constant 1050253722 369 49: 15(fvec2) ConstantComposite 47 48 370 61: 40(int) Constant 1 371 62: TypePointer Function 22 372 81: TypePointer UniformConstant 6 373 82(s.s2D): 81(ptr) Variable UniformConstant 374 97(s2.s2D): 81(ptr) Variable UniformConstant 375 100(s2.tex): 37(ptr) Variable UniformConstant 376 119: TypePointer Output 10(fvec4) 377120(@entryPointOutput): 119(ptr) Variable Output 378 4(main): 2 Function None 3 379 5: Label 380 121: 10(fvec4) FunctionCall 35(@main() 381 Store 120(@entryPointOutput) 121 382 Return 383 FunctionEnd 38413(osCall1(struct-os-p11;): 10(fvec4) Function None 11 385 12(s): 8(ptr) FunctionParameter 386 14: Label 387 39: 22 Load 38(tex) 388 43: 42(ptr) AccessChain 12(s) 41 389 44: 6 Load 43 390 46: 45 SampledImage 39 44 391 50: 10(fvec4) ImageSampleImplicitLod 46 49 392 ReturnValue 50 393 FunctionEnd 39420(osCall2(struct-os-p11;vf2;): 10(fvec4) Function None 17 395 18(s): 8(ptr) FunctionParameter 396 19(f2): 16(ptr) FunctionParameter 397 21: Label 398 53: 22 Load 38(tex) 399 54: 42(ptr) AccessChain 18(s) 41 400 55: 6 Load 54 401 56: 45 SampledImage 53 55 402 57: 15(fvec2) Load 19(f2) 403 58: 10(fvec4) ImageSampleImplicitLod 56 57 404 ReturnValue 58 405 FunctionEnd 40627(os2Call1(struct-os2-p1-t211;): 10(fvec4) Function None 25 407 26(s): 24(ptr) FunctionParameter 408 28: Label 409 63: 62(ptr) AccessChain 26(s) 61 410 64: 22 Load 63 411 65: 42(ptr) AccessChain 26(s) 41 412 66: 6 Load 65 413 67: 45 SampledImage 64 66 414 68: 10(fvec4) ImageSampleImplicitLod 67 49 415 ReturnValue 68 416 FunctionEnd 41732(os2Call2(struct-os2-p1-t211;vf2;): 10(fvec4) Function None 29 418 30(s): 24(ptr) FunctionParameter 419 31(f2): 16(ptr) FunctionParameter 420 33: Label 421 71: 62(ptr) AccessChain 30(s) 61 422 72: 22 Load 71 423 73: 42(ptr) AccessChain 30(s) 41 424 74: 6 Load 73 425 75: 45 SampledImage 72 74 426 76: 15(fvec2) Load 31(f2) 427 77: 10(fvec4) ImageSampleImplicitLod 75 76 428 ReturnValue 77 429 FunctionEnd 430 35(@main(): 10(fvec4) Function None 34 431 36: Label 432 80(aggShadow): 8(ptr) Variable Function 433 85(param): 8(ptr) Variable Function 434 88(aggShadow): 8(ptr) Variable Function 435 91(param): 8(ptr) Variable Function 436 93(param): 16(ptr) Variable Function 437 96(aggShadow): 24(ptr) Variable Function 438 103(param): 24(ptr) Variable Function 439 107(aggShadow): 24(ptr) Variable Function 440 112(param): 24(ptr) Variable Function 441 114(param): 16(ptr) Variable Function 442 83: 6 Load 82(s.s2D) 443 84: 42(ptr) AccessChain 80(aggShadow) 41 444 Store 84 83 445 86: 7(os) Load 80(aggShadow) 446 Store 85(param) 86 447 87: 10(fvec4) FunctionCall 13(osCall1(struct-os-p11;) 85(param) 448 89: 6 Load 82(s.s2D) 449 90: 42(ptr) AccessChain 88(aggShadow) 41 450 Store 90 89 451 92: 7(os) Load 88(aggShadow) 452 Store 91(param) 92 453 Store 93(param) 49 454 94: 10(fvec4) FunctionCall 20(osCall2(struct-os-p11;vf2;) 91(param) 93(param) 455 95: 10(fvec4) FAdd 87 94 456 98: 6 Load 97(s2.s2D) 457 99: 42(ptr) AccessChain 96(aggShadow) 41 458 Store 99 98 459 101: 22 Load 100(s2.tex) 460 102: 62(ptr) AccessChain 96(aggShadow) 61 461 Store 102 101 462 104: 23(os2) Load 96(aggShadow) 463 Store 103(param) 104 464 105: 10(fvec4) FunctionCall 27(os2Call1(struct-os2-p1-t211;) 103(param) 465 106: 10(fvec4) FAdd 95 105 466 108: 6 Load 97(s2.s2D) 467 109: 42(ptr) AccessChain 107(aggShadow) 41 468 Store 109 108 469 110: 22 Load 100(s2.tex) 470 111: 62(ptr) AccessChain 107(aggShadow) 61 471 Store 111 110 472 113: 23(os2) Load 107(aggShadow) 473 Store 112(param) 113 474 Store 114(param) 49 475 115: 10(fvec4) FunctionCall 32(os2Call2(struct-os2-p1-t211;vf2;) 112(param) 114(param) 476 116: 10(fvec4) FAdd 106 115 477 ReturnValue 116 478 FunctionEnd 479