spv.nv.hitobject-allops.rchit // Module Version 10400 // Generated by (magic number): 8000b // Id's are bound by 116 Capability RayTracingKHR Capability ShaderInvocationReorderNV Extension "SPV_KHR_ray_tracing" Extension "SPV_NV_shader_invocation_reorder" 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint ClosestHitKHR 4 "main" 9 14 22 25 36 42 48 52 53 64 Source GLSL 460 SourceExtension "GL_EXT_ray_tracing" SourceExtension "GL_NV_ray_tracing_motion_blur" SourceExtension "GL_NV_shader_invocation_reorder" Name 4 "main" Name 9 "attr" Name 12 "hBlock" MemberName 12(hBlock) 0 "attrval" Name 14 "" Name 22 "hObj" Name 25 "as" Name 36 "payload" Name 40 "pBlock" MemberName 40(pBlock) 0 "val1" MemberName 40(pBlock) 1 "val2" Name 42 "" Name 48 "hObjHit" Name 52 "hObjNop" Name 53 "hObjMiss" Name 62 "block" MemberName 62(block) 0 "op" Name 64 "" Name 79 "tmin" Name 81 "tmax" Name 84 "orig" Name 86 "dir" Name 88 "oorig" Name 90 "odir" Name 94 "otw" Name 96 "wto" Name 99 "cid" Name 101 "iid" Name 103 "pid" Name 105 "gid" Name 108 "hkind" Name 112 "handle" Name 114 "rid" Decorate 12(hBlock) Block Decorate 25(as) DescriptorSet 0 Decorate 25(as) Binding 0 Decorate 40(pBlock) Block MemberDecorate 62(block) 0 Offset 0 Decorate 62(block) Block Decorate 64 DescriptorSet 0 Decorate 64 Binding 1 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 2 8: TypePointer HitObjectAttributeNV 7(fvec2) 9(attr): 8(ptr) Variable HitObjectAttributeNV 10: 6(float) Constant 1065353216 11: 7(fvec2) ConstantComposite 10 10 12(hBlock): TypeStruct 6(float) 13: TypePointer HitObjectAttributeNV 12(hBlock) 14: 13(ptr) Variable HitObjectAttributeNV 15: TypeInt 32 1 16: 15(int) Constant 0 17: 6(float) Constant 1073741824 18: TypePointer HitObjectAttributeNV 6(float) 20: TypeHitObjectNV 21: TypePointer Private 20 22(hObj): 21(ptr) Variable Private 23: TypeAccelerationStructureKHR 24: TypePointer UniformConstant 23 25(as): 24(ptr) Variable UniformConstant 27: TypeInt 32 0 28: 27(int) Constant 1 29: TypeVector 6(float) 3 30: 6(float) Constant 1056964608 31: 29(fvec3) ConstantComposite 30 30 30 32: 29(fvec3) ConstantComposite 10 10 10 33: 15(int) Constant 1 34: TypeVector 6(float) 4 35: TypePointer RayPayloadKHR 34(fvec4) 36(payload): 35(ptr) Variable RayPayloadKHR 38: 6(float) Constant 1092616192 39: 15(int) Constant 2 40(pBlock): TypeStruct 7(fvec2) 7(fvec2) 41: TypePointer RayPayloadKHR 40(pBlock) 42: 41(ptr) Variable RayPayloadKHR 44: 27(int) Constant 2 45: 29(fvec3) ConstantComposite 17 17 17 47: 6(float) Constant 1082130432 48(hObjHit): 21(ptr) Variable Private 50: 15(int) Constant 3 52(hObjNop): 21(ptr) Variable Private 53(hObjMiss): 21(ptr) Variable Private 54: 6(float) Constant 1069547520 55: 29(fvec3) ConstantComposite 54 54 54 56: 6(float) Constant 1084227584 57: 6(float) Constant 1090519040 58: TypeBool 62(block): TypeStruct 6(float) 63: TypePointer StorageBuffer 62(block) 64: 63(ptr) Variable StorageBuffer 65: TypePointer StorageBuffer 6(float) 76: 6(float) Constant 1077936128 78: TypePointer Function 6(float) 83: TypePointer Function 29(fvec3) 92: TypeMatrix 29(fvec3) 4 93: TypePointer Function 92 98: TypePointer Function 15(int) 107: TypePointer Function 27(int) 110: TypeVector 27(int) 2 111: TypePointer Function 110(ivec2) 4(main): 2 Function None 3 5: Label 79(tmin): 78(ptr) Variable Function 81(tmax): 78(ptr) Variable Function 84(orig): 83(ptr) Variable Function 86(dir): 83(ptr) Variable Function 88(oorig): 83(ptr) Variable Function 90(odir): 83(ptr) Variable Function 94(otw): 93(ptr) Variable Function 96(wto): 93(ptr) Variable Function 99(cid): 98(ptr) Variable Function 101(iid): 98(ptr) Variable Function 103(pid): 98(ptr) Variable Function 105(gid): 98(ptr) Variable Function 108(hkind): 107(ptr) Variable Function 112(handle): 111(ptr) Variable Function 114(rid): 107(ptr) Variable Function Store 9(attr) 11 19: 18(ptr) AccessChain 14 16 Store 19 17 26: 23 Load 25(as) HitObjectTraceRayNV 22(hObj) 26 28 28 28 28 28 31 30 32 10 36(payload) 37: 23 Load 25(as) HitObjectTraceRayMotionNV 22(hObj) 37 28 28 28 28 28 31 30 32 10 38 42 43: 23 Load 25(as) HitObjectRecordHitNV 22(hObj) 43 33 33 33 44 44 44 32 10 45 17 9(attr) 46: 23 Load 25(as) HitObjectRecordHitMotionNV 22(hObj) 46 33 33 33 44 44 44 32 10 45 17 47 9(attr) 49: 23 Load 25(as) HitObjectRecordHitWithIndexNV 48(hObjHit) 49 33 33 33 44 44 32 10 45 17 14 51: 23 Load 25(as) HitObjectRecordHitWithIndexMotionNV 48(hObjHit) 51 33 33 33 44 44 32 10 45 17 47 14 HitObjectRecordEmptyNV 52(hObjNop) HitObjectRecordMissNV 53(hObjMiss) 28 31 17 55 56 HitObjectRecordMissMotionNV 53(hObjMiss) 28 31 17 55 56 57 HitObjectExecuteShaderNV 48(hObjHit) 42 59: 58(bool) HitObjectIsHitNV 22(hObj) SelectionMerge 61 None BranchConditional 59 60 67 60: Label 66: 65(ptr) AccessChain 64 16 Store 66 10 Branch 61 67: Label 68: 58(bool) HitObjectIsMissNV 22(hObj) SelectionMerge 70 None BranchConditional 68 69 72 69: Label 71: 65(ptr) AccessChain 64 16 Store 71 17 Branch 70 72: Label 73: 58(bool) HitObjectIsEmptyNV 22(hObj) SelectionMerge 75 None BranchConditional 73 74 75 74: Label 77: 65(ptr) AccessChain 64 16 Store 77 76 Branch 75 75: Label Branch 70 70: Label Branch 61 61: Label 80: 6(float) HitObjectGetRayTMinNV 48(hObjHit) Store 79(tmin) 80 82: 6(float) HitObjectGetRayTMaxNV 48(hObjHit) Store 81(tmax) 82 85: 29(fvec3) HitObjectGetWorldRayOriginNV 48(hObjHit) Store 84(orig) 85 87: 29(fvec3) HitObjectGetWorldRayDirectionNV 48(hObjHit) Store 86(dir) 87 89: 29(fvec3) HitObjectGetObjectRayOriginNV 48(hObjHit) Store 88(oorig) 89 91: 29(fvec3) HitObjectGetObjectRayDirectionNV 48(hObjHit) Store 90(odir) 91 95: 92 HitObjectGetObjectToWorldNV 48(hObjHit) Store 94(otw) 95 97: 92 HitObjectGetWorldToObjectNV 48(hObjHit) Store 96(wto) 97 100: 15(int) HitObjectGetInstanceCustomIndexNV 53(hObjMiss) Store 99(cid) 100 102: 15(int) HitObjectGetInstanceIdNV 52(hObjNop) Store 101(iid) 102 104: 15(int) HitObjectGetPrimitiveIndexNV 22(hObj) Store 103(pid) 104 106: 15(int) HitObjectGetGeometryIndexNV 22(hObj) Store 105(gid) 106 109: 27(int) HitObjectGetFrontFaceNV 22(hObj) Store 108(hkind) 109 HitObjectGetAttributesNV 22(hObj) 9(attr) 113: 110(ivec2) HitObjectGetShaderRecordBufferHandleNV 22(hObj) Store 112(handle) 113 115: 27(int) HitObjectGetShaderBindingTableRecordIndexNV 22(hObj) Store 114(rid) 115 Return FunctionEnd