1spv.nv.dmm-allops.rgen 2// Module Version 10400 3// Generated by (magic number): 8000b 4// Id's are bound by 66 5 6 Capability RayTracingKHR 7 Capability DisplacementMicromapNV 8 Capability CapabilityRayTracingDisplacementMicromapNV 9 Extension "SPV_KHR_ray_tracing" 10 Extension "SPV_NV_displacement_micromap" 11 1: ExtInstImport "GLSL.std.450" 12 MemoryModel Logical GLSL450 13 EntryPoint RayGenerationKHR 4 "main" 12 17 58 61 14 Source GLSL 460 15 SourceExtension "GL_EXT_ray_query" 16 SourceExtension "GL_NV_displacement_micromap" 17 Name 4 "main" 18 Name 10 "block" 19 MemberName 10(block) 0 "op_pos" 20 MemberName 10(block) 1 "op_bary" 21 MemberName 10(block) 2 "op_hitmask" 22 Name 12 "" 23 Name 17 "as" 24 Name 58 "gl_HitKindFrontFacingMicroTriangleNV" 25 Name 61 "gl_HitKindBackFacingMicroTriangleNV" 26 MemberDecorate 10(block) 0 Offset 0 27 MemberDecorate 10(block) 1 Offset 16 28 MemberDecorate 10(block) 2 Offset 24 29 Decorate 10(block) Block 30 Decorate 12 DescriptorSet 0 31 Decorate 12 Binding 0 32 Decorate 17(as) DescriptorSet 0 33 Decorate 17(as) Binding 1 34 Decorate 58(gl_HitKindFrontFacingMicroTriangleNV) BuiltIn HitKindFrontFacingMicroTriangleNV 35 Decorate 61(gl_HitKindBackFacingMicroTriangleNV) BuiltIn HitKindBackFacingMicroTriangleNV 36 2: TypeVoid 37 3: TypeFunction 2 38 6: TypeFloat 32 39 7: TypeVector 6(float) 3 40 8: TypeVector 6(float) 2 41 9: TypeInt 32 0 42 10(block): TypeStruct 7(fvec3) 8(fvec2) 9(int) 43 11: TypePointer StorageBuffer 10(block) 44 12: 11(ptr) Variable StorageBuffer 45 13: TypeInt 32 1 46 14: 13(int) Constant 0 47 15: TypeAccelerationStructureKHR 48 16: TypePointer UniformConstant 15 49 17(as): 16(ptr) Variable UniformConstant 50 19: 13(int) Constant 1 51 20: TypeVector 13(int) 2 52 21: 20(ivec2) ConstantComposite 14 14 53 23: TypePointer StorageBuffer 7(fvec3) 54 26: 20(ivec2) ConstantComposite 14 19 55 33: 20(ivec2) ConstantComposite 19 14 56 41: TypePointer StorageBuffer 8(fvec2) 57 55: 13(int) Constant 2 58 56: 9(int) Constant 255 59 57: TypePointer Input 9(int) 6058(gl_HitKindFrontFacingMicroTriangleNV): 57(ptr) Variable Input 6161(gl_HitKindBackFacingMicroTriangleNV): 57(ptr) Variable Input 62 64: TypePointer StorageBuffer 9(int) 63 4(main): 2 Function None 3 64 5: Label 65 18: 15 Load 17(as) 66 22: 7(fvec3) FetchMicroTriangleVertexPositionNV 18 19 19 19 21 67 24: 23(ptr) AccessChain 12 14 68 Store 24 22 69 25: 15 Load 17(as) 70 27: 7(fvec3) FetchMicroTriangleVertexPositionNV 25 19 19 19 26 71 28: 23(ptr) AccessChain 12 14 72 29: 7(fvec3) Load 28 73 30: 7(fvec3) FAdd 29 27 74 31: 23(ptr) AccessChain 12 14 75 Store 31 30 76 32: 15 Load 17(as) 77 34: 7(fvec3) FetchMicroTriangleVertexPositionNV 32 19 19 19 33 78 35: 23(ptr) AccessChain 12 14 79 36: 7(fvec3) Load 35 80 37: 7(fvec3) FAdd 36 34 81 38: 23(ptr) AccessChain 12 14 82 Store 38 37 83 39: 15 Load 17(as) 84 40: 8(fvec2) FetchMicroTriangleVertexBarycentricNV 39 19 19 19 21 85 42: 41(ptr) AccessChain 12 19 86 Store 42 40 87 43: 15 Load 17(as) 88 44: 8(fvec2) FetchMicroTriangleVertexBarycentricNV 43 19 19 19 26 89 45: 41(ptr) AccessChain 12 19 90 46: 8(fvec2) Load 45 91 47: 8(fvec2) FAdd 46 44 92 48: 41(ptr) AccessChain 12 19 93 Store 48 47 94 49: 15 Load 17(as) 95 50: 8(fvec2) FetchMicroTriangleVertexBarycentricNV 49 19 19 19 33 96 51: 41(ptr) AccessChain 12 19 97 52: 8(fvec2) Load 51 98 53: 8(fvec2) FAdd 52 50 99 54: 41(ptr) AccessChain 12 19 100 Store 54 53 101 59: 9(int) Load 58(gl_HitKindFrontFacingMicroTriangleNV) 102 60: 9(int) BitwiseOr 56 59 103 62: 9(int) Load 61(gl_HitKindBackFacingMicroTriangleNV) 104 63: 9(int) BitwiseOr 60 62 105 65: 64(ptr) AccessChain 12 55 106 Store 65 63 107 Return 108 FunctionEnd 109