1spv.ext.RayGenShaderArray.rgen 2// Module Version 10400 3// Generated by (magic number): 8000a 4// Id's are bound by 117 5 6 Capability Int64 7 Capability RayTracingKHR 8 Capability ShaderNonUniformEXT 9 Capability RuntimeDescriptorArrayEXT 10 Extension "SPV_EXT_descriptor_indexing" 11 Extension "SPV_KHR_ray_tracing" 12 1: ExtInstImport "GLSL.std.450" 13 MemoryModel Logical GLSL450 14 EntryPoint RayGenerationKHR 4 "main" 11 21 30 38 61 65 15 Source GLSL 460 16 SourceExtension "GL_ARB_gpu_shader_int64" 17 SourceExtension "GL_EXT_nonuniform_qualifier" 18 SourceExtension "GL_EXT_ray_tracing" 19 Name 4 "main" 20 Name 8 "lx" 21 Name 11 "gl_LaunchIDEXT" 22 Name 16 "ly" 23 Name 20 "sx" 24 Name 21 "gl_LaunchSizeEXT" 25 Name 24 "sy" 26 Name 30 "accEXT0" 27 Name 36 "block" 28 MemberName 36(block) 0 "dir" 29 MemberName 36(block) 1 "origin" 30 MemberName 36(block) 2 "i" 31 MemberName 36(block) 3 "aHandle32" 32 MemberName 36(block) 4 "aHandle64" 33 Name 38 "" 34 Name 61 "payload" 35 Name 65 "accEXT1" 36 Decorate 11(gl_LaunchIDEXT) BuiltIn LaunchIdKHR 37 Decorate 21(gl_LaunchSizeEXT) BuiltIn LaunchSizeKHR 38 Decorate 30(accEXT0) DescriptorSet 0 39 Decorate 30(accEXT0) Binding 0 40 MemberDecorate 36(block) 0 Offset 0 41 MemberDecorate 36(block) 1 Offset 16 42 MemberDecorate 36(block) 2 Offset 28 43 MemberDecorate 36(block) 3 Offset 32 44 MemberDecorate 36(block) 4 Offset 40 45 Decorate 36(block) Block 46 Decorate 38 DescriptorSet 0 47 Decorate 38 Binding 2 48 Decorate 61(payload) Location 1 49 Decorate 65(accEXT1) DescriptorSet 0 50 Decorate 65(accEXT1) Binding 1 51 Decorate 80 DecorationNonUniformEXT 52 Decorate 81 DecorationNonUniformEXT 53 Decorate 82 DecorationNonUniformEXT 54 2: TypeVoid 55 3: TypeFunction 2 56 6: TypeInt 32 0 57 7: TypePointer Function 6(int) 58 9: TypeVector 6(int) 3 59 10: TypePointer Input 9(ivec3) 6011(gl_LaunchIDEXT): 10(ptr) Variable Input 61 12: 6(int) Constant 0 62 13: TypePointer Input 6(int) 63 17: 6(int) Constant 1 6421(gl_LaunchSizeEXT): 10(ptr) Variable Input 65 27: TypeAccelerationStructureKHR 66 28: TypeRuntimeArray 27 67 29: TypePointer UniformConstant 28 68 30(accEXT0): 29(ptr) Variable UniformConstant 69 31: TypeFloat 32 70 32: TypeVector 31(float) 3 71 33: TypeInt 32 1 72 34: TypeVector 6(int) 2 73 35: TypeInt 64 0 74 36(block): TypeStruct 32(fvec3) 32(fvec3) 33(int) 34(ivec2) 35(int64_t) 75 37: TypePointer ShaderRecordBufferKHR 36(block) 76 38: 37(ptr) Variable ShaderRecordBufferKHR 77 39: 33(int) Constant 2 78 40: TypePointer ShaderRecordBufferKHR 33(int) 79 43: TypePointer UniformConstant 27 80 50: 33(int) Constant 1 81 51: TypePointer ShaderRecordBufferKHR 32(fvec3) 82 54: 31(float) Constant 1056964608 83 55: 33(int) Constant 0 84 58: 31(float) Constant 1061158912 85 59: TypeVector 31(float) 4 86 60: TypePointer RayPayloadKHR 59(fvec4) 87 61(payload): 60(ptr) Variable RayPayloadKHR 88 62: 6(int) Constant 2 89 63: TypeArray 27 62 90 64: TypePointer UniformConstant 63 91 65(accEXT1): 64(ptr) Variable UniformConstant 92 91: 33(int) Constant 3 93 92: TypePointer ShaderRecordBufferKHR 34(ivec2) 94 104: 33(int) Constant 4 95 105: TypePointer ShaderRecordBufferKHR 35(int64_t) 96 4(main): 2 Function None 3 97 5: Label 98 8(lx): 7(ptr) Variable Function 99 16(ly): 7(ptr) Variable Function 100 20(sx): 7(ptr) Variable Function 101 24(sy): 7(ptr) Variable Function 102 14: 13(ptr) AccessChain 11(gl_LaunchIDEXT) 12 103 15: 6(int) Load 14 104 Store 8(lx) 15 105 18: 13(ptr) AccessChain 11(gl_LaunchIDEXT) 17 106 19: 6(int) Load 18 107 Store 16(ly) 19 108 22: 13(ptr) AccessChain 21(gl_LaunchSizeEXT) 12 109 23: 6(int) Load 22 110 Store 20(sx) 23 111 25: 13(ptr) AccessChain 21(gl_LaunchSizeEXT) 17 112 26: 6(int) Load 25 113 Store 24(sy) 26 114 41: 40(ptr) AccessChain 38 39 115 42: 33(int) Load 41 116 44: 43(ptr) AccessChain 30(accEXT0) 42 117 45: 27 Load 44 118 46: 6(int) Load 8(lx) 119 47: 6(int) Load 16(ly) 120 48: 6(int) Load 20(sx) 121 49: 6(int) Load 24(sy) 122 52: 51(ptr) AccessChain 38 50 123 53: 32(fvec3) Load 52 124 56: 51(ptr) AccessChain 38 55 125 57: 32(fvec3) Load 56 126 TraceRayKHR 45 46 47 48 49 12 53 54 57 58 61(payload) 127 66: 40(ptr) AccessChain 38 39 128 67: 33(int) Load 66 129 68: 43(ptr) AccessChain 65(accEXT1) 67 130 69: 27 Load 68 131 70: 6(int) Load 8(lx) 132 71: 6(int) Load 16(ly) 133 72: 6(int) Load 20(sx) 134 73: 6(int) Load 24(sy) 135 74: 51(ptr) AccessChain 38 50 136 75: 32(fvec3) Load 74 137 76: 51(ptr) AccessChain 38 55 138 77: 32(fvec3) Load 76 139 TraceRayKHR 69 70 71 72 73 12 75 54 77 58 61(payload) 140 78: 40(ptr) AccessChain 38 39 141 79: 33(int) Load 78 142 80: 33(int) CopyObject 79 143 81: 43(ptr) AccessChain 30(accEXT0) 80 144 82: 27 Load 81 145 83: 6(int) Load 8(lx) 146 84: 6(int) Load 16(ly) 147 85: 6(int) Load 20(sx) 148 86: 6(int) Load 24(sy) 149 87: 51(ptr) AccessChain 38 50 150 88: 32(fvec3) Load 87 151 89: 51(ptr) AccessChain 38 55 152 90: 32(fvec3) Load 89 153 TraceRayKHR 82 83 84 85 86 12 88 54 90 58 61(payload) 154 93: 92(ptr) AccessChain 38 91 155 94: 34(ivec2) Load 93 156 95: 27 ConvertUToAccelerationStructureKHR 94 157 96: 6(int) Load 8(lx) 158 97: 6(int) Load 16(ly) 159 98: 6(int) Load 20(sx) 160 99: 6(int) Load 24(sy) 161 100: 51(ptr) AccessChain 38 50 162 101: 32(fvec3) Load 100 163 102: 51(ptr) AccessChain 38 55 164 103: 32(fvec3) Load 102 165 TraceRayKHR 95 96 97 98 99 12 101 54 103 58 61(payload) 166 106: 105(ptr) AccessChain 38 104 167 107: 35(int64_t) Load 106 168 108: 27 ConvertUToAccelerationStructureKHR 107 169 109: 6(int) Load 8(lx) 170 110: 6(int) Load 16(ly) 171 111: 6(int) Load 20(sx) 172 112: 6(int) Load 24(sy) 173 113: 51(ptr) AccessChain 38 50 174 114: 32(fvec3) Load 113 175 115: 51(ptr) AccessChain 38 55 176 116: 32(fvec3) Load 115 177 TraceRayKHR 108 109 110 111 112 12 114 54 116 58 61(payload) 178 Return 179 FunctionEnd 180