You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
432 lines
22 KiB
432 lines
22 KiB
rayQuery-allOps.frag
|
|
// Module Version 10000
|
|
// Generated by (magic number): 8000a
|
|
// Id's are bound by 257
|
|
|
|
Capability Shader
|
|
Capability RayQueryKHR
|
|
Extension "SPV_KHR_ray_query"
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main"
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Source GLSL 460
|
|
SourceExtension "GL_EXT_ray_query"
|
|
SourceExtension "GL_NV_ray_tracing"
|
|
Name 4 "main"
|
|
Name 6 "doSomething("
|
|
Name 10 "Ray"
|
|
MemberName 10(Ray) 0 "pos"
|
|
MemberName 10(Ray) 1 "tmin"
|
|
MemberName 10(Ray) 2 "dir"
|
|
MemberName 10(Ray) 3 "tmax"
|
|
Name 12 "makeRayDesc("
|
|
Name 15 "Log"
|
|
MemberName 15(Log) 0 "x"
|
|
MemberName 15(Log) 1 "y"
|
|
Name 17 ""
|
|
Name 26 "ray"
|
|
Name 43 "ray"
|
|
Name 47 "rayQuery"
|
|
Name 50 "rtas"
|
|
Name 69 "candidateType"
|
|
Name 78 "_mat4x3"
|
|
Name 83 "_mat3x4"
|
|
Name 143 "t"
|
|
Name 156 "committedStatus"
|
|
Name 240 "o"
|
|
Name 242 "d"
|
|
Name 252 "Ray"
|
|
MemberName 252(Ray) 0 "pos"
|
|
MemberName 252(Ray) 1 "tmin"
|
|
MemberName 252(Ray) 2 "dir"
|
|
MemberName 252(Ray) 3 "tmax"
|
|
Name 254 "Rays"
|
|
MemberName 254(Rays) 0 "rays"
|
|
Name 256 ""
|
|
MemberDecorate 15(Log) 0 Offset 0
|
|
MemberDecorate 15(Log) 1 Offset 4
|
|
Decorate 15(Log) BufferBlock
|
|
Decorate 17 DescriptorSet 0
|
|
Decorate 17 Binding 0
|
|
Decorate 50(rtas) DescriptorSet 0
|
|
Decorate 50(rtas) Binding 1
|
|
MemberDecorate 252(Ray) 0 Offset 0
|
|
MemberDecorate 252(Ray) 1 Offset 12
|
|
MemberDecorate 252(Ray) 2 Offset 16
|
|
MemberDecorate 252(Ray) 3 Offset 28
|
|
Decorate 253 ArrayStride 32
|
|
MemberDecorate 254(Rays) 0 Offset 0
|
|
Decorate 254(Rays) BufferBlock
|
|
Decorate 256 DescriptorSet 0
|
|
Decorate 256 Binding 2
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
8: TypeFloat 32
|
|
9: TypeVector 8(float) 3
|
|
10(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
|
|
11: TypeFunction 10(Ray)
|
|
14: TypeInt 32 0
|
|
15(Log): TypeStruct 14(int) 14(int)
|
|
16: TypePointer Uniform 15(Log)
|
|
17: 16(ptr) Variable Uniform
|
|
18: TypeInt 32 1
|
|
19: 18(int) Constant 0
|
|
20: 14(int) Constant 0
|
|
21: TypePointer Uniform 14(int)
|
|
23: 18(int) Constant 1
|
|
25: TypePointer Function 10(Ray)
|
|
27: 8(float) Constant 0
|
|
28: 9(fvec3) ConstantComposite 27 27 27
|
|
29: TypePointer Function 9(fvec3)
|
|
31: 18(int) Constant 2
|
|
32: 8(float) Constant 1065353216
|
|
33: 9(fvec3) ConstantComposite 32 27 27
|
|
35: TypePointer Function 8(float)
|
|
37: 18(int) Constant 3
|
|
38: 8(float) Constant 1176255488
|
|
45: TypeRayQueryKHR
|
|
46: TypePointer Private 45
|
|
47(rayQuery): 46(ptr) Variable Private
|
|
48: TypeAccelerationStructureKHR
|
|
49: TypePointer UniformConstant 48
|
|
50(rtas): 49(ptr) Variable UniformConstant
|
|
52: 14(int) Constant 255
|
|
66: TypeBool
|
|
68: TypePointer Function 14(int)
|
|
70: 66(bool) ConstantFalse
|
|
76: TypeMatrix 9(fvec3) 4
|
|
77: TypePointer Function 76
|
|
80: TypeVector 8(float) 4
|
|
81: TypeMatrix 80(fvec4) 3
|
|
82: TypePointer Function 81
|
|
86: 66(bool) ConstantTrue
|
|
91: TypeVector 8(float) 2
|
|
144: 8(float) Constant 1056964608
|
|
175: 14(int) Constant 1
|
|
198: 14(int) Constant 2
|
|
252(Ray): TypeStruct 9(fvec3) 8(float) 9(fvec3) 8(float)
|
|
253: TypeRuntimeArray 252(Ray)
|
|
254(Rays): TypeStruct 253
|
|
255: TypePointer Uniform 254(Rays)
|
|
256: 255(ptr) Variable Uniform
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
43(ray): 25(ptr) Variable Function
|
|
69(candidateType): 68(ptr) Variable Function
|
|
78(_mat4x3): 77(ptr) Variable Function
|
|
83(_mat3x4): 82(ptr) Variable Function
|
|
143(t): 35(ptr) Variable Function
|
|
156(committedStatus): 68(ptr) Variable Function
|
|
240(o): 29(ptr) Variable Function
|
|
242(d): 29(ptr) Variable Function
|
|
44: 10(Ray) FunctionCall 12(makeRayDesc()
|
|
Store 43(ray) 44
|
|
51: 48 Load 50(rtas)
|
|
53: 29(ptr) AccessChain 43(ray) 19
|
|
54: 9(fvec3) Load 53
|
|
55: 35(ptr) AccessChain 43(ray) 23
|
|
56: 8(float) Load 55
|
|
57: 29(ptr) AccessChain 43(ray) 31
|
|
58: 9(fvec3) Load 57
|
|
59: 35(ptr) AccessChain 43(ray) 37
|
|
60: 8(float) Load 59
|
|
RayQueryInitializeKHR 47(rayQuery) 51 20 52 54 56 58 60
|
|
Branch 61
|
|
61: Label
|
|
LoopMerge 63 64 None
|
|
Branch 65
|
|
65: Label
|
|
67: 66(bool) RayQueryProceedKHR 47(rayQuery)
|
|
BranchConditional 67 62 63
|
|
62: Label
|
|
71: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 19
|
|
Store 69(candidateType) 71
|
|
72: 14(int) Load 69(candidateType)
|
|
SelectionMerge 75 None
|
|
Switch 72 75
|
|
case 0: 73
|
|
case 1: 74
|
|
73: Label
|
|
RayQueryTerminateKHR 47(rayQuery)
|
|
79: 76 RayQueryGetIntersectionObjectToWorldKHR 47(rayQuery) 19
|
|
Store 78(_mat4x3) 79
|
|
84: 76 Load 78(_mat4x3)
|
|
85: 81 Transpose 84
|
|
Store 83(_mat3x4) 85
|
|
RayQueryConfirmIntersectionKHR 47(rayQuery)
|
|
87: 66(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
|
|
SelectionMerge 89 None
|
|
BranchConditional 87 88 89
|
|
88: Label
|
|
90: 2 FunctionCall 6(doSomething()
|
|
Branch 89
|
|
89: Label
|
|
92: 91(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
|
|
93: 8(float) CompositeExtract 92 0
|
|
94: 66(bool) FOrdEqual 93 27
|
|
SelectionMerge 96 None
|
|
BranchConditional 94 95 96
|
|
95: Label
|
|
97: 2 FunctionCall 6(doSomething()
|
|
Branch 96
|
|
96: Label
|
|
98: 18(int) RayQueryGetIntersectionInstanceCustomIndexKHR 47(rayQuery) 23
|
|
99: 66(bool) SGreaterThan 98 19
|
|
SelectionMerge 101 None
|
|
BranchConditional 99 100 101
|
|
100: Label
|
|
102: 2 FunctionCall 6(doSomething()
|
|
Branch 101
|
|
101: Label
|
|
103: 18(int) RayQueryGetIntersectionInstanceIdKHR 47(rayQuery) 23
|
|
104: 66(bool) SGreaterThan 103 19
|
|
SelectionMerge 106 None
|
|
BranchConditional 104 105 106
|
|
105: Label
|
|
107: 2 FunctionCall 6(doSomething()
|
|
Branch 106
|
|
106: Label
|
|
108: 9(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 47(rayQuery) 23
|
|
109: 8(float) CompositeExtract 108 0
|
|
110: 66(bool) FOrdGreaterThan 109 27
|
|
SelectionMerge 112 None
|
|
BranchConditional 110 111 112
|
|
111: Label
|
|
113: 2 FunctionCall 6(doSomething()
|
|
Branch 112
|
|
112: Label
|
|
114: 9(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 47(rayQuery) 23
|
|
115: 8(float) CompositeExtract 114 0
|
|
116: 66(bool) FOrdGreaterThan 115 27
|
|
SelectionMerge 118 None
|
|
BranchConditional 116 117 118
|
|
117: Label
|
|
119: 2 FunctionCall 6(doSomething()
|
|
Branch 118
|
|
118: Label
|
|
120: 18(int) RayQueryGetIntersectionPrimitiveIndexKHR 47(rayQuery) 23
|
|
121: 66(bool) SGreaterThan 120 19
|
|
SelectionMerge 123 None
|
|
BranchConditional 121 122 123
|
|
122: Label
|
|
124: 2 FunctionCall 6(doSomething()
|
|
Branch 123
|
|
123: Label
|
|
125: 8(float) RayQueryGetIntersectionTKHR 47(rayQuery) 23
|
|
126: 66(bool) FOrdGreaterThan 125 27
|
|
SelectionMerge 128 None
|
|
BranchConditional 126 127 128
|
|
127: Label
|
|
129: 2 FunctionCall 6(doSomething()
|
|
Branch 128
|
|
128: Label
|
|
130: 14(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 47(rayQuery) 23
|
|
131: 66(bool) UGreaterThan 130 20
|
|
SelectionMerge 133 None
|
|
BranchConditional 131 132 133
|
|
132: Label
|
|
134: 2 FunctionCall 6(doSomething()
|
|
Branch 133
|
|
133: Label
|
|
Branch 75
|
|
74: Label
|
|
136: 76 RayQueryGetIntersectionObjectToWorldKHR 47(rayQuery) 19
|
|
Store 78(_mat4x3) 136
|
|
137: 76 Load 78(_mat4x3)
|
|
138: 81 Transpose 137
|
|
Store 83(_mat3x4) 138
|
|
139: 66(bool) RayQueryGetIntersectionCandidateAABBOpaqueKHR 47(rayQuery)
|
|
SelectionMerge 141 None
|
|
BranchConditional 139 140 141
|
|
140: Label
|
|
142: 2 FunctionCall 6(doSomething()
|
|
Branch 141
|
|
141: Label
|
|
Store 143(t) 144
|
|
145: 8(float) Load 143(t)
|
|
RayQueryGenerateIntersectionKHR 47(rayQuery) 145
|
|
RayQueryTerminateKHR 47(rayQuery)
|
|
Branch 75
|
|
75: Label
|
|
Branch 64
|
|
64: Label
|
|
Branch 61
|
|
63: Label
|
|
148: 35(ptr) AccessChain 83(_mat3x4) 19 20
|
|
149: 8(float) Load 148
|
|
150: 35(ptr) AccessChain 78(_mat4x3) 19 20
|
|
151: 8(float) Load 150
|
|
152: 66(bool) FOrdEqual 149 151
|
|
SelectionMerge 154 None
|
|
BranchConditional 152 153 154
|
|
153: Label
|
|
155: 2 FunctionCall 6(doSomething()
|
|
Branch 154
|
|
154: Label
|
|
157: 14(int) RayQueryGetIntersectionTypeKHR 47(rayQuery) 23
|
|
Store 156(committedStatus) 157
|
|
158: 14(int) Load 156(committedStatus)
|
|
SelectionMerge 162 None
|
|
Switch 158 162
|
|
case 0: 159
|
|
case 1: 160
|
|
case 2: 161
|
|
159: Label
|
|
163: 76 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 19
|
|
Store 78(_mat4x3) 163
|
|
164: 76 Load 78(_mat4x3)
|
|
165: 81 Transpose 164
|
|
Store 83(_mat3x4) 165
|
|
Branch 162
|
|
160: Label
|
|
167: 76 RayQueryGetIntersectionWorldToObjectKHR 47(rayQuery) 23
|
|
Store 78(_mat4x3) 167
|
|
168: 76 Load 78(_mat4x3)
|
|
169: 81 Transpose 168
|
|
Store 83(_mat3x4) 169
|
|
170: 66(bool) RayQueryGetIntersectionFrontFaceKHR 47(rayQuery) 23
|
|
SelectionMerge 172 None
|
|
BranchConditional 170 171 172
|
|
171: Label
|
|
173: 2 FunctionCall 6(doSomething()
|
|
Branch 172
|
|
172: Label
|
|
174: 91(fvec2) RayQueryGetIntersectionBarycentricsKHR 47(rayQuery) 23
|
|
176: 8(float) CompositeExtract 174 1
|
|
177: 66(bool) FOrdEqual 176 27
|
|
SelectionMerge 179 None
|
|
BranchConditional 177 178 179
|
|
178: Label
|
|
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
|
|
SelectionMerge 190 None
|
|
BranchConditional 188 189 190
|
|
189: Label
|
|
191: 2 FunctionCall 6(doSomething()
|
|
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
|
|
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
|
|
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)
|
|
231: 66(bool) UGreaterThan 230 20
|
|
SelectionMerge 233 None
|
|
BranchConditional 231 232 233
|
|
232: Label
|
|
234: 2 FunctionCall 6(doSomething()
|
|
Branch 233
|
|
233: Label
|
|
235: 8(float) RayQueryGetRayTMinKHR 47(rayQuery)
|
|
236: 66(bool) FOrdGreaterThan 235 27
|
|
SelectionMerge 238 None
|
|
BranchConditional 236 237 238
|
|
237: Label
|
|
239: 2 FunctionCall 6(doSomething()
|
|
Branch 238
|
|
238: Label
|
|
241: 9(fvec3) RayQueryGetWorldRayOriginKHR 47(rayQuery)
|
|
Store 240(o) 241
|
|
243: 9(fvec3) RayQueryGetWorldRayDirectionKHR 47(rayQuery)
|
|
Store 242(d) 243
|
|
244: 35(ptr) AccessChain 240(o) 20
|
|
245: 8(float) Load 244
|
|
246: 35(ptr) AccessChain 242(d) 198
|
|
247: 8(float) Load 246
|
|
248: 66(bool) FOrdEqual 245 247
|
|
SelectionMerge 250 None
|
|
BranchConditional 248 249 250
|
|
249: Label
|
|
251: 2 FunctionCall 6(doSomething()
|
|
Branch 250
|
|
250: Label
|
|
Return
|
|
FunctionEnd
|
|
6(doSomething(): 2 Function None 3
|
|
7: Label
|
|
22: 21(ptr) AccessChain 17 19
|
|
Store 22 20
|
|
24: 21(ptr) AccessChain 17 23
|
|
Store 24 20
|
|
Return
|
|
FunctionEnd
|
|
12(makeRayDesc(): 10(Ray) Function None 11
|
|
13: Label
|
|
26(ray): 25(ptr) Variable Function
|
|
30: 29(ptr) AccessChain 26(ray) 19
|
|
Store 30 28
|
|
34: 29(ptr) AccessChain 26(ray) 31
|
|
Store 34 33
|
|
36: 35(ptr) AccessChain 26(ray) 23
|
|
Store 36 27
|
|
39: 35(ptr) AccessChain 26(ray) 37
|
|
Store 39 38
|
|
40: 10(Ray) Load 26(ray)
|
|
ReturnValue 40
|
|
FunctionEnd
|