#version 460 #extension GL_NV_displacement_micromap : enable #extension GL_EXT_ray_query : enable layout(local_size_x = 16) in; layout(binding = 1) uniform accelerationStructureEXT as; layout(binding = 0) buffer block { vec3 op_pos; vec2 op_bary; }; void main() { op_pos = fetchMicroTriangleVertexPositionNV(as, 1, 1, 1, ivec2(0,0)); op_pos += fetchMicroTriangleVertexPositionNV(as, 1, 1, 1, ivec2(0,1)); op_pos += fetchMicroTriangleVertexPositionNV(as, 1, 1, 1, ivec2(1,0)); op_bary = fetchMicroTriangleVertexBarycentricNV(as, 1, 1, 1, ivec2(0,0)); op_bary += fetchMicroTriangleVertexBarycentricNV(as, 1, 1, 1, ivec2(0,1)); op_bary += fetchMicroTriangleVertexBarycentricNV(as, 1, 1, 1, ivec2(1,0)); }