27 return std::any_of(face_verts.
begin(), face_verts.
end(), [&](
const int vert) {
28 return facedot_tags[vert];
41 mask.to_indices<
int>(data.cast<
int>());
void GPU_indexbuf_build_in_place_ex(GPUIndexBufBuilder *builder, uint index_min, uint index_max, bool uses_restart_indices, blender::gpu::IndexBuf *elem)
blender::MutableSpan< uint32_t > GPU_indexbuf_get_data(GPUIndexBufBuilder *)
void GPU_indexbuf_init(GPUIndexBufBuilder *, GPUPrimType, uint prim_len, uint vertex_len)
#define BM_elem_flag_test_bool(ele, hflag)
ATTR_WARN_UNUSED_RESULT BMesh * bm
BLI_INLINE BMFace * BM_face_at_index(BMesh *bm, const int index)
constexpr Span slice(int64_t start, int64_t size) const
constexpr const T * end() const
constexpr const T * begin() const
constexpr bool is_empty() const
static IndexMask from_predicate(const IndexMask &universe, GrainSize grain_size, IndexMaskMemory &memory, Fn &&predicate)
static IndexMask from_bools_inverse(const IndexMask &universe, Span< bool > bools, IndexMaskMemory &memory)
int64_t min_array_size() const
void extract_face_dots(const MeshRenderData &mr, gpu::IndexBuf &face_dots)
static void extract_face_dots_mesh(const MeshRenderData &mr, gpu::IndexBuf &face_dots)
static void index_mask_to_ibo(const IndexMask &mask, gpu::IndexBuf &ibo)
static IndexMask calc_face_visibility_mesh(const MeshRenderData &mr, IndexMaskMemory &memory)
static void extract_face_dots_bm(const MeshRenderData &mr, gpu::IndexBuf &face_dots)
MeshRuntimeHandle * runtime
eMRExtractType extract_type
VArraySpan< bool > hide_poly
OffsetIndices< int > faces