| spv.RayGenShader11.rgen |
| // Module Version 10300 |
| // Generated by (magic number): 80007 |
| // Id's are bound by 60 |
| |
| Capability RayTracingNV |
| Extension "SPV_NV_ray_tracing" |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint RayGenerationNV 4 "main" 11 21 |
| Source GLSL 460 |
| SourceExtension "GL_NV_ray_tracing" |
| Name 4 "main" |
| Name 8 "lx" |
| Name 11 "gl_LaunchIDNV" |
| Name 16 "ly" |
| Name 20 "sx" |
| Name 21 "gl_LaunchSizeNV" |
| Name 24 "sy" |
| Name 29 "accNV" |
| Name 48 "block" |
| MemberName 48(block) 0 "arr" |
| MemberName 48(block) 1 "pad" |
| Name 50 "" |
| Name 56 "payload" |
| Decorate 11(gl_LaunchIDNV) BuiltIn LaunchIdNV |
| Decorate 21(gl_LaunchSizeNV) BuiltIn LaunchSizeNV |
| Decorate 29(accNV) DescriptorSet 0 |
| Decorate 29(accNV) Binding 0 |
| Decorate 46 ArrayStride 4 |
| MemberDecorate 48(block) 0 Offset 0 |
| MemberDecorate 48(block) 1 Offset 16 |
| Decorate 48(block) Block |
| Decorate 56(payload) Location 0 |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeInt 32 0 |
| 7: TypePointer Function 6(int) |
| 9: TypeVector 6(int) 3 |
| 10: TypePointer Input 9(ivec3) |
| 11(gl_LaunchIDNV): 10(ptr) Variable Input |
| 12: 6(int) Constant 0 |
| 13: TypePointer Input 6(int) |
| 17: 6(int) Constant 1 |
| 21(gl_LaunchSizeNV): 10(ptr) Variable Input |
| 27: TypeAccelerationStructureNV |
| 28: TypePointer UniformConstant 27 |
| 29(accNV): 28(ptr) Variable UniformConstant |
| 35: TypeFloat 32 |
| 36: TypeVector 35(float) 3 |
| 37: 35(float) Constant 0 |
| 38: 36(fvec3) ConstantComposite 37 37 37 |
| 39: 35(float) Constant 1056964608 |
| 40: 35(float) Constant 1065353216 |
| 41: 36(fvec3) ConstantComposite 40 40 40 |
| 42: 35(float) Constant 1061158912 |
| 43: TypeInt 32 1 |
| 44: 43(int) Constant 1 |
| 45: 6(int) Constant 4 |
| 46: TypeArray 35(float) 45 |
| 47: TypeVector 35(float) 4 |
| 48(block): TypeStruct 46 47(fvec4) |
| 49: TypePointer ShaderRecordBufferNV 48(block) |
| 50: 49(ptr) Variable ShaderRecordBufferNV |
| 51: 43(int) Constant 0 |
| 52: 43(int) Constant 3 |
| 53: TypePointer ShaderRecordBufferNV 35(float) |
| 55: TypePointer RayPayloadNV 47(fvec4) |
| 56(payload): 55(ptr) Variable RayPayloadNV |
| 58: TypePointer ShaderRecordBufferNV 47(fvec4) |
| 4(main): 2 Function None 3 |
| 5: Label |
| 8(lx): 7(ptr) Variable Function |
| 16(ly): 7(ptr) Variable Function |
| 20(sx): 7(ptr) Variable Function |
| 24(sy): 7(ptr) Variable Function |
| 14: 13(ptr) AccessChain 11(gl_LaunchIDNV) 12 |
| 15: 6(int) Load 14 |
| Store 8(lx) 15 |
| 18: 13(ptr) AccessChain 11(gl_LaunchIDNV) 17 |
| 19: 6(int) Load 18 |
| Store 16(ly) 19 |
| 22: 13(ptr) AccessChain 21(gl_LaunchSizeNV) 12 |
| 23: 6(int) Load 22 |
| Store 20(sx) 23 |
| 25: 13(ptr) AccessChain 21(gl_LaunchSizeNV) 17 |
| 26: 6(int) Load 25 |
| Store 24(sy) 26 |
| 30: 27 Load 29(accNV) |
| 31: 6(int) Load 8(lx) |
| 32: 6(int) Load 16(ly) |
| 33: 6(int) Load 20(sx) |
| 34: 6(int) Load 24(sy) |
| TraceNV 30 31 32 33 34 12 38 39 41 42 44 |
| 54: 53(ptr) AccessChain 50 51 52 |
| Store 54 40 |
| 57: 47(fvec4) Load 56(payload) |
| 59: 58(ptr) AccessChain 50 44 |
| Store 59 57 |
| Return |
| FunctionEnd |