1617a3babSopenharmony_ci#version 460 2617a3babSopenharmony_ci#extension GL_EXT_ray_tracing : enable 3617a3babSopenharmony_ci#extension GL_EXT_ray_query : enable 4617a3babSopenharmony_ci#extension GL_NV_displacement_micromap : enable 5617a3babSopenharmony_cilayout(binding = 1) uniform accelerationStructureEXT as; 6617a3babSopenharmony_cilayout(binding = 0) buffer block { 7617a3babSopenharmony_ci vec3 op_pos; 8617a3babSopenharmony_ci vec2 op_bary; 9617a3babSopenharmony_ci uint op_hit; 10617a3babSopenharmony_ci}; 11617a3babSopenharmony_civoid main() 12617a3babSopenharmony_ci{ 13617a3babSopenharmony_ci op_pos = gl_HitMicroTriangleVertexPositionsNV[0]; 14617a3babSopenharmony_ci op_pos += gl_HitMicroTriangleVertexPositionsNV[1]; 15617a3babSopenharmony_ci op_pos += gl_HitMicroTriangleVertexPositionsNV[2]; 16617a3babSopenharmony_ci 17617a3babSopenharmony_ci op_bary = gl_HitMicroTriangleVertexBarycentricsNV[0]; 18617a3babSopenharmony_ci op_bary += gl_HitMicroTriangleVertexBarycentricsNV[1]; 19617a3babSopenharmony_ci op_bary += gl_HitMicroTriangleVertexBarycentricsNV[2]; 20617a3babSopenharmony_ci 21617a3babSopenharmony_ci op_hit = gl_HitKindEXT; 22617a3babSopenharmony_ci op_hit &= gl_HitKindFrontFacingTriangleEXT | 23617a3babSopenharmony_ci gl_HitKindBackFacingTriangleEXT | 24617a3babSopenharmony_ci gl_HitKindFrontFacingMicroTriangleNV | 25617a3babSopenharmony_ci gl_HitKindBackFacingMicroTriangleNV; 26617a3babSopenharmony_ci} 27