blob: b461462ee494a6ef235a6ed1b0ee7e7947698d40 [file] [log] [blame]
spv.ClosestHitShader.rchit
// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 88
Capability RayTracingNV
Extension "SPV_NV_ray_tracing"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint ClosestHitNV 4 "main" 11 14 20 23 26 33 36 39 42 47 50 53 58 64 67
Source GLSL 460
SourceExtension "GL_NV_ray_tracing"
Name 4 "main"
Name 9 "v0"
Name 11 "gl_LaunchIDNV"
Name 13 "v1"
Name 14 "gl_LaunchSizeNV"
Name 18 "v2"
Name 20 "gl_PrimitiveID"
Name 22 "v3"
Name 23 "gl_InstanceID"
Name 25 "v4"
Name 26 "gl_InstanceCustomIndexNV"
Name 31 "v5"
Name 33 "gl_WorldRayOriginNV"
Name 35 "v6"
Name 36 "gl_WorldRayDirectionNV"
Name 38 "v7"
Name 39 "gl_ObjectRayOriginNV"
Name 41 "v8"
Name 42 "gl_ObjectRayDirectionNV"
Name 45 "v9"
Name 47 "gl_RayTminNV"
Name 49 "v10"
Name 50 "gl_RayTmaxNV"
Name 52 "v11"
Name 53 "gl_HitTNV"
Name 56 "v12"
Name 58 "gl_HitKindNV"
Name 62 "v13"
Name 64 "gl_ObjectToWorldNV"
Name 66 "v14"
Name 67 "gl_WorldToObjectNV"
Name 71 "accNV"
Name 85 "localPayload"
Name 87 "incomingPayload"
Decorate 11(gl_LaunchIDNV) BuiltIn LaunchIdNV
Decorate 14(gl_LaunchSizeNV) BuiltIn LaunchSizeNV
Decorate 20(gl_PrimitiveID) BuiltIn PrimitiveId
Decorate 23(gl_InstanceID) BuiltIn InstanceId
Decorate 26(gl_InstanceCustomIndexNV) BuiltIn InstanceCustomIndexNV
Decorate 33(gl_WorldRayOriginNV) BuiltIn WorldRayOriginNV
Decorate 36(gl_WorldRayDirectionNV) BuiltIn WorldRayDirectionNV
Decorate 39(gl_ObjectRayOriginNV) BuiltIn ObjectRayOriginNV
Decorate 42(gl_ObjectRayDirectionNV) BuiltIn ObjectRayDirectionNV
Decorate 47(gl_RayTminNV) BuiltIn RayTminNV
Decorate 50(gl_RayTmaxNV) BuiltIn RayTmaxNV
Decorate 53(gl_HitTNV) BuiltIn HitTNV
Decorate 58(gl_HitKindNV) BuiltIn HitKindNV
Decorate 64(gl_ObjectToWorldNV) BuiltIn ObjectToWorldNV
Decorate 67(gl_WorldToObjectNV) BuiltIn WorldToObjectNV
Decorate 71(accNV) DescriptorSet 0
Decorate 71(accNV) Binding 0
Decorate 85(localPayload) Location 0
Decorate 87(incomingPayload) Location 1
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_LaunchIDNV): 10(ptr) Variable Input
14(gl_LaunchSizeNV): 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_InstanceCustomIndexNV): 19(ptr) Variable Input
28: TypeFloat 32
29: TypeVector 28(float) 3
30: TypePointer Function 29(fvec3)
32: TypePointer Input 29(fvec3)
33(gl_WorldRayOriginNV): 32(ptr) Variable Input
36(gl_WorldRayDirectionNV): 32(ptr) Variable Input
39(gl_ObjectRayOriginNV): 32(ptr) Variable Input
42(gl_ObjectRayDirectionNV): 32(ptr) Variable Input
44: TypePointer Function 28(float)
46: TypePointer Input 28(float)
47(gl_RayTminNV): 46(ptr) Variable Input
50(gl_RayTmaxNV): 46(ptr) Variable Input
53(gl_HitTNV): 46(ptr) Variable Input
55: TypePointer Function 6(int)
57: TypePointer Input 6(int)
58(gl_HitKindNV): 57(ptr) Variable Input
60: TypeMatrix 29(fvec3) 4
61: TypePointer Function 60
63: TypePointer Input 60
64(gl_ObjectToWorldNV): 63(ptr) Variable Input
67(gl_WorldToObjectNV): 63(ptr) Variable Input
69: TypeAccelerationStructureNV
70: TypePointer UniformConstant 69
71(accNV): 70(ptr) Variable UniformConstant
73: 6(int) Constant 0
74: 6(int) Constant 1
75: 6(int) Constant 2
76: 6(int) Constant 3
77: 28(float) Constant 1056964608
78: 29(fvec3) ConstantComposite 77 77 77
79: 28(float) Constant 1065353216
80: 29(fvec3) ConstantComposite 79 79 79
81: 28(float) Constant 1061158912
82: 16(int) Constant 1
83: TypeVector 28(float) 4
84: TypePointer RayPayloadNV 83(fvec4)
85(localPayload): 84(ptr) Variable RayPayloadNV
86: TypePointer IncomingRayPayloadNV 83(fvec4)
87(incomingPayload): 86(ptr) Variable IncomingRayPayloadNV
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
12: 7(ivec3) Load 11(gl_LaunchIDNV)
Store 9(v0) 12
15: 7(ivec3) Load 14(gl_LaunchSizeNV)
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_InstanceCustomIndexNV)
Store 25(v4) 27
34: 29(fvec3) Load 33(gl_WorldRayOriginNV)
Store 31(v5) 34
37: 29(fvec3) Load 36(gl_WorldRayDirectionNV)
Store 35(v6) 37
40: 29(fvec3) Load 39(gl_ObjectRayOriginNV)
Store 38(v7) 40
43: 29(fvec3) Load 42(gl_ObjectRayDirectionNV)
Store 41(v8) 43
48: 28(float) Load 47(gl_RayTminNV)
Store 45(v9) 48
51: 28(float) Load 50(gl_RayTmaxNV)
Store 49(v10) 51
54: 28(float) Load 53(gl_HitTNV)
Store 52(v11) 54
59: 6(int) Load 58(gl_HitKindNV)
Store 56(v12) 59
65: 60 Load 64(gl_ObjectToWorldNV)
Store 62(v13) 65
68: 60 Load 67(gl_WorldToObjectNV)
Store 66(v14) 68
72: 69 Load 71(accNV)
TraceNV 72 73 74 75 76 73 78 77 80 81 82
Return
FunctionEnd