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,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