Blender  V3.3
draw_cache_impl.h File Reference
#include "BKE_mesh_types.h"

Go to the source code of this file.

Functions

Expose via BKE callbacks
void DRW_mball_batch_cache_dirty_tag (struct MetaBall *mb, int mode)
 
void DRW_mball_batch_cache_validate (struct MetaBall *mb)
 
void DRW_mball_batch_cache_free (struct MetaBall *mb)
 
void DRW_curve_batch_cache_dirty_tag (struct Curve *cu, int mode)
 
void DRW_curve_batch_cache_validate (struct Curve *cu)
 
void DRW_curve_batch_cache_free (struct Curve *cu)
 
void DRW_mesh_batch_cache_dirty_tag (struct Mesh *me, eMeshBatchDirtyMode mode)
 
void DRW_mesh_batch_cache_validate (struct Object *object, struct Mesh *me)
 
void DRW_mesh_batch_cache_free (struct Mesh *me)
 
void DRW_lattice_batch_cache_dirty_tag (struct Lattice *lt, int mode)
 
void DRW_lattice_batch_cache_validate (struct Lattice *lt)
 
void DRW_lattice_batch_cache_free (struct Lattice *lt)
 
void DRW_particle_batch_cache_dirty_tag (struct ParticleSystem *psys, int mode)
 
void DRW_particle_batch_cache_free (struct ParticleSystem *psys)
 
void DRW_gpencil_batch_cache_dirty_tag (struct bGPdata *gpd)
 
void DRW_gpencil_batch_cache_free (struct bGPdata *gpd)
 
void DRW_curves_batch_cache_dirty_tag (struct Curves *curves, int mode)
 
void DRW_curves_batch_cache_validate (struct Curves *curves)
 
void DRW_curves_batch_cache_free (struct Curves *curves)
 
void DRW_pointcloud_batch_cache_dirty_tag (struct PointCloud *pointcloud, int mode)
 
void DRW_pointcloud_batch_cache_validate (struct PointCloud *pointcloud)
 
void DRW_pointcloud_batch_cache_free (struct PointCloud *pointcloud)
 
void DRW_volume_batch_cache_dirty_tag (struct Volume *volume, int mode)
 
void DRW_volume_batch_cache_validate (struct Volume *volume)
 
void DRW_volume_batch_cache_free (struct Volume *volume)
 
Garbage Collection
void DRW_batch_cache_free_old (struct Object *ob, int ctime)
 
void DRW_mesh_batch_cache_free_old (struct Mesh *me, int ctime)
 
void DRW_curves_batch_cache_free_old (struct Curves *curves, int ctime)
 
Generic
void DRW_vertbuf_create_wiredata (struct GPUVertBuf *vbo, int vert_len)
 
Curve
void DRW_curve_batch_cache_create_requested (struct Object *ob, const struct Scene *scene)
 
int DRW_curve_material_count_get (struct Curve *cu)
 
struct GPUBatchDRW_curve_batch_cache_get_wire_edge (struct Curve *cu)
 
struct GPUBatchDRW_curve_batch_cache_get_normal_edge (struct Curve *cu)
 
struct GPUBatchDRW_curve_batch_cache_get_edit_edges (struct Curve *cu)
 
struct GPUBatchDRW_curve_batch_cache_get_edit_verts (struct Curve *cu)
 
Metaball
int DRW_metaball_material_count_get (struct MetaBall *mb)
 
struct GPUBatchDRW_metaball_batch_cache_get_triangles_with_normals (struct Object *ob)
 
struct GPUBatch ** DRW_metaball_batch_cache_get_surface_shaded (struct Object *ob, struct MetaBall *mb, struct GPUMaterial **gpumat_array, uint gpumat_array_len)
 
struct GPUBatchDRW_metaball_batch_cache_get_wireframes_face (struct Object *ob)
 
struct GPUBatchDRW_metaball_batch_cache_get_edge_detection (struct Object *ob, bool *r_is_manifold)
 
DispList
void DRW_displist_vertbuf_create_pos_and_nor (struct ListBase *lb, struct GPUVertBuf *vbo, const struct Scene *scene)
 
void DRW_displist_vertbuf_create_wiredata (struct ListBase *lb, struct GPUVertBuf *vbo)
 
void DRW_displist_indexbuf_create_lines_in_order (struct ListBase *lb, struct GPUIndexBuf *ibo)
 
