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