1617a3babSopenharmony_ci#version 460
2617a3babSopenharmony_ci#extension GL_NV_displacement_micromap : enable
3617a3babSopenharmony_ci#extension GL_EXT_ray_query : enable
4617a3babSopenharmony_cilayout(binding = 1) uniform accelerationStructureEXT as;
5617a3babSopenharmony_cilayout(binding = 0) buffer block {
6617a3babSopenharmony_ci	vec3 op_pos;
7617a3babSopenharmony_ci	vec2 op_bary;
8617a3babSopenharmony_ci	uint op_hitmask;
9617a3babSopenharmony_ci};
10617a3babSopenharmony_civoid main()
11617a3babSopenharmony_ci{
12617a3babSopenharmony_ci	op_pos =  fetchMicroTriangleVertexPositionNV(as, 1, 1, 1,	ivec2(0,0));
13617a3babSopenharmony_ci	op_pos += fetchMicroTriangleVertexPositionNV(as, 1, 1, 1,	ivec2(0,1));
14617a3babSopenharmony_ci	op_pos += fetchMicroTriangleVertexPositionNV(as, 1, 1, 1,	ivec2(1,0));
15617a3babSopenharmony_ci
16617a3babSopenharmony_ci	op_bary =  fetchMicroTriangleVertexBarycentricNV(as, 1, 1, 1, ivec2(0,0));
17617a3babSopenharmony_ci	op_bary += fetchMicroTriangleVertexBarycentricNV(as, 1, 1, 1, ivec2(0,1));
18617a3babSopenharmony_ci	op_bary += fetchMicroTriangleVertexBarycentricNV(as, 1, 1, 1, ivec2(1,0));
19617a3babSopenharmony_ci
20617a3babSopenharmony_ci	op_hitmask = gl_HitKindFrontFacingTriangleEXT |
21617a3babSopenharmony_ci	             gl_HitKindBackFacingTriangleEXT |
22617a3babSopenharmony_ci	             gl_HitKindFrontFacingMicroTriangleNV |
23617a3babSopenharmony_ci	             gl_HitKindBackFacingMicroTriangleNV;
24617a3babSopenharmony_ci}
25