void DRW_displist_indexbuf_create_triangles_in_order (struct ListBase *lb, struct GPUIndexBuf *ibo)
 
void DRW_displist_indexbuf_create_edges_adjacency_lines (struct ListBase *lb, struct GPUIndexBuf *ibo, bool *r_is_manifold)
 
Lattice
struct GPUBatchDRW_lattice_batch_cache_get_all_edges (struct Lattice *lt, bool use_weight, int actdef)
 
struct GPUBatchDRW_lattice_batch_cache_get_all_verts (struct Lattice *lt)
 
struct GPUBatchDRW_lattice_batch_cache_get_edit_verts (struct Lattice *lt)
 
Curves
int DRW_curves_material_count_get (struct Curves *curves)
 
struct GPUTexture ** DRW_curves_texture_for_evaluated_attribute (struct Curves *curves, const char *name, bool *r_is_point_domain)
 
struct GPUBatchDRW_curves_batch_cache_get_edit_points (struct Curves *curves)
 
void DRW_curves_batch_cache_create_requested (struct Object *ob)
 
PointCloud
int DRW_pointcloud_material_count_get (struct PointCloud *pointcloud)
 
struct GPUBatchDRW_pointcloud_batch_cache_get_dots (struct Object *ob)
 
struct GPUBatchDRW_pointcloud_batch_cache_get_surface (struct Object *ob)
 
struct GPUBatch ** DRW_cache_pointcloud_surface_shaded_get (struct Object *ob, struct GPUMaterial **gpumat_array, uint gpumat_array_len)
 
Volume
int DRW_volume_material_count_get (struct Volume *volume)
 
struct GPUBatchDRW_volume_batch_cache_get_wireframes_face (struct Volume *volume)
 
struct GPUBatchDRW_volume_batch_cache_get_selection_surface (struct Volume *volume)
 
Mesh
void DRW_mesh_batch_cache_create_requested (struct TaskGraph *task_graph, struct Object *ob, struct Mesh *me, const struct Scene *scene, bool is_paint_mode, bool use_hide)
 
