| rayQuery-types.comp |
| // Module Version 10000 |
| // Generated by (magic number): 8000a |
| // Id's are bound by 86 |
| |
| Capability Shader |
| Capability RayQueryKHR |
| Extension "SPV_KHR_ray_query" |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint GLCompute 4 "main" |
| ExecutionMode 4 LocalSize 16 8 1 |
| Source GLSL 460 |
| SourceExtension "GL_EXT_ray_query" |
| Name 4 "main" |
| Name 8 "rayQuery" |
| Name 11 "tlas" |
| Name 25 "rq_proceed" |
| Name 35 "intersectionType" |
| Name 41 "rayTMin" |
| Name 43 "rayFlags" |
| Name 46 "worldRayOrigin" |
| Name 48 "worldDirection" |
| Name 50 "intersectionT" |
| Name 53 "customIndex" |
| Name 55 "instanceId" |
| Name 57 "sbtOffset" |
| Name 59 "geometryIndex" |
| Name 61 "primitiveIndex" |
| Name 65 "barys" |
| Name 67 "frontface" |
| Name 69 "aabbOpaque" |
| Name 71 "objRayDirection" |
| Name 73 "objRayOrigin" |
| Name 77 "objToWorld" |
| Name 79 "worldToObj" |
| Decorate 11(tlas) DescriptorSet 0 |
| Decorate 11(tlas) Binding 0 |
| Decorate 85 BuiltIn WorkgroupSize |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeRayQueryKHR |
| 7: TypePointer Private 6 |
| 8(rayQuery): 7(ptr) Variable Private |
| 9: TypeAccelerationStructureKHR |
| 10: TypePointer UniformConstant 9 |
| 11(tlas): 10(ptr) Variable UniformConstant |
| 13: TypeInt 32 0 |
| 14: 13(int) Constant 0 |
| 15: 13(int) Constant 255 |
| 16: TypeFloat 32 |
| 17: TypeVector 16(float) 3 |
| 18: 16(float) Constant 0 |
| 19: 17(fvec3) ConstantComposite 18 18 18 |
| 20: 16(float) Constant 1065353216 |
| 21: 17(fvec3) ConstantComposite 20 18 18 |
| 22: 16(float) Constant 1176256512 |
| 23: TypeBool |
| 24: TypePointer Function 23(bool) |
| 34: TypePointer Function 13(int) |
| 36: 23(bool) ConstantTrue |
| 37: TypeInt 32 1 |
| 38: 37(int) Constant 1 |
| 40: TypePointer Function 16(float) |
| 45: TypePointer Function 17(fvec3) |
| 52: TypePointer Function 37(int) |
| 63: TypeVector 16(float) 2 |
| 64: TypePointer Function 63(fvec2) |
| 75: TypeMatrix 17(fvec3) 4 |
| 76: TypePointer Function 75 |
| 81: TypeVector 13(int) 3 |
| 82: 13(int) Constant 16 |
| 83: 13(int) Constant 8 |
| 84: 13(int) Constant 1 |
| 85: 81(ivec3) ConstantComposite 82 83 84 |
| 4(main): 2 Function None 3 |
| 5: Label |
| 25(rq_proceed): 24(ptr) Variable Function |
| 35(intersectionType): 34(ptr) Variable Function |
| 41(rayTMin): 40(ptr) Variable Function |
| 43(rayFlags): 34(ptr) Variable Function |
| 46(worldRayOrigin): 45(ptr) Variable Function |
| 48(worldDirection): 45(ptr) Variable Function |
| 50(intersectionT): 40(ptr) Variable Function |
| 53(customIndex): 52(ptr) Variable Function |
| 55(instanceId): 52(ptr) Variable Function |
| 57(sbtOffset): 34(ptr) Variable Function |
| 59(geometryIndex): 52(ptr) Variable Function |
| 61(primitiveIndex): 52(ptr) Variable Function |
| 65(barys): 64(ptr) Variable Function |
| 67(frontface): 24(ptr) Variable Function |
| 69(aabbOpaque): 24(ptr) Variable Function |
| 71(objRayDirection): 45(ptr) Variable Function |
| 73(objRayOrigin): 45(ptr) Variable Function |
| 77(objToWorld): 76(ptr) Variable Function |
| 79(worldToObj): 76(ptr) Variable Function |
| 12: 9 Load 11(tlas) |
| RayQueryInitializeKHR 8(rayQuery) 12 14 15 19 18 21 22 |
| 26: 23(bool) RayQueryProceedKHR 8(rayQuery) |
| Store 25(rq_proceed) 26 |
| Branch 27 |
| 27: Label |
| LoopMerge 29 30 None |
| Branch 31 |
| 31: Label |
| 32: 23(bool) Load 25(rq_proceed) |
| BranchConditional 32 28 29 |
| 28: Label |
| 33: 23(bool) RayQueryProceedKHR 8(rayQuery) |
| Store 25(rq_proceed) 33 |
| Branch 30 |
| 30: Label |
| Branch 27 |
| 29: Label |
| 39: 13(int) RayQueryGetIntersectionTypeKHR 8(rayQuery) 38 |
| Store 35(intersectionType) 39 |
| 42: 16(float) RayQueryGetRayTMinKHR 8(rayQuery) |
| Store 41(rayTMin) 42 |
| 44: 13(int) RayQueryGetRayFlagsKHR 8(rayQuery) |
| Store 43(rayFlags) 44 |
| 47: 17(fvec3) RayQueryGetWorldRayOriginKHR 8(rayQuery) |
| Store 46(worldRayOrigin) 47 |
| 49: 17(fvec3) RayQueryGetWorldRayDirectionKHR 8(rayQuery) |
| Store 48(worldDirection) 49 |
| 51: 16(float) RayQueryGetIntersectionTKHR 8(rayQuery) 38 |
| Store 50(intersectionT) 51 |
| 54: 37(int) RayQueryGetIntersectionInstanceCustomIndexKHR 8(rayQuery) 38 |
| Store 53(customIndex) 54 |
| 56: 37(int) RayQueryGetIntersectionInstanceIdKHR 8(rayQuery) 38 |
| Store 55(instanceId) 56 |
| 58: 13(int) RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR 8(rayQuery) 38 |
| Store 57(sbtOffset) 58 |
| 60: 37(int) RayQueryGetIntersectionGeometryIndexKHR 8(rayQuery) 38 |
| Store 59(geometryIndex) 60 |
| 62: 37(int) RayQueryGetIntersectionPrimitiveIndexKHR 8(rayQuery) 38 |
| Store 61(primitiveIndex) 62 |
| 66: 63(fvec2) RayQueryGetIntersectionBarycentricsKHR 8(rayQuery) 38 |
| Store 65(barys) 66 |
| 68: 23(bool) RayQueryGetIntersectionFrontFaceKHR 8(rayQuery) 38 |
| Store 67(frontface) 68 |
| 70: 23(bool) RayQueryGetIntersectionCandidateAABBOpaqueKHR 8(rayQuery) |
| Store 69(aabbOpaque) 70 |
| 72: 17(fvec3) RayQueryGetIntersectionObjectRayDirectionKHR 8(rayQuery) 38 |
| Store 71(objRayDirection) 72 |
| 74: 17(fvec3) RayQueryGetIntersectionObjectRayOriginKHR 8(rayQuery) 38 |
| Store 73(objRayOrigin) 74 |
| 78: 75 RayQueryGetIntersectionObjectToWorldKHR 8(rayQuery) 38 |
| Store 77(objToWorld) 78 |
| 80: 75 RayQueryGetIntersectionWorldToObjectKHR 8(rayQuery) 38 |
| Store 79(worldToObj) 80 |
| Return |
| FunctionEnd |