| spv.nv.cluster-allops.rchit |
| // Module Version 10400 |
| // Generated by (magic number): 8000b |
| // Id's are bound by 40 |
| |
| Capability RayQueryKHR |
| Capability RayTracingKHR |
| Capability ShaderInvocationReorderNV |
| Capability RayTracingClusterAccelerationStructureNV |
| Extension "SPV_KHR_ray_query" |
| Extension "SPV_KHR_ray_tracing" |
| Extension "SPV_NV_cluster_acceleration_structure" |
| Extension "SPV_NV_shader_invocation_reorder" |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint ClosestHitKHR 4 "main" 11 15 20 39 |
| Source GLSL 460 |
| SourceExtension "GL_EXT_ray_query" |
| SourceExtension "GL_EXT_ray_tracing" |
| SourceExtension "GL_NV_cluster_acceleration_structure" |
| SourceExtension "GL_NV_shader_invocation_reorder" |
| Name 4 "main" |
| Name 8 "hitObjId" |
| Name 11 "hitObj" |
| Name 13 "clusterid" |
| Name 15 "gl_ClusterIDNV" |
| Name 17 "id_candidate" |
| Name 20 "rq" |
| Name 25 "id_committed" |
| Name 30 "test" |
| Name 39 "as" |
| Decorate 15(gl_ClusterIDNV) BuiltIn ClusterIDNV |
| Decorate 39(as) Binding 1 |
| Decorate 39(as) DescriptorSet 0 |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeInt 32 1 |
| 7: TypePointer Function 6(int) |
| 9: TypeHitObjectNV |
| 10: TypePointer Private 9 |
| 11(hitObj): 10(ptr) Variable Private |
| 14: TypePointer Input 6(int) |
| 15(gl_ClusterIDNV): 14(ptr) Variable Input |
| 18: TypeRayQueryKHR |
| 19: TypePointer Private 18 |
| 20(rq): 19(ptr) Variable Private |
| 21: TypeBool |
| 22: 21(bool) ConstantFalse |
| 23: 6(int) Constant 0 |
| 26: 21(bool) ConstantTrue |
| 27: 6(int) Constant 1 |
| 29: TypePointer Function 21(bool) |
| 32: 6(int) Constant 4294967295 |
| 37: TypeAccelerationStructureKHR |
| 38: TypePointer UniformConstant 37 |
| 39(as): 38(ptr) Variable UniformConstant |
| 4(main): 2 Function None 3 |
| 5: Label |
| 8(hitObjId): 7(ptr) Variable Function |
| 13(clusterid): 7(ptr) Variable Function |
| 17(id_candidate): 7(ptr) Variable Function |
| 25(id_committed): 7(ptr) Variable Function |
| 30(test): 29(ptr) Variable Function |
| 12: 6(int) HitObjectGetClusterIdNV 11(hitObj) |
| Store 8(hitObjId) 12 |
| 16: 6(int) Load 15(gl_ClusterIDNV) |
| Store 13(clusterid) 16 |
| 24: 6(int) RayQueryGetIntersectionClusterIdNV 20(rq) 23 |
| Store 17(id_candidate) 24 |
| 28: 6(int) RayQueryGetIntersectionClusterIdNV 20(rq) 27 |
| Store 25(id_committed) 28 |
| 31: 6(int) Load 17(id_candidate) |
| 33: 21(bool) IEqual 31 32 |
| 34: 6(int) Load 25(id_committed) |
| 35: 21(bool) IEqual 34 32 |
| 36: 21(bool) LogicalAnd 33 35 |
| Store 30(test) 36 |
| Return |
| FunctionEnd |