GL_EXT_ray_tracing_position_fetch

This commit is contained in:
Eric Werness
2022-06-08 17:29:38 -07:00
committed by arcady-lunarg
parent d6e9d3bb4e
commit 9d8c7b75c9
18 changed files with 461 additions and 194 deletions

View File

@@ -1,12 +1,14 @@
rayQuery-allOps.comp
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 258
// Id's are bound by 275
Capability Shader
Capability RayQueryKHR
Capability RayTraversalPrimitiveCullingKHR
Capability RayQueryPositionFetchKHR
Extension "SPV_KHR_ray_query"
Extension "SPV_KHR_ray_tracing_position_fetch"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint GLCompute 4 "main"
@@ -14,6 +16,7 @@ rayQuery-allOps.comp
Source GLSL 460
SourceExtension "GL_EXT_ray_flags_primitive_culling"
SourceExtension "GL_EXT_ray_query"
SourceExtension "GL_EXT_ray_tracing_position_fetch"
Name 4 "main"
Name 6 "doSomething("
Name 10 "Ray"
@@ -35,16 +38,17 @@ rayQuery-allOps.comp
Name 83 "_mat3x4"
Name 143 "t"
Name 156 "committedStatus"
Name 241 "o"
Name 243 "d"
Name 253 "Ray"
MemberName 253(Ray) 0 "pos"
MemberName 253(Ray) 1 "tmin"
MemberName 253(Ray) 2 "dir"
MemberName 253(Ray) 3 "tmax"
Name 255 "Rays"
MemberName 255(Rays) 0 "rays"
Name 257 ""
Name 184 "positions"
Name 258 "o"
Name 260 "d"
Name 270 "Ray"
MemberName 270(Ray) 0 "pos"
MemberName 270(Ray) 1 "tmin"
MemberName 270(Ray) 2 "dir"
MemberName 270(Ray) 3 "tmax"
Name 272 "Rays"
MemberName 272(Rays) 0 "rays"
Name 274 ""
MemberDecorate 15(Log) 0 Offset 0
MemberDecorate 15(Log) 1 Offset 4
Decorate 15(Log) BufferBlock
@@ -52,15 +56,15 @@ rayQuery-allOps.comp
Decorate 17 Binding 0
Decorate 50(rtas) DescriptorSet 0
Decorate 50(rtas) Binding 1
MemberDecorate 253(Ray) 0 Offset 0
MemberDecorate 253(Ray) 1 Offset 12
MemberDecorate 253(Ray) 2 Offset 16
MemberDecorate 253(Ray) 3 Offset 28
Decorate 254 ArrayStride 32
MemberDecorate 255(Rays) 0 Offset 0
Decorate 255(Rays) BufferBlock
Decorate 257 DescriptorSet 0
Decorate 257 Binding 2
MemberDecorate 270(Ray) 0 Offset 0
MemberDecorate 270(Ray) 1 Offset 12
MemberDecorate 270(Ray) 2 Offset 16
MemberDecorate 270(Ray) 3 Offset 28
Decorate 271 ArrayStride 32
MemberDecorate 272(Rays) 0 Offset 0
Decorate 272(Rays) BufferBlock
Decorate 274 DescriptorSet 0
Decorate 274 Binding 2
2: TypeVoid
3: TypeFunction 2
8: TypeFloat 32
@@ -105,13 +109,16 @@ rayQuery-allOps.comp
91: TypeVector 8(float) 2
144: 8(float) Constant 1056964608
175: 14(int) Constant 1
198: 14(int) Constant 2
231: 14(int) Constant 256
253(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
254: TypeRuntimeArray 253(Ray)
255(Rays): TypeStruct 254
256: TypePointer Uniform 255(Rays)
257: 256(ptr) Variable Uniform
181: 14(int) Constant 3
182: TypeArray 9(fvec3) 181
183: TypePointer Function 182
215: 14(int) Constant 2
248: 14(int) Constant 256
270(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
271: TypeRuntimeArray 270(Ray)
272(Rays): TypeStruct 271
273: TypePointer Uniform 272(Rays)
274: 273(ptr) Variable Uniform
4(main): 2 Function None 3
5: Label
43(ray): 25(ptr) Variable Function
@@ -120,8 +127,9 @@ rayQuery-allOps.comp
83(_mat3x4): 82(ptr) Variable Function
143(t): 35(ptr) Variable Function
156(committedStatus): 68(ptr) Variable Function
241(o): 29(ptr) Variable Function
243(d): 29(ptr) Variable Function
184(positions): 183(ptr) Variable Function
258(o): 29(ptr) Variable Function
260(d): 29(ptr) Variable Function
44: 10(Ray) FunctionCall 12(makeRayDesc()
Store 43(ray) 44
51: 48 Load 50(rtas)
@@ -303,110 +311,130 @@ rayQuery-allOps.comp
180: 2 FunctionCall 6(doSomething()
Branch 179
179: Label
Branch 162
161: Label
182: 18(int) RayQueryGetIntersectionGeometryIndexKHR 47(rayQuery) 23
183: 66(bool) SGreaterThan 182 19
SelectionMerge 185 None
BranchConditional 183 184 185
184: Label
186: 2 FunctionCall 6(doSomething()
Branch 185
185: Label
187: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
188: 66(bool) SGreaterThan 187 19
185: 182 RayQueryGetIntersectionTriangleVertexPositionsKHR 47(rayQuery) 23
Store 184(positions) 185
186: 35(ptr) AccessChain 184(positions) 19 20
187: 8(float) Load 186
188: 66(bool) FOrdLessThan 187 27
SelectionMerge 190 None
BranchConditional 188 189 190
189: Label
191: 2 FunctionCall 6(doSomething()
191: 35(ptr) AccessChain 184(positions) 31 175
192: 8(float) Load 191
193: 66(bool) FOrdGreaterThan 192 27
Branch 190
190: Label
192: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 23
193: 66(bool) SGreaterThan 192 19
SelectionMerge 195 None
BranchConditional 193 194 195
194: Label
196: 2 FunctionCall 6(doSomething()
Branch 195
195: Label
197: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
199: 8(float) CompositeExtract 197 2
200: 66(bool) FOrdGreaterThan 199 27
194: 66(bool) Phi 188 179 193 189
SelectionMerge 196 None
BranchConditional 194 195 196
195: Label
197: 2 FunctionCall 6(doSomething()
Branch 196
196: Label
Branch 162
161: Label
199: 18(int) RayQueryGetIntersectionGeometryIndexKHR 47(rayQuery) 23
200: 66(bool) SGreaterThan 199 19
SelectionMerge 202 None
BranchConditional 200 201 202
201: Label
203: 2 FunctionCall 6(doSomething()
Branch 202
202: Label
204: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
205: 8(float) CompositeExtract 204 0
206: 66(bool) FOrdGreaterThan 205 27
SelectionMerge 208 None
BranchConditional 206 207 208
207: Label
209: 2 FunctionCall 6(doSomething()
Branch 208
208: Label
210: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
211: 66(bool) SGreaterThan 210 19
SelectionMerge 213 None
BranchConditional 211 212 213
212: Label
214: 2 FunctionCall 6(doSomething()
Branch 213
213: Label
215: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
216: 66(bool) FOrdGreaterThan 215 27
SelectionMerge 218 None
BranchConditional 216 217 218
217: Label
219: 2 FunctionCall 6(doSomething()
Branch 218
218: Label
204: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
205: 66(bool) SGreaterThan 204 19
SelectionMerge 207 None
BranchConditional 205 206 207
206: Label
208: 2 FunctionCall 6(doSomething()
Branch 207
207: Label
209: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 23
210: 66(bool) SGreaterThan 209 19
SelectionMerge 212 None
BranchConditional 210 211 212
211: Label
213: 2 FunctionCall 6(doSomething()
Branch 212
212: Label
214: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
216: 8(float) CompositeExtract 214 2
217: 66(bool) FOrdGreaterThan 216 27
SelectionMerge 219 None
BranchConditional 217 218 219
218: Label
220: 2 FunctionCall 6(doSomething()
Branch 219
219: Label
221: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
222: 8(float) CompositeExtract 221 0
223: 66(bool) FOrdGreaterThan 222 27
SelectionMerge 225 None
BranchConditional 223 224 225
224: Label
226: 2 FunctionCall 6(doSomething()
Branch 225
225: Label
227: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
228: 66(bool) SGreaterThan 227 19
SelectionMerge 230 None
BranchConditional 228 229 230
229: Label
231: 2 FunctionCall 6(doSomething()
Branch 230
230: Label
232: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
233: 66(bool) FOrdGreaterThan 232 27
SelectionMerge 235 None
BranchConditional 233 234 235
234: Label
236: 2 FunctionCall 6(doSomething()
Branch 235
235: Label
Branch 162
162: Label
222: 35(ptr) AccessChain 83(_mat3x4) 19 20
223: 8(float) Load 222
224: 35(ptr) AccessChain 78(_mat4x3) 19 20
225: 8(float) Load 224
226: 66(bool) FOrdEqual 223 225
SelectionMerge 228 None
BranchConditional 226 227 228
227: Label
229: 2 FunctionCall 6(doSomething()
Branch 228
228: Label
230: 14(int) RayQueryGetRayFlagsKHR 47(rayQuery)
232: 66(bool) UGreaterThan 230 231
SelectionMerge 234 None
BranchConditional 232 233 234
233: Label
235: 2 FunctionCall 6(doSomething()
Branch 234
234: Label
236: 8(float) RayQueryGetRayTMinKHR 47(rayQuery)
237: 66(bool) FOrdGreaterThan 236 27
SelectionMerge 239 None
BranchConditional 237 238 239
238: Label
240: 2 FunctionCall 6(doSomething()
Branch 239
239: Label
242: 9(fvec3) RayQueryGetWorldRayOriginKHR 47(rayQuery)
Store 241(o) 242
244: 9(fvec3) RayQueryGetWorldRayDirectionKHR 47(rayQuery)
Store 243(d) 244
245: 35(ptr) AccessChain 241(o) 20
246: 8(float) Load 245
247: 35(ptr) AccessChain 243(d) 198
248: 8(float) Load 247
249: 66(bool) FOrdEqual 246 248
239: 35(ptr) AccessChain 83(_mat3x4) 19 20
240: 8(float) Load 239
241: 35(ptr) AccessChain 78(_mat4x3) 19 20
242: 8(float) Load 241
243: 66(bool) FOrdEqual 240 242
SelectionMerge 245 None
BranchConditional 243 244 245
244: Label
246: 2 FunctionCall 6(doSomething()
Branch 245
245: Label
247: 14(int) RayQueryGetRayFlagsKHR 47(rayQuery)
249: 66(bool) UGreaterThan 247 248
SelectionMerge 251 None
BranchConditional 249 250 251
250: Label
252: 2 FunctionCall 6(doSomething()
Branch 251
251: Label
253: 8(float) RayQueryGetRayTMinKHR 47(rayQuery)
254: 66(bool) FOrdGreaterThan 253 27
SelectionMerge 256 None
BranchConditional 254 255 256
255: Label
257: 2 FunctionCall 6(doSomething()
Branch 256
256: Label
259: 9(fvec3) RayQueryGetWorldRayOriginKHR 47(rayQuery)
Store 258(o) 259
261: 9(fvec3) RayQueryGetWorldRayDirectionKHR 47(rayQuery)
Store 260(d) 261
262: 35(ptr) AccessChain 258(o) 20
263: 8(float) Load 262
264: 35(ptr) AccessChain 260(d) 215
265: 8(float) Load 264
266: 66(bool) FOrdEqual 263 265
SelectionMerge 268 None
BranchConditional 266 267 268
267: Label
269: 2 FunctionCall 6(doSomething()
Branch 268
268: Label
Return
FunctionEnd
6(doSomething(): 2 Function None 3

View File

@@ -1,19 +1,22 @@
spv.ext.AnyHitShader.rahit
// Module Version 10400
// Generated by (magic number): 8000b
// Id's are bound by 108
// Id's are bound by 116
Capability GroupNonUniform
Capability RayTracingKHR
Capability RayTracingPositionFetchKHR
Capability RayCullMaskKHR
Extension "SPV_KHR_ray_cull_mask"
Extension "SPV_KHR_ray_tracing"
Extension "SPV_KHR_ray_tracing_position_fetch"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint AnyHitKHR 4 "main" 11 14 20 23 26 33 36 39 42 47 50 53 58 64 67 70 82 85 99
EntryPoint AnyHitKHR 4 "main" 11 14 20 23 26 33 36 39 42 47 50 53 58 64 67 70 82 88 93 107
Source GLSL 460
SourceExtension "GL_EXT_ray_cull_mask"
SourceExtension "GL_EXT_ray_tracing"
SourceExtension "GL_EXT_ray_tracing_position_fetch"
SourceExtension "GL_KHR_shader_subgroup_basic"
Name 4 "main"
Name 9 "v0"
@@ -52,8 +55,10 @@ spv.ext.AnyHitShader.rahit
Name 78 "v17"
Name 81 "v18"
Name 82 "gl_CullMaskEXT"
Name 85 "incomingPayload"
Name 99 "gl_SubgroupSize"
Name 84 "v19"
Name 88 "gl_HitTriangleVertexPositionsEXT"
Name 93 "incomingPayload"
Name 107 "gl_SubgroupSize"
Decorate 11(gl_LaunchIDEXT) BuiltIn LaunchIdKHR
Decorate 14(gl_LaunchSizeEXT) BuiltIn LaunchSizeKHR
Decorate 20(gl_PrimitiveID) BuiltIn PrimitiveId
@@ -71,10 +76,11 @@ spv.ext.AnyHitShader.rahit
Decorate 67(gl_WorldToObjectEXT) BuiltIn WorldToObjectKHR
Decorate 70(gl_GeometryIndexEXT) BuiltIn RayGeometryIndexKHR
Decorate 82(gl_CullMaskEXT) BuiltIn CullMaskKHR
Decorate 99(gl_SubgroupSize) RelaxedPrecision
Decorate 99(gl_SubgroupSize) BuiltIn SubgroupSize
Decorate 100 RelaxedPrecision
Decorate 101 RelaxedPrecision
Decorate 88(gl_HitTriangleVertexPositionsEXT) BuiltIn HitTriangleVertexPositionsKHR
Decorate 107(gl_SubgroupSize) RelaxedPrecision
Decorate 107(gl_SubgroupSize) BuiltIn SubgroupSize
Decorate 108 RelaxedPrecision
Decorate 109 RelaxedPrecision
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
@@ -115,15 +121,20 @@ spv.ext.AnyHitShader.rahit
73: TypeMatrix 72(fvec4) 3
74: TypePointer Function 73
82(gl_CullMaskEXT): 57(ptr) Variable Input
84: TypePointer IncomingRayPayloadKHR 72(fvec4)
85(incomingPayload): 84(ptr) Variable IncomingRayPayloadKHR
86: 28(float) Constant 1056964608
87: 72(fvec4) ConstantComposite 86 86 86 86
89: 16(int) Constant 1
90: TypeBool
95: 6(int) Constant 0
99(gl_SubgroupSize): 57(ptr) Variable Input
102: TypePointer IncomingRayPayloadKHR 28(float)
85: 6(int) Constant 3
86: TypeArray 29(fvec3) 85
87: TypePointer Input 86
88(gl_HitTriangleVertexPositionsEXT): 87(ptr) Variable Input
89: 16(int) Constant 0
92: TypePointer IncomingRayPayloadKHR 72(fvec4)
93(incomingPayload): 92(ptr) Variable IncomingRayPayloadKHR
94: 28(float) Constant 1056964608
95: 72(fvec4) ConstantComposite 94 94 94 94
97: 16(int) Constant 1
98: TypeBool
103: 6(int) Constant 0
107(gl_SubgroupSize): 57(ptr) Variable Input
110: TypePointer IncomingRayPayloadKHR 28(float)
4(main): 2 Function None 3
5: Label
9(v0): 8(ptr) Variable Function
@@ -145,6 +156,7 @@ spv.ext.AnyHitShader.rahit
75(v16): 74(ptr) Variable Function
78(v17): 74(ptr) Variable Function
81(v18): 55(ptr) Variable Function
84(v19): 30(ptr) Variable Function
12: 7(ivec3) Load 11(gl_LaunchIDEXT)
Store 9(v0) 12
15: 7(ivec3) Load 14(gl_LaunchSizeEXT)
@@ -185,20 +197,23 @@ spv.ext.AnyHitShader.rahit
Store 78(v17) 80
83: 6(int) Load 82(gl_CullMaskEXT)
Store 81(v18) 83
Store 85(incomingPayload) 87
88: 16(int) Load 18(v2)
91: 90(bool) IEqual 88 89
SelectionMerge 93 None
BranchConditional 91 92 93
92: Label
90: 32(ptr) AccessChain 88(gl_HitTriangleVertexPositionsEXT) 89
91: 29(fvec3) Load 90
Store 84(v19) 91
Store 93(incomingPayload) 95
96: 16(int) Load 18(v2)
99: 98(bool) IEqual 96 97
SelectionMerge 101 None
BranchConditional 99 100 101
100: Label
IgnoreIntersectionKHR
93: Label
100: 6(int) Load 99(gl_SubgroupSize)
101: 28(float) ConvertUToF 100
103: 102(ptr) AccessChain 85(incomingPayload) 95
104: 28(float) Load 103
105: 28(float) FAdd 104 101
106: 102(ptr) AccessChain 85(incomingPayload) 95
Store 106 105
101: Label
108: 6(int) Load 107(gl_SubgroupSize)
109: 28(float) ConvertUToF 108
111: 110(ptr) AccessChain 93(incomingPayload) 103
112: 28(float) Load 111
113: 28(float) FAdd 112 109
114: 110(ptr) AccessChain 93(incomingPayload) 103
Store 114 113
TerminateRayKHR
FunctionEnd

View File

@@ -1,18 +1,21 @@
spv.ext.ClosestHitShader.rchit
// Module Version 10400
// Generated by (magic number): 8000b
// Id's are bound by 102
// Id's are bound by 109
Capability RayTracingKHR
Capability RayTracingPositionFetchKHR
Capability RayCullMaskKHR
Extension "SPV_KHR_ray_cull_mask"
Extension "SPV_KHR_ray_tracing"
Extension "SPV_KHR_ray_tracing_position_fetch"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint ClosestHitKHR 4 "main" 11 14 20 23 26 33 36 39 42 47 50 53 58 64 67 70 82 86 99 101
EntryPoint ClosestHitKHR 4 "main" 11 14 20 23 26 33 36 39 42 47 50 53 58 64 67 70 82 88 94 106 108
Source GLSL 460
SourceExtension "GL_EXT_ray_cull_mask"
SourceExtension "GL_EXT_ray_tracing"
SourceExtension "GL_EXT_ray_tracing_position_fetch"
Name 4 "main"
Name 9 "v0"
Name 11 "gl_LaunchIDEXT"
@@ -50,9 +53,11 @@ spv.ext.ClosestHitShader.rchit
Name 78 "v17"
Name 81 "v18"
Name 82 "gl_CullMaskEXT"
Name 86 "accEXT"
Name 99 "incomingPayload"
Name 101 "localPayload"
Name 84 "v19"
Name 88 "gl_HitTriangleVertexPositionsEXT"
Name 94 "accEXT"
Name 106 "incomingPayload"
Name 108 "localPayload"
Decorate 11(gl_LaunchIDEXT) BuiltIn LaunchIdKHR
Decorate 14(gl_LaunchSizeEXT) BuiltIn LaunchSizeKHR
Decorate 20(gl_PrimitiveID) BuiltIn PrimitiveId
@@ -70,8 +75,9 @@ spv.ext.ClosestHitShader.rchit
Decorate 67(gl_WorldToObjectEXT) BuiltIn WorldToObjectKHR
Decorate 70(gl_GeometryIndexEXT) BuiltIn RayGeometryIndexKHR
Decorate 82(gl_CullMaskEXT) BuiltIn CullMaskKHR
Decorate 86(accEXT) DescriptorSet 0
Decorate 86(accEXT) Binding 0
Decorate 88(gl_HitTriangleVertexPositionsEXT) BuiltIn HitTriangleVertexPositionsKHR
Decorate 94(accEXT) DescriptorSet 0
Decorate 94(accEXT) Binding 0
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
@@ -112,23 +118,27 @@ spv.ext.ClosestHitShader.rchit
73: TypeMatrix 72(fvec4) 3
74: TypePointer Function 73
82(gl_CullMaskEXT): 57(ptr) Variable Input
84: TypeAccelerationStructureKHR
85: TypePointer UniformConstant 84
86(accEXT): 85(ptr) Variable UniformConstant
88: 6(int) Constant 0
89: 6(int) Constant 1
90: 6(int) Constant 2
91: 6(int) Constant 3
92: 28(float) Constant 1056964608
93: 29(fvec3) ConstantComposite 92 92 92
94: 28(float) Constant 1065353216
95: 29(fvec3) ConstantComposite 94 94 94
96: 28(float) Constant 1061158912
97: 16(int) Constant 1
98: TypePointer IncomingRayPayloadKHR 72(fvec4)
99(incomingPayload): 98(ptr) Variable IncomingRayPayloadKHR
100: TypePointer RayPayloadKHR 72(fvec4)
101(localPayload): 100(ptr) Variable RayPayloadKHR
85: 6(int) Constant 3
86: TypeArray 29(fvec3) 85
87: TypePointer Input 86
88(gl_HitTriangleVertexPositionsEXT): 87(ptr) Variable Input
89: 16(int) Constant 0
92: TypeAccelerationStructureKHR
93: TypePointer UniformConstant 92
94(accEXT): 93(ptr) Variable UniformConstant
96: 6(int) Constant 0
97: 6(int) Constant 1
98: 6(int) Constant 2
99: 28(float) Constant 1056964608
100: 29(fvec3) ConstantComposite 99 99 99
101: 28(float) Constant 1065353216
102: 29(fvec3) ConstantComposite 101 101 101
103: 28(float) Constant 1061158912
104: 16(int) Constant 1
105: TypePointer IncomingRayPayloadKHR 72(fvec4)
106(incomingPayload): 105(ptr) Variable IncomingRayPayloadKHR
107: TypePointer RayPayloadKHR 72(fvec4)
108(localPayload): 107(ptr) Variable RayPayloadKHR
4(main): 2 Function None 3
5: Label
9(v0): 8(ptr) Variable Function
@@ -150,6 +160,7 @@ spv.ext.ClosestHitShader.rchit
75(v16): 74(ptr) Variable Function
78(v17): 74(ptr) Variable Function
81(v18): 55(ptr) Variable Function
84(v19): 30(ptr) Variable Function
12: 7(ivec3) Load 11(gl_LaunchIDEXT)
Store 9(v0) 12
15: 7(ivec3) Load 14(gl_LaunchSizeEXT)
@@ -190,7 +201,10 @@ spv.ext.ClosestHitShader.rchit
Store 78(v17) 80
83: 6(int) Load 82(gl_CullMaskEXT)
Store 81(v18) 83
87: 84 Load 86(accEXT)
TraceRayKHR 87 88 89 90 91 88 93 92 95 96 99(incomingPayload)
90: 32(ptr) AccessChain 88(gl_HitTriangleVertexPositionsEXT) 89
91: 29(fvec3) Load 90
Store 84(v19) 91
95: 92 Load 94(accEXT)
TraceRayKHR 95 96 97 98 85 96 100 99 102 103 106(incomingPayload)
Return
FunctionEnd