1spv.RayGenShader.rgen 2// Module Version 10000 3// Generated by (magic number): 80007 4// Id's are bound by 61 5 6 Capability RayTracingNV 7 Extension "SPV_NV_ray_tracing" 8 1: ExtInstImport "GLSL.std.450" 9 MemoryModel Logical GLSL450 10 EntryPoint RayGenerationNV 4 "main" 11 21 11 Source GLSL 460 12 SourceExtension "GL_NV_ray_tracing" 13 Name 4 "main" 14 Name 8 "lx" 15 Name 11 "gl_LaunchIDNV" 16 Name 16 "ly" 17 Name 20 "sx" 18 Name 21 "gl_LaunchSizeNV" 19 Name 24 "sy" 20 Name 29 "accNV0" 21 Name 48 "block" 22 MemberName 48(block) 0 "arr" 23 MemberName 48(block) 1 "pad" 24 Name 50 "" 25 Name 56 "payload" 26 Name 60 "accNV1" 27 Decorate 11(gl_LaunchIDNV) BuiltIn LaunchIdNV 28 Decorate 21(gl_LaunchSizeNV) BuiltIn LaunchSizeNV 29 Decorate 29(accNV0) DescriptorSet 0 30 Decorate 29(accNV0) Binding 0 31 Decorate 46 ArrayStride 4 32 MemberDecorate 48(block) 0 Offset 0 33 MemberDecorate 48(block) 1 Offset 16 34 Decorate 48(block) BufferBlock 35 Decorate 56(payload) Location 0 36 Decorate 60(accNV1) DescriptorSet 0 37 Decorate 60(accNV1) Binding 1 38 2: TypeVoid 39 3: TypeFunction 2 40 6: TypeInt 32 0 41 7: TypePointer Function 6(int) 42 9: TypeVector 6(int) 3 43 10: TypePointer Input 9(ivec3) 4411(gl_LaunchIDNV): 10(ptr) Variable Input 45 12: 6(int) Constant 0 46 13: TypePointer Input 6(int) 47 17: 6(int) Constant 1 4821(gl_LaunchSizeNV): 10(ptr) Variable Input 49 27: TypeAccelerationStructureNV 50 28: TypePointer UniformConstant 27 51 29(accNV0): 28(ptr) Variable UniformConstant 52 35: TypeFloat 32 53 36: TypeVector 35(float) 3 54 37: 35(float) Constant 0 55 38: 36(fvec3) ConstantComposite 37 37 37 56 39: 35(float) Constant 1056964608 57 40: 35(float) Constant 1065353216 58 41: 36(fvec3) ConstantComposite 40 40 40 59 42: 35(float) Constant 1061158912 60 43: TypeInt 32 1 61 44: 43(int) Constant 1 62 45: 6(int) Constant 4 63 46: TypeArray 35(float) 45 64 47: TypeVector 35(float) 4 65 48(block): TypeStruct 46 47(fvec4) 66 49: TypePointer ShaderRecordBufferNV 48(block) 67 50: 49(ptr) Variable ShaderRecordBufferNV 68 51: 43(int) Constant 0 69 52: 43(int) Constant 3 70 53: TypePointer ShaderRecordBufferNV 35(float) 71 55: TypePointer RayPayloadNV 47(fvec4) 72 56(payload): 55(ptr) Variable RayPayloadNV 73 58: TypePointer ShaderRecordBufferNV 47(fvec4) 74 60(accNV1): 28(ptr) Variable UniformConstant 75 4(main): 2 Function None 3 76 5: Label 77 8(lx): 7(ptr) Variable Function 78 16(ly): 7(ptr) Variable Function 79 20(sx): 7(ptr) Variable Function 80 24(sy): 7(ptr) Variable Function 81 14: 13(ptr) AccessChain 11(gl_LaunchIDNV) 12 82 15: 6(int) Load 14 83 Store 8(lx) 15 84 18: 13(ptr) AccessChain 11(gl_LaunchIDNV) 17 85 19: 6(int) Load 18 86 Store 16(ly) 19 87 22: 13(ptr) AccessChain 21(gl_LaunchSizeNV) 12 88 23: 6(int) Load 22 89 Store 20(sx) 23 90 25: 13(ptr) AccessChain 21(gl_LaunchSizeNV) 17 91 26: 6(int) Load 25 92 Store 24(sy) 26 93 30: 27 Load 29(accNV0) 94 31: 6(int) Load 8(lx) 95 32: 6(int) Load 16(ly) 96 33: 6(int) Load 20(sx) 97 34: 6(int) Load 24(sy) 98 TraceNV 30 31 32 33 34 12 38 39 41 42 44 99 54: 53(ptr) AccessChain 50 51 52 100 Store 54 40 101 57: 47(fvec4) Load 56(payload) 102 59: 58(ptr) AccessChain 50 44 103 Store 59 57 104 Return 105 FunctionEnd 106