struct GPUBatchDRW_mesh_batch_cache_get_all_verts (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_all_edges (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_loose_edges (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edge_detection (struct Mesh *me, bool *r_is_manifold)
 
struct GPUBatchDRW_mesh_batch_cache_get_surface (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_surface_edges (struct Object *object, struct Mesh *me)
 
struct GPUBatch ** DRW_mesh_batch_cache_get_surface_shaded (struct Object *object, struct Mesh *me, struct GPUMaterial **gpumat_array, uint gpumat_array_len)
 
struct GPUBatch ** DRW_mesh_batch_cache_get_surface_texpaint (struct Object *object, struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_surface_texpaint_single (struct Object *object, struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_surface_vertpaint (struct Object *object, struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_surface_sculpt (struct Object *object, struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_surface_weights (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_sculpt_overlays (struct Mesh *me)
 
Edit-Mesh Drawing
struct GPUBatchDRW_mesh_batch_cache_get_edit_triangles (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edit_vertices (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edit_edges (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edit_vnors (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edit_lnors (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edit_facedots (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edit_skin_roots (struct Mesh *me)
 
Edit-mesh Selection
struct GPUBatchDRW_mesh_batch_cache_get_triangles_with_select_id (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_facedots_with_select_id (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edges_with_select_id (struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_verts_with_select_id (struct Mesh *me)
 
Object Mode Wireframe Overlays
struct GPUBatchDRW_mesh_batch_cache_get_wireframes_face (struct Mesh *me)
 
Edit-mesh UV Editor
struct GPUBatchDRW_mesh_batch_cache_get_edituv_faces_stretch_area (struct Object *object, struct Mesh *me, float **tot_area, float **tot_uv_area)
 
struct GPUBatchDRW_mesh_batch_cache_get_edituv_faces_stretch_angle (struct Object *object, struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edituv_faces (struct Object *object, struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edituv_edges (struct Object *object, struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edituv_verts (struct Object *object, struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edituv_facedots (struct Object *object, struct Mesh *me)
 
For Image UV Editor
struct GPUBatchDRW_mesh_batch_cache_get_uv_edges (struct Object *object, struct Mesh *me)
 
struct GPUBatchDRW_mesh_batch_cache_get_edit_mesh_analysis (struct Mesh *me)
 
Particles
struct GPUBatchDRW_particles_batch_cache_get_hair (struct Object *object, struct ParticleSystem *psys, struct ModifierData *md)
 
struct GPUBatchDRW_particles_batch_cache_get_dots (struct Object *object, struct ParticleSystem *psys)
 
struct GPUBatchDRW_particles_batch_cache_get_edit_strands (struct Object *object, struct ParticleSystem *psys, struct PTCacheEdit *edit, bool use_weight)
 
struct GPUBatchDRW_particles_batch_cache_get_edit_inner_points (struct Object *object, struct ParticleSystem *psys, struct PTCacheEdit *edit)
 
struct GPUBatchDRW_particles_batch_cache_get_edit_tip_points (struct Object *object, struct ParticleSystem *psys, struct PTCacheEdit *edit)
 

For Direct Data Access

enum  {
  VFLAG_VERT_ACTIVE = 1 << 0 , VFLAG_VERT_SELECTED = 1 << 1 , VFLAG_VERT_SELECTED_BEZT_HANDLE = 1 << 2 , VFLAG_EDGE_ACTIVE = 1 << 3 ,
  VFLAG_EDGE_SELECTED = 1 << 4 , VFLAG_EDGE_SEAM = 1 << 5 , VFLAG_EDGE_SHARP = 1 << 6 , VFLAG_EDGE_FREESTYLE = 1 << 7 ,
  VFLAG_VERT_GPENCIL_BEZT_HANDLE = 1 << 30
}
 
enum  {
  VFLAG_FACE_ACTIVE = 1 << 0 , VFLAG_FACE_SELECTED = 1 << 1 , VFLAG_FACE_FREESTYLE = 1 << 2 , VFLAG_VERT_UV_SELECT = 1 << 3 ,
  VFLAG_VERT_UV_PINNED = 1 << 4 , VFLAG_EDGE_UV_SELECT = 1 << 5 , VFLAG_FACE_UV_ACTIVE = 1 << 6 , VFLAG_FACE_UV_SELECT = 1 << 7
}
 
struct GPUVertBufDRW_mesh_batch_cache_pos_vertbuf_get (struct Mesh *me)
 
struct GPUVertBufDRW_mball_batch_cache_pos_vertbuf_get (struct Object *ob)
 
int DRW_mesh_material_count_get (const struct Object *object, const struct Mesh *me)
 

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
VFLAG_VERT_ACTIVE 
VFLAG_VERT_SELECTED 
VFLAG_VERT_SELECTED_BEZT_HANDLE 
VFLAG_EDGE_ACTIVE 
VFLAG_EDGE_SELECTED 
VFLAG_EDGE_SEAM 
VFLAG_EDGE_SHARP 
VFLAG_EDGE_FREESTYLE 
VFLAG_VERT_GPENCIL_BEZT_HANDLE 

Definition at line 319 of file draw_cache_impl.h.

◆ anonymous enum

anonymous enum
Enumerator
VFLAG_FACE_ACTIVE 
VFLAG_FACE_SELECTED 
VFLAG_FACE_FREESTYLE 
VFLAG_VERT_UV_SELECT 
VFLAG_VERT_UV_PINNED 
VFLAG_EDGE_UV_SELECT 
VFLAG_FACE_UV_ACTIVE 
VFLAG_FACE_UV_SELECT 

Definition at line 333 of file draw_cache_impl.h.

Function Documentation

◆ DRW_batch_cache_free_old()

void DRW_batch_cache_free_old ( struct Object ob,
int  ctime 
)

◆ DRW_cache_pointcloud_surface_shaded_get()

struct GPUBatch** DRW_cache_pointcloud_surface_shaded_get ( struct Object ob,
struct GPUMaterial **  gpumat_array,
uint  gpumat_array_len 
)

◆ DRW_curve_batch_cache_create_requested()

void DRW_curve_batch_cache_create_requested ( struct Object ob,
const struct Scene scene 
)

◆ DRW_curve_batch_cache_dirty_tag()

void DRW_curve_batch_cache_dirty_tag ( struct Curve cu,
int  mode 
)

◆ DRW_curve_batch_cache_free()

void DRW_curve_batch_cache_free ( struct Curve cu)

◆ DRW_curve_batch_cache_get_edit_edges()

struct GPUBatch* DRW_curve_batch_cache_get_edit_edges ( struct Curve cu)

◆ DRW_curve_batch_cache_get_edit_verts()

struct GPUBatch* DRW_curve_batch_cache_get_edit_verts ( struct Curve cu)

◆ DRW_curve_batch_cache_get_normal_edge()

struct GPUBatch* DRW_curve_batch_cache_get_normal_edge ( struct Curve cu)

◆ DRW_curve_batch_cache_get_wire_edge()

struct GPUBatch* DRW_curve_batch_cache_get_wire_edge ( struct Curve cu)

◆ DRW_curve_batch_cache_validate()

void DRW_curve_batch_cache_validate ( struct Curve cu)

◆ DRW_curve_material_count_get()

int DRW_curve_material_count_get ( struct Curve cu)

Definition at line 790 of file draw_cache_impl_curve.cc.

References max_ii(), and Curve::totcol.

Referenced by DRW_cache_object_material_count_get().

◆ DRW_curves_batch_cache_create_requested()

void DRW_curves_batch_cache_create_requested ( struct Object ob)

◆ DRW_curves_batch_cache_dirty_tag()

void DRW_curves_batch_cache_dirty_tag ( struct Curves curves,
int  mode 
)

◆ DRW_curves_batch_cache_free()

void DRW_curves_batch_cache_free ( struct Curves curves)

◆ DRW_curves_batch_cache_free_old()

void DRW_curves_batch_cache_free_old ( struct Curves curves,
int  ctime 
)

◆ DRW_curves_batch_cache_get_edit_points()

struct GPUBatch* DRW_curves_batch_cache_get_edit_points ( struct Curves curves)

◆ DRW_curves_batch_cache_validate()

void DRW_curves_batch_cache_validate ( struct Curves curves)

◆ DRW_curves_material_count_get()

int DRW_curves_material_count_get ( struct Curves curves)

Definition at line 612 of file draw_cache_impl_curves.cc.

References curves, and max_ii().

Referenced by DRW_cache_object_material_count_get().

◆ DRW_curves_texture_for_evaluated_attribute()

struct GPUTexture** DRW_curves_texture_for_evaluated_attribute ( struct Curves curves,
const char *  name,
bool r_is_point_domain 
)

◆ DRW_displist_indexbuf_create_edges_adjacency_lines()

void DRW_displist_indexbuf_create_edges_adjacency_lines ( struct ListBase lb,
struct GPUIndexBuf ibo,
bool r_is_manifold 
)

◆ DRW_displist_indexbuf_create_lines_in_order()

void DRW_displist_indexbuf_create_lines_in_order ( struct ListBase lb,
struct GPUIndexBuf ibo 
)

◆ DRW_displist_indexbuf_create_triangles_in_order()

void DRW_displist_indexbuf_create_triangles_in_order ( struct ListBase lb,
struct GPUIndexBuf ibo 
)

◆ DRW_displist_vertbuf_create_pos_and_nor()

void DRW_displist_vertbuf_create_pos_and_nor ( struct ListBase lb,
struct GPUVertBuf vbo,
const struct Scene scene 
)

◆ DRW_displist_vertbuf_create_wiredata()

void DRW_displist_vertbuf_create_wiredata ( struct ListBase lb,
struct GPUVertBuf vbo 
)

◆ DRW_gpencil_batch_cache_dirty_tag()

void DRW_gpencil_batch_cache_dirty_tag ( struct bGPdata gpd)

Definition at line 155 of file draw_cache_impl_gpencil.c.

References bGPdata::flag, and GP_DATA_CACHE_IS_DIRTY.

Referenced by DRW_engines_register().

◆ DRW_gpencil_batch_cache_free()

void DRW_gpencil_batch_cache_free ( struct bGPdata gpd)

◆ DRW_lattice_batch_cache_dirty_tag()

void DRW_lattice_batch_cache_dirty_tag ( struct Lattice lt,
int  mode 
)

◆ DRW_lattice_batch_cache_free()

void DRW_lattice_batch_cache_free ( struct Lattice lt)

◆ DRW_lattice_batch_cache_get_all_edges()

struct GPUBatch* DRW_lattice_batch_cache_get_all_edges ( struct Lattice lt,
bool  use_weight,
int  actdef 
)

◆ DRW_lattice_batch_cache_get_all_verts()

struct GPUBatch* DRW_lattice_batch_cache_get_all_verts ( struct Lattice lt)

◆ DRW_lattice_batch_cache_get_edit_verts()

struct GPUBatch* DRW_lattice_batch_cache_get_edit_verts ( struct Lattice lt)

◆ DRW_lattice_batch_cache_validate()

void DRW_lattice_batch_cache_validate ( struct Lattice lt)

◆ DRW_mball_batch_cache_dirty_tag()

void DRW_mball_batch_cache_dirty_tag ( struct MetaBall mb,
int  mode 
)

◆ DRW_mball_batch_cache_free()

void DRW_mball_batch_cache_free ( struct MetaBall mb)

◆ DRW_mball_batch_cache_pos_vertbuf_get()

struct GPUVertBuf* DRW_mball_batch_cache_pos_vertbuf_get ( struct Object ob)

◆ DRW_mball_batch_cache_validate()

void DRW_mball_batch_cache_validate ( struct MetaBall mb)

◆ DRW_mesh_batch_cache_create_requested()

void DRW_mesh_batch_cache_create_requested ( struct TaskGraph task_graph,
struct Object ob,
struct Mesh me,
const struct Scene scene,
bool  is_paint_mode,
bool  use_hide 
)

Can be called for any surface type. Mesh *me is the final mesh.

Referenced by drw_batch_cache_generate_requested(), drw_batch_cache_generate_requested_evaluated_mesh_or_curve(), and DRW_draw_depth_object().

◆ DRW_mesh_batch_cache_dirty_tag()

void DRW_mesh_batch_cache_dirty_tag ( struct Mesh me,
eMeshBatchDirtyMode  mode 
)

◆ DRW_mesh_batch_cache_free()

void DRW_mesh_batch_cache_free ( struct Mesh me)

◆ DRW_mesh_batch_cache_free_old()

void DRW_mesh_batch_cache_free_old ( struct Mesh me,
int  ctime 
)

Thread safety need to be assured by caller. Don't call this during drawing.

Note
For now this only free the shading batches / VBO if any cd layers is not needed anymore.

Definition at line 1264 of file draw_cache_impl_mesh.cc.

References MeshBatchCache::attr_used, MeshBatchCache::attr_used_over_time, Mesh_Runtime::batch_cache, MeshBatchCache::cd_used, MeshBatchCache::cd_used_over_time, drw_attributes_clear(), drw_attributes_overlap(), MeshBatchCache::lastmatch, mesh_batch_cache_discard_shaded_tri(), mesh_cd_layers_type_clear(), mesh_cd_layers_type_equal(), and Mesh::runtime.

Referenced by DRW_batch_cache_free_old().

◆ DRW_mesh_batch_cache_get_all_edges()

struct GPUBatch* DRW_mesh_batch_cache_get_all_edges ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_all_verts()

struct GPUBatch* DRW_mesh_batch_cache_get_all_verts ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_edge_detection()

struct GPUBatch* DRW_mesh_batch_cache_get_edge_detection ( struct Mesh me,
bool r_is_manifold 
)

◆ DRW_mesh_batch_cache_get_edges_with_select_id()

struct GPUBatch* DRW_mesh_batch_cache_get_edges_with_select_id ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_edit_edges()

struct GPUBatch* DRW_mesh_batch_cache_get_edit_edges ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_edit_facedots()

struct GPUBatch* DRW_mesh_batch_cache_get_edit_facedots ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_edit_lnors()

struct GPUBatch* DRW_mesh_batch_cache_get_edit_lnors ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_edit_mesh_analysis()

struct GPUBatch* DRW_mesh_batch_cache_get_edit_mesh_analysis ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_edit_skin_roots()

struct GPUBatch* DRW_mesh_batch_cache_get_edit_skin_roots ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_edit_triangles()

struct GPUBatch* DRW_mesh_batch_cache_get_edit_triangles ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_edit_vertices()

struct GPUBatch* DRW_mesh_batch_cache_get_edit_vertices ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_edit_vnors()

struct GPUBatch* DRW_mesh_batch_cache_get_edit_vnors ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_edituv_edges()

struct GPUBatch* DRW_mesh_batch_cache_get_edituv_edges ( struct Object object,
struct Mesh me 
)

◆ DRW_mesh_batch_cache_get_edituv_facedots()

struct GPUBatch* DRW_mesh_batch_cache_get_edituv_facedots ( struct Object object,
struct Mesh me 
)

◆ DRW_mesh_batch_cache_get_edituv_faces()

struct GPUBatch* DRW_mesh_batch_cache_get_edituv_faces ( struct Object object,
struct Mesh me 
)

◆ DRW_mesh_batch_cache_get_edituv_faces_stretch_angle()

struct GPUBatch* DRW_mesh_batch_cache_get_edituv_faces_stretch_angle ( struct Object object,
struct Mesh me 
)

◆ DRW_mesh_batch_cache_get_edituv_faces_stretch_area()

struct GPUBatch* DRW_mesh_batch_cache_get_edituv_faces_stretch_area ( struct Object object,
struct Mesh me,
float **  tot_area,
float **  tot_uv_area 
)

Creates the GPUBatch for drawing the UV Stretching Area Overlay. Optional retrieves the total area or total uv area of the mesh.

The cache->tot_area and cache->tot_uv_areaupdate are calculation are only valid after callingDRW_mesh_batch_cache_create_requested`.

Definition at line 1184 of file draw_cache_impl_mesh.cc.

References MeshBatchCache::batch, DRW_batch_request(), MeshBatchList::edituv_faces_stretch_area, edituv_request_active_uv(), MBC_EDITUV_FACES_STRETCH_AREA, mesh_batch_cache_add_request(), mesh_batch_cache_get(), MeshBatchCache::tot_area, and MeshBatchCache::tot_uv_area.

Referenced by overlay_edit_uv_cache_populate().

◆ DRW_mesh_batch_cache_get_edituv_verts()

struct GPUBatch* DRW_mesh_batch_cache_get_edituv_verts ( struct Object object,
struct Mesh me 
)

◆ DRW_mesh_batch_cache_get_facedots_with_select_id()

struct GPUBatch* DRW_mesh_batch_cache_get_facedots_with_select_id ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_loose_edges()

struct GPUBatch* DRW_mesh_batch_cache_get_loose_edges ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_sculpt_overlays()

struct GPUBatch* DRW_mesh_batch_cache_get_sculpt_overlays ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_surface()

struct GPUBatch* DRW_mesh_batch_cache_get_surface ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_surface_edges()

struct GPUBatch* DRW_mesh_batch_cache_get_surface_edges ( struct Object object,
struct Mesh me 
)

◆ DRW_mesh_batch_cache_get_surface_sculpt()

struct GPUBatch* DRW_mesh_batch_cache_get_surface_sculpt ( struct Object object,
struct Mesh me 
)

◆ DRW_mesh_batch_cache_get_surface_shaded()

struct GPUBatch** DRW_mesh_batch_cache_get_surface_shaded ( struct Object object,
struct Mesh me,
struct GPUMaterial **  gpumat_array,
uint  gpumat_array_len 
)

◆ DRW_mesh_batch_cache_get_surface_texpaint()

struct GPUBatch** DRW_mesh_batch_cache_get_surface_texpaint ( struct Object object,
struct Mesh me 
)

◆ DRW_mesh_batch_cache_get_surface_texpaint_single()

struct GPUBatch* DRW_mesh_batch_cache_get_surface_texpaint_single ( struct Object object,
struct Mesh me 
)

◆ DRW_mesh_batch_cache_get_surface_vertpaint()

struct GPUBatch* DRW_mesh_batch_cache_get_surface_vertpaint ( struct Object object,
struct Mesh me 
)

◆ DRW_mesh_batch_cache_get_surface_weights()

struct GPUBatch* DRW_mesh_batch_cache_get_surface_weights ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_triangles_with_select_id()

struct GPUBatch* DRW_mesh_batch_cache_get_triangles_with_select_id ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_uv_edges()

struct GPUBatch* DRW_mesh_batch_cache_get_uv_edges ( struct Object object,
struct Mesh me 
)

◆ DRW_mesh_batch_cache_get_verts_with_select_id()

struct GPUBatch* DRW_mesh_batch_cache_get_verts_with_select_id ( struct Mesh me)

◆ DRW_mesh_batch_cache_get_wireframes_face()

struct GPUBatch* DRW_mesh_batch_cache_get_wireframes_face ( struct Mesh me)

◆ DRW_mesh_batch_cache_pos_vertbuf_get()

struct GPUVertBuf* DRW_mesh_batch_cache_pos_vertbuf_get ( struct Mesh me)

◆ DRW_mesh_batch_cache_validate()

void DRW_mesh_batch_cache_validate ( struct Object object,
struct Mesh me 
)

◆ DRW_mesh_material_count_get()

int DRW_mesh_material_count_get ( const struct Object object,
const struct Mesh me 
)

◆ DRW_metaball_batch_cache_get_edge_detection()

struct GPUBatch* DRW_metaball_batch_cache_get_edge_detection ( struct Object ob,
bool r_is_manifold 
)

◆ DRW_metaball_batch_cache_get_surface_shaded()

struct GPUBatch** DRW_metaball_batch_cache_get_surface_shaded ( struct Object ob,
struct MetaBall mb,
struct GPUMaterial **  gpumat_array,
uint  gpumat_array_len 
)

◆ DRW_metaball_batch_cache_get_triangles_with_normals()

struct GPUBatch* DRW_metaball_batch_cache_get_triangles_with_normals ( struct Object ob)

◆ DRW_metaball_batch_cache_get_wireframes_face()

struct GPUBatch* DRW_metaball_batch_cache_get_wireframes_face ( struct Object ob)

◆ DRW_metaball_material_count_get()

int DRW_metaball_material_count_get ( struct MetaBall mb)

◆ DRW_particle_batch_cache_dirty_tag()

void DRW_particle_batch_cache_dirty_tag ( struct ParticleSystem psys,
int  mode 
)

◆ DRW_particle_batch_cache_free()

void DRW_particle_batch_cache_free ( struct ParticleSystem psys)

◆ DRW_particles_batch_cache_get_dots()

struct GPUBatch* DRW_particles_batch_cache_get_dots ( struct Object object,
struct ParticleSystem psys 
)

◆ DRW_particles_batch_cache_get_edit_inner_points()

struct GPUBatch* DRW_particles_batch_cache_get_edit_inner_points ( struct Object object,
struct ParticleSystem psys,
struct PTCacheEdit edit 
)

◆ DRW_particles_batch_cache_get_edit_strands()

struct GPUBatch* DRW_particles_batch_cache_get_edit_strands ( struct Object object,
struct ParticleSystem psys,
struct PTCacheEdit edit,
bool  use_weight 
)

◆ DRW_particles_batch_cache_get_edit_tip_points()

struct GPUBatch* DRW_particles_batch_cache_get_edit_tip_points ( struct Object object,
struct ParticleSystem psys,
struct PTCacheEdit edit 
)

◆ DRW_particles_batch_cache_get_hair()

struct GPUBatch* DRW_particles_batch_cache_get_hair ( struct Object object,
struct ParticleSystem psys,
struct ModifierData md 
)

◆ DRW_pointcloud_batch_cache_dirty_tag()

void DRW_pointcloud_batch_cache_dirty_tag ( struct PointCloud pointcloud,
int  mode 
)

◆ DRW_pointcloud_batch_cache_free()

void DRW_pointcloud_batch_cache_free ( struct PointCloud pointcloud)

◆ DRW_pointcloud_batch_cache_get_dots()

struct GPUBatch* DRW_pointcloud_batch_cache_get_dots ( struct Object ob)

◆ DRW_pointcloud_batch_cache_get_surface()

struct GPUBatch* DRW_pointcloud_batch_cache_get_surface ( struct Object ob)

◆ DRW_pointcloud_batch_cache_validate()

void DRW_pointcloud_batch_cache_validate ( struct PointCloud pointcloud)

◆ DRW_pointcloud_material_count_get()

int DRW_pointcloud_material_count_get ( struct PointCloud pointcloud)

◆ DRW_vertbuf_create_wiredata()

void DRW_vertbuf_create_wiredata ( struct GPUVertBuf vbo,
int  vert_len 
)

◆ DRW_volume_batch_cache_dirty_tag()

void DRW_volume_batch_cache_dirty_tag ( struct Volume volume,
int  mode 
)

◆ DRW_volume_batch_cache_free()

void DRW_volume_batch_cache_free ( struct Volume volume)

◆ DRW_volume_batch_cache_get_selection_surface()

struct GPUBatch* DRW_volume_batch_cache_get_selection_surface ( struct Volume volume)

◆ DRW_volume_batch_cache_get_wireframes_face()

struct GPUBatch* DRW_volume_batch_cache_get_wireframes_face ( struct Volume volume)

◆ DRW_volume_batch_cache_validate()

void DRW_volume_batch_cache_validate ( struct Volume volume)

◆ DRW_volume_material_count_get()

int DRW_volume_material_count_get ( struct Volume volume)

Definition at line 345 of file draw_cache_impl_volume.c.

References max_ii(), and Volume::totcol.

Referenced by DRW_cache_object_material_count_get().