blob: 4a7178e9c21d77e435e858d8c000b5d521b98413 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
|
spv.ext.ClosestHitShader.rchit
// Module Version 10400
// Generated by (magic number): 8000a
// Id's are bound by 102
Capability RayTracingKHR
Capability RayCullMaskKHR
Extension "SPV_KHR_ray_cull_mask"
Extension "SPV_KHR_ray_tracing"
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
Source GLSL 460
SourceExtension "GL_EXT_ray_cull_mask"
SourceExtension "GL_EXT_ray_tracing"
Name 4 "main"
Name 9 "v0"
Name 11 "gl_LaunchIDEXT"
Name 13 "v1"
Name 14 "gl_LaunchSizeEXT"
Name 18 "v2"
Name 20 "gl_PrimitiveID"
Name 22 "v3"
Name 23 "gl_InstanceID"
Name 25 "v4"
Name 26 "gl_InstanceCustomIndexEXT"
Name 31 "v5"
Name 33 "gl_WorldRayOriginEXT"
Name 35 "v6"
Name 36 "gl_WorldRayDirectionEXT"
Name 38 "v7"
Name 39 "gl_ObjectRayOriginEXT"
Name 41 "v8"
Name 42 "gl_ObjectRayDirectionEXT"
Name 45 "v9"
Name 47 "gl_RayTminEXT"
Name 49 "v10"
Name 50 "gl_RayTmaxEXT"
Name 52 "v11"
Name 53 "gl_HitTEXT"
Name 56 "v12"
Name 58 "gl_HitKindEXT"
Name 62 "v13"
Name 64 "gl_ObjectToWorldEXT"
Name 66 "v14"
Name 67 "gl_WorldToObjectEXT"
Name 69 "v15"
Name 70 "gl_GeometryIndexEXT"
Name 75 "v16"
Name 78 "v17"
Name 81 "v18"
Name 82 "gl_CullMaskEXT"
Name 86 "accEXT"
Name 99 "incomingPayload"
Name 101 "localPayload"
Decorate 11(gl_LaunchIDEXT) BuiltIn LaunchIdKHR
Decorate 14(gl_LaunchSizeEXT) BuiltIn LaunchSizeKHR
Decorate 20(gl_PrimitiveID) BuiltIn PrimitiveId
Decorate 23(gl_InstanceID) BuiltIn InstanceId
Decorate 26(gl_InstanceCustomIndexEXT) BuiltIn InstanceCustomIndexKHR
Decorate 33(gl_WorldRayOriginEXT) BuiltIn WorldRayOriginKHR
Decorate 36(gl_WorldRayDirectionEXT) BuiltIn WorldRayDirectionKHR
Decorate 39(gl_ObjectRayOriginEXT) BuiltIn ObjectRayOriginKHR
Decorate 42(gl_ObjectRayDirectionEXT) BuiltIn ObjectRayDirectionKHR
Decorate 47(gl_RayTminEXT) BuiltIn RayTminKHR
Decorate 50(gl_RayTmaxEXT) BuiltIn RayTmaxKHR
Decorate 53(gl_HitTEXT) BuiltIn RayTmaxKHR
Decorate 58(gl_HitKindEXT) BuiltIn HitKindKHR
Decorate 64(gl_ObjectToWorldEXT) BuiltIn ObjectToWorldKHR
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
2: TypeVoid
3: TypeFunction 2
6: TypeInt 32 0
7: TypeVector 6(int) 3
8: TypePointer Function 7(ivec3)
10: TypePointer Input 7(ivec3)
11(gl_LaunchIDEXT): 10(ptr) Variable Input
14(gl_LaunchSizeEXT): 10(ptr) Variable Input
16: TypeInt 32 1
17: TypePointer Function 16(int)
19: TypePointer Input 16(int)
20(gl_PrimitiveID): 19(ptr) Variable Input
23(gl_InstanceID): 19(ptr) Variable Input
26(gl_InstanceCustomIndexEXT): 19(ptr) Variable Input
28: TypeFloat 32
29: TypeVector 28(float) 3
30: TypePointer Function 29(fvec3)
32: TypePointer Input 29(fvec3)
33(gl_WorldRayOriginEXT): 32(ptr) Variable Input
36(gl_WorldRayDirectionEXT): 32(ptr) Variable Input
39(gl_ObjectRayOriginEXT): 32(ptr) Variable Input
42(gl_ObjectRayDirectionEXT): 32(ptr) Variable Input
44: TypePointer Function 28(float)
46: TypePointer Input 28(float)
47(gl_RayTminEXT): 46(ptr) Variable Input
50(gl_RayTmaxEXT): 46(ptr) Variable Input
53(gl_HitTEXT): 46(ptr) Variable Input
55: TypePointer Function 6(int)
57: TypePointer Input 6(int)
58(gl_HitKindEXT): 57(ptr) Variable Input
60: TypeMatrix 29(fvec3) 4
61: TypePointer Function 60
63: TypePointer Input 60
64(gl_ObjectToWorldEXT): 63(ptr) Variable Input
67(gl_WorldToObjectEXT): 63(ptr) Variable Input
70(gl_GeometryIndexEXT): 19(ptr) Variable Input
72: TypeVector 28(float) 4
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
4(main): 2 Function None 3
5: Label
9(v0): 8(ptr) Variable Function
13(v1): 8(ptr) Variable Function
18(v2): 17(ptr) Variable Function
22(v3): 17(ptr) Variable Function
25(v4): 17(ptr) Variable Function
31(v5): 30(ptr) Variable Function
35(v6): 30(ptr) Variable Function
38(v7): 30(ptr) Variable Function
41(v8): 30(ptr) Variable Function
45(v9): 44(ptr) Variable Function
49(v10): 44(ptr) Variable Function
52(v11): 44(ptr) Variable Function
56(v12): 55(ptr) Variable Function
62(v13): 61(ptr) Variable Function
66(v14): 61(ptr) Variable Function
69(v15): 17(ptr) Variable Function
75(v16): 74(ptr) Variable Function
78(v17): 74(ptr) Variable Function
81(v18): 55(ptr) Variable Function
12: 7(ivec3) Load 11(gl_LaunchIDEXT)
Store 9(v0) 12
15: 7(ivec3) Load 14(gl_LaunchSizeEXT)
Store 13(v1) 15
21: 16(int) Load 20(gl_PrimitiveID)
Store 18(v2) 21
24: 16(int) Load 23(gl_InstanceID)
Store 22(v3) 24
27: 16(int) Load 26(gl_InstanceCustomIndexEXT)
Store 25(v4) 27
34: 29(fvec3) Load 33(gl_WorldRayOriginEXT)
Store 31(v5) 34
37: 29(fvec3) Load 36(gl_WorldRayDirectionEXT)
Store 35(v6) 37
40: 29(fvec3) Load 39(gl_ObjectRayOriginEXT)
Store 38(v7) 40
43: 29(fvec3) Load 42(gl_ObjectRayDirectionEXT)
Store 41(v8) 43
48: 28(float) Load 47(gl_RayTminEXT)
Store 45(v9) 48
51: 28(float) Load 50(gl_RayTmaxEXT)
Store 49(v10) 51
54: 28(float) Load 53(gl_HitTEXT)
Store 52(v11) 54
59: 6(int) Load 58(gl_HitKindEXT)
Store 56(v12) 59
65: 60 Load 64(gl_ObjectToWorldEXT)
Store 62(v13) 65
68: 60 Load 67(gl_WorldToObjectEXT)
Store 66(v14) 68
71: 16(int) Load 70(gl_GeometryIndexEXT)
Store 69(v15) 71
76: 60 Load 64(gl_ObjectToWorldEXT)
77: 73 Transpose 76
Store 75(v16) 77
79: 60 Load 67(gl_WorldToObjectEXT)
80: 73 Transpose 79
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)
Return
FunctionEnd
|