Blender  V3.3
Public Attributes | List of all members
Mesh_Runtime Struct Reference

#include <DNA_mesh_types.h>

Public Attributes

struct Meshmesh_eval
 
voideval_mutex
 
voidnormals_mutex
 
voidrender_mutex
 
struct EditMeshDataedit_data
 
voidbatch_cache
 
struct MLoopTri_Store looptris
 
struct BVHCachebvh_cache
 
struct ShrinkwrapBoundaryDatashrinkwrap_data
 
CustomData_MeshMasks cd_mask_extra
 
struct SubdivCCGsubdiv_ccg
 
int subdiv_ccg_tot_level
 
char deformed_only
 
char is_original
 
char wrapper_type
 
char wrapper_type_finalize
 
struct SubsurfRuntimeDatasubsurf_runtime_data
 
void_pad1
 
char _pad2 [6]
 
char vert_normals_dirty
 
char poly_normals_dirty
 
float(* vert_normals )[3]
 
float(* poly_normals )[3]
 
uint32_tsubsurf_face_dot_tags
 

Detailed Description

Runtime data, not saved in files.

Definition at line 66 of file DNA_mesh_types.h.

Member Data Documentation

◆ _pad1

void* Mesh_Runtime::_pad1

Definition at line 131 of file DNA_mesh_types.h.

◆ _pad2

char Mesh_Runtime::_pad2[6]

Caches for lazily computed vertex and polygon normals. These are stored here rather than in CustomData because they can be calculated on a const mesh, and adding custom data layers on a const mesh is not thread-safe.

Definition at line 138 of file DNA_mesh_types.h.

◆ batch_cache

void* Mesh_Runtime::batch_cache

◆ bvh_cache

struct BVHCache* Mesh_Runtime::bvh_cache

◆ cd_mask_extra

CustomData_MeshMasks Mesh_Runtime::cd_mask_extra

Needed in case we need to lazily initialize the mesh.

Definition at line 101 of file DNA_mesh_types.h.

Referenced by BKE_mesh_wrapper_from_editmesh_with_coords().

◆ deformed_only

char Mesh_Runtime::deformed_only

◆ edit_data

struct EditMeshData* Mesh_Runtime::edit_data

◆ eval_mutex

void* Mesh_Runtime::eval_mutex

◆ is_original

char Mesh_Runtime::is_original

Copied from edit-mesh (hint, draw with edit-mesh data when true).

Modifiers that edit the mesh data in-place must set this to false (most eModifierTypeType_NonGeometrical modifiers). Otherwise the edit-mesh data will be used for drawing, missing changes from modifiers. See T79517.

Definition at line 115 of file DNA_mesh_types.h.

Referenced by BKE_mesh_debug_info(), BKE_mesh_wrapper_from_editmesh_with_coords(), DRW_mesh_batch_cache_create_requested(), mesh_copy_data(), mesh_render_data_create(), modifyMesh(), and uvprojectModifier_do().

◆ looptris

struct MLoopTri_Store Mesh_Runtime::looptris

◆ mesh_eval

struct Mesh* Mesh_Runtime::mesh_eval

◆ normals_mutex

void* Mesh_Runtime::normals_mutex

◆ poly_normals

float(* Mesh_Runtime::poly_normals)[3]

◆ poly_normals_dirty

char Mesh_Runtime::poly_normals_dirty

◆ render_mutex

void* Mesh_Runtime::render_mutex

◆ shrinkwrap_data

struct ShrinkwrapBoundaryData* Mesh_Runtime::shrinkwrap_data

Cache of non-manifold boundary data for Shrinkwrap Target Project.

Definition at line 98 of file DNA_mesh_types.h.

Referenced by BKE_mesh_runtime_reset_on_copy(), BKE_shrinkwrap_compute_boundary_data(), BKE_shrinkwrap_discard_boundary_data(), and BKE_shrinkwrap_init_tree().

◆ subdiv_ccg

struct SubdivCCG* Mesh_Runtime::subdiv_ccg

◆ subdiv_ccg_tot_level

int Mesh_Runtime::subdiv_ccg_tot_level

Definition at line 104 of file DNA_mesh_types.h.

Referenced by object_update_from_subsurf_ccg().

◆ subsurf_face_dot_tags

uint32_t* Mesh_Runtime::subsurf_face_dot_tags

◆ subsurf_runtime_data

struct SubsurfRuntimeData* Mesh_Runtime::subsurf_runtime_data

Settings for lazily evaluating the subdivision on the CPU if needed. These are set in the modifier when GPU subdivision can be performed, and owned by the by the modifier in the object.

Definition at line 130 of file DNA_mesh_types.h.

Referenced by BKE_subsurf_modifier_has_gpu_subdiv(), draw_subdiv_create_requested_buffers(), editbmesh_calc_modifier_final_normals(), mesh_calc_modifier_final_normals(), mesh_wrapper_ensure_subdivision(), stats_mesheval(), and subdiv_cache_mesh_wrapper_settings().

◆ vert_normals

float(* Mesh_Runtime::vert_normals)[3]

◆ vert_normals_dirty

char Mesh_Runtime::vert_normals_dirty

◆ wrapper_type

char Mesh_Runtime::wrapper_type

◆ wrapper_type_finalize

char Mesh_Runtime::wrapper_type_finalize

A type mask from wrapper_type, in case there are differences in finalizing logic between types.

Definition at line 123 of file DNA_mesh_types.h.

Referenced by BKE_mesh_wrapper_deferred_finalize_mdata(), and editbmesh_calc_modifier_final_normals_or_defer().


The documentation for this struct was generated from the following file: