1spv.RayGenShaderArray.rgen 2// Module Version 10000 3// Generated by (magic number): 8000b 4// Id's are bound by 89 5 6 Capability ShaderNonUniformEXT 7 Capability RuntimeDescriptorArrayEXT 8 Capability RayTracingNV 9 Extension "SPV_EXT_descriptor_indexing" 10 Extension "SPV_NV_ray_tracing" 11 1: ExtInstImport "GLSL.std.450" 12 MemoryModel Logical GLSL450 13 EntryPoint RayGenerationKHR 4 "main" 11 21 14 Source GLSL 460 15 SourceExtension "GL_EXT_nonuniform_qualifier" 16 SourceExtension "GL_NV_ray_tracing" 17 Name 4 "main" 18 Name 8 "lx" 19 Name 11 "gl_LaunchIDNV" 20 Name 16 "ly" 21 Name 20 "sx" 22 Name 21 "gl_LaunchSizeNV" 23 Name 24 "sy" 24 Name 30 "accNV0" 25 Name 34 "block" 26 MemberName 34(block) 0 "dir" 27 MemberName 34(block) 1 "origin" 28 MemberName 34(block) 2 "i" 29 Name 36 "" 30 Name 60 "accNV1" 31 Name 88 "payload" 32 Decorate 11(gl_LaunchIDNV) BuiltIn LaunchIdKHR 33 Decorate 21(gl_LaunchSizeNV) BuiltIn LaunchSizeKHR 34 Decorate 30(accNV0) Binding 0 35 Decorate 30(accNV0) DescriptorSet 0 36 Decorate 34(block) BufferBlock 37 MemberDecorate 34(block) 0 Offset 0 38 MemberDecorate 34(block) 1 Offset 16 39 MemberDecorate 34(block) 2 Offset 28 40 Decorate 60(accNV1) Binding 1 41 Decorate 60(accNV1) DescriptorSet 0 42 Decorate 75 DecorationNonUniformEXT 43 Decorate 76 DecorationNonUniformEXT 44 Decorate 77 DecorationNonUniformEXT 45 Decorate 88(payload) Location 0 46 2: TypeVoid 47 3: TypeFunction 2 48 6: TypeInt 32 0 49 7: TypePointer Function 6(int) 50 9: TypeVector 6(int) 3 51 10: TypePointer Input 9(ivec3) 5211(gl_LaunchIDNV): 10(ptr) Variable Input 53 12: 6(int) Constant 0 54 13: TypePointer Input 6(int) 55 17: 6(int) Constant 1 5621(gl_LaunchSizeNV): 10(ptr) Variable Input 57 27: TypeAccelerationStructureKHR 58 28: TypeRuntimeArray 27 59 29: TypePointer UniformConstant 28 60 30(accNV0): 29(ptr) Variable UniformConstant 61 31: TypeFloat 32 62 32: TypeVector 31(float) 3 63 33: TypeInt 32 1 64 34(block): TypeStruct 32(fvec3) 32(fvec3) 33(int) 65 35: TypePointer ShaderRecordBufferKHR 34(block) 66 36: 35(ptr) Variable ShaderRecordBufferKHR 67 37: 33(int) Constant 2 68 38: TypePointer ShaderRecordBufferKHR 33(int) 69 41: TypePointer UniformConstant 27 70 48: 33(int) Constant 1 71 49: TypePointer ShaderRecordBufferKHR 32(fvec3) 72 52: 31(float) Constant 1056964608 73 53: 33(int) Constant 0 74 56: 31(float) Constant 1061158912 75 57: 6(int) Constant 2 76 58: TypeArray 27 57 77 59: TypePointer UniformConstant 58 78 60(accNV1): 59(ptr) Variable UniformConstant 79 86: TypeVector 31(float) 4 80 87: TypePointer RayPayloadKHR 86(fvec4) 81 88(payload): 87(ptr) Variable RayPayloadKHR 82 4(main): 2 Function None 3 83 5: Label 84 8(lx): 7(ptr) Variable Function 85 16(ly): 7(ptr) Variable Function 86 20(sx): 7(ptr) Variable Function 87 24(sy): 7(ptr) Variable Function 88 14: 13(ptr) AccessChain 11(gl_LaunchIDNV) 12 89 15: 6(int) Load 14 90 Store 8(lx) 15 91 18: 13(ptr) AccessChain 11(gl_LaunchIDNV) 17 92 19: 6(int) Load 18 93 Store 16(ly) 19 94 22: 13(ptr) AccessChain 21(gl_LaunchSizeNV) 12 95 23: 6(int) Load 22 96 Store 20(sx) 23 97 25: 13(ptr) AccessChain 21(gl_LaunchSizeNV) 17 98 26: 6(int) Load 25 99 Store 24(sy) 26 100 39: 38(ptr) AccessChain 36 37 101 40: 33(int) Load 39 102 42: 41(ptr) AccessChain 30(accNV0) 40 103 43: 27 Load 42 104 44: 6(int) Load 8(lx) 105 45: 6(int) Load 16(ly) 106 46: 6(int) Load 20(sx) 107 47: 6(int) Load 24(sy) 108 50: 49(ptr) AccessChain 36 48 109 51: 32(fvec3) Load 50 110 54: 49(ptr) AccessChain 36 53 111 55: 32(fvec3) Load 54 112 TraceNV 43 44 45 46 47 12 51 52 55 56 48 113 61: 38(ptr) AccessChain 36 37 114 62: 33(int) Load 61 115 63: 41(ptr) AccessChain 60(accNV1) 62 116 64: 27 Load 63 117 65: 6(int) Load 8(lx) 118 66: 6(int) Load 16(ly) 119 67: 6(int) Load 20(sx) 120 68: 6(int) Load 24(sy) 121 69: 49(ptr) AccessChain 36 48 122 70: 32(fvec3) Load 69 123 71: 49(ptr) AccessChain 36 53 124 72: 32(fvec3) Load 71 125 TraceNV 64 65 66 67 68 12 70 52 72 56 48 126 73: 38(ptr) AccessChain 36 37 127 74: 33(int) Load 73 128 75: 33(int) CopyObject 74 129 76: 41(ptr) AccessChain 30(accNV0) 75 130 77: 27 Load 76 131 78: 6(int) Load 8(lx) 132 79: 6(int) Load 16(ly) 133 80: 6(int) Load 20(sx) 134 81: 6(int) Load 24(sy) 135 82: 49(ptr) AccessChain 36 48 136 83: 32(fvec3) Load 82 137 84: 49(ptr) AccessChain 36 53 138 85: 32(fvec3) Load 84 139 TraceNV 77 78 79 80 81 12 83 52 85 56 48 140 Return 141 FunctionEnd 142