23 if (
format.attr_len == 0) {
32 if (
format.attr_len == 0) {
48 *(
float(**)[3])tls_data =
static_cast<float(*)[3]
>(vbo_data);
58 float *co =
center[f_index];
65 }
while ((l_iter = l_iter->
next) != l_first);
75 float *co =
center[mp_index];
83 for (
int ml_index = mp->
loopstart; ml_index < ml_index_end; ml_index += 1) {
84 const MLoop *ml = &mloop[ml_index];
typedef float(TangentPoint)[2]
#define BLI_BITMAP_TEST(_bitmap, _index)
MINLINE void mul_v3_fl(float r[3], float f)
MINLINE void copy_v3_v3(float r[3], const float a[3])
MINLINE void zero_v3(float r[3])
MINLINE void add_v3_v3(float r[3], const float a[3])
NSNotificationCenter * center
struct GPUIndexBuf GPUIndexBuf
void GPU_indexbuf_init_build_on_device(GPUIndexBuf *elem, uint index_len)
struct GPUVertBuf GPUVertBuf
void GPU_vertbuf_data_alloc(GPUVertBuf *, uint v_len)
#define GPU_vertbuf_init_with_format(verts, format)
void * GPU_vertbuf_get_data(const GPUVertBuf *verts)
void GPU_vertbuf_init_build_on_device(GPUVertBuf *verts, GPUVertFormat *format, uint v_len)
#define BM_FACE_FIRST_LOOP(p)
void draw_subdiv_build_fdots_buffers(const DRWSubdivCache *cache, GPUVertBuf *fdots_pos, GPUVertBuf *fdots_nor, GPUIndexBuf *fdots_indices)
ccl_global float * buffer
static void extract_fdots_init_subdiv(const DRWSubdivCache *subdiv_cache, const MeshRenderData *UNUSED(mr), MeshBatchCache *cache, void *buffer, void *UNUSED(data))
static GPUVertFormat * get_fdots_nor_format_subdiv()
constexpr MeshExtract create_extractor_fdots_pos()
static GPUVertFormat * get_fdots_pos_format()
static void extract_fdots_pos_iter_poly_bm(const MeshRenderData *mr, const BMFace *f, const int f_index, void *data)
static void extract_fdots_pos_iter_poly_mesh(const MeshRenderData *mr, const MPoly *mp, const int mp_index, void *data)
static void extract_fdots_pos_init(const MeshRenderData *mr, MeshBatchCache *UNUSED(cache), void *buf, void *tls_data)
struct MeshBufferList::@272 vbo
struct MeshBufferList::@273 ibo
uint32_t * subsurf_face_dot_tags