|
Blender V5.0
|
#include <DNA_mesh_types.h>
Inherits Geometry.
Inherited by Volume.
Classes | |
| struct | Triangle |
| struct | SubdFace |
| struct | SubdEdgeCrease |
Public Member Functions | |
| Triangle | get_triangle (const size_t i) const |
| size_t | num_triangles () const |
| SubdEdgeCrease | get_subd_crease (const size_t i) const |
| bool | need_tesselation () |
| Mesh () | |
| void | resize_mesh (const int numverts, const int numtris) |
| void | reserve_mesh (const int numverts, const int numtris) |
| void | resize_subd_faces (const int numfaces, const int numcorners) |
| void | reserve_subd_faces (const int numfaces, const int numcorners) |
| void | reserve_subd_creases (const size_t num_creases) |
| void | clear_non_sockets () |
| void | clear (bool preserve_shaders=false) override |
| void | add_vertex (const float3 P) |
| void | add_vertex_slow (const float3 P) |
| void | add_triangle (const int v0, const int v1, const int v2, const int shader, bool smooth) |
| void | add_subd_face (const int *corners, const int num_corners, const int shader_, bool smooth_) |
| void | add_edge_crease (const int v0, const int v1, const float weight) |
| void | add_vertex_crease (const int v, const float weight) |
| void | copy_center_to_motion_step (const int motion_step) |
| void | compute_bounds () override |
| void | apply_transform (const Transform &tfm, const bool apply_to_motion) override |
| void | add_vertex_normals () |
| void | add_undisplaced (Scene *scene) |
| void | update_generated (Scene *scene) |
| void | update_tangents (Scene *scene, bool undisplaced) |
| void | get_uv_tiles (ustring map, unordered_set< int > &tiles) override |
| void | pack_shaders (Scene *scene, uint *shader) |
| void | pack_normals (packed_float3 *vnormal) |
| void | pack_verts (packed_float3 *tri_verts, packed_uint3 *tri_vindex) |
| bool | has_motion_blur () const override |
| PrimitiveType | primitive_type () const override |
| void | tessellate (SubdParams ¶ms) |
| SubdFace | get_subd_face (const size_t index) const |
| size_t | get_num_subd_faces () const |
| void | set_num_subd_faces (const size_t num_subd_faces_) |
| size_t | get_num_subd_base_verts () const |
| Public Member Functions inherited from Geometry | |
| Geometry (const NodeType *node_type, const Type type) | |
| ~Geometry () override | |
| bool | need_attribute (Scene *scene, AttributeStandard std) |
| bool | need_attribute (Scene *scene, ustring name) |
| AttributeRequestSet | needed_attributes () |
| float | motion_time (const int step) const |
| int | motion_step (const float time) const |
| void | compute_bvh (Device *device, DeviceScene *dscene, SceneParams *params, Progress *progress, const size_t n, size_t total) |
| bool | need_build_bvh (BVHLayout layout) const |
| bool | is_instanced () const |
| bool | has_true_displacement () const |
| bool | has_voxel_attributes () const |
| bool | is_mesh () const |
| bool | is_hair () const |
| bool | is_pointcloud () const |
| bool | is_volume () const |
| bool | is_light () const |
| void | tag_update (Scene *scene, bool rebuild) |
| Public Member Functions inherited from Node | |
| Node (const NodeType *type, ustring name=ustring()) | |
| virtual | ~Node ()=0 |
| void | set (const SocketType &input, bool value) |
| void | set (const SocketType &input, const int value) |
| void | set (const SocketType &input, const uint value) |
| void | set (const SocketType &input, const uint64_t value) |
| void | set (const SocketType &input, const float value) |
| void | set (const SocketType &input, const float2 value) |
| void | set (const SocketType &input, const float3 value) |
| void | set (const SocketType &input, const char *value) |
| void | set (const SocketType &input, ustring value) |
| void | set (const SocketType &input, const Transform &value) |
| void | set (const SocketType &input, Node *value) |
| template<class ValueType, std::enable_if_t< std::is_enum_v< ValueType >, bool > = true> | |
| void | set (const SocketType &input, const ValueType &value) |
| void | set (const SocketType &input, array< bool > &value) |
| void | set (const SocketType &input, array< int > &value) |
| void | set (const SocketType &input, array< float > &value) |
| void | set (const SocketType &input, array< float2 > &value) |
| void | set (const SocketType &input, array< float3 > &value) |
| void | set (const SocketType &input, array< ustring > &value) |
| void | set (const SocketType &input, array< Transform > &value) |
| void | set (const SocketType &input, array< Node * > &value) |
| bool | get_bool (const SocketType &input) const |
| int | get_int (const SocketType &input) const |
| uint | get_uint (const SocketType &input) const |
| uint64_t | get_uint64 (const SocketType &input) const |
| float | get_float (const SocketType &input) const |
| float2 | get_float2 (const SocketType &input) const |
| float3 | get_float3 (const SocketType &input) const |
| ustring | get_string (const SocketType &input) const |
| Transform | get_transform (const SocketType &input) const |
| Node * | get_node (const SocketType &input) const |
| const array< bool > & | get_bool_array (const SocketType &input) const |
| const array< int > & | get_int_array (const SocketType &input) const |
| const array< float > & | get_float_array (const SocketType &input) const |
| const array< float2 > & | get_float2_array (const SocketType &input) const |
| const array< float3 > & | get_float3_array (const SocketType &input) const |
| const array< ustring > & | get_string_array (const SocketType &input) const |
| const array< Transform > & | get_transform_array (const SocketType &input) const |
| const array< Node * > & | get_node_array (const SocketType &input) const |
| bool | has_default_value (const SocketType &input) const |
| void | set_default_value (const SocketType &input) |
| bool | equals_value (const Node &other, const SocketType &socket) const |
| void | copy_value (const SocketType &socket, const Node &other, const SocketType &other_socket) |
| void | set_value (const SocketType &socket, const Node &other, const SocketType &other_socket) |
| bool | equals (const Node &other) const |
| void | hash (MD5Hash &md5) |
| size_t | get_total_size_in_bytes () const |
| bool | is_a (const NodeType *type) |
| bool | socket_is_modified (const SocketType &input) const |
| bool | is_modified () const |
| void | tag_modified () |
| void | clear_modified () |
| void | print_modified_sockets () const |
| const NodeOwner * | get_owner () const |
| void | set_owner (const NodeOwner *owner_) |
| int | reference_count () const |
| void | reference () |
| void | dereference () |
| void | clear_reference_count () |
Protected Member Functions | |
| Mesh (const NodeType *node_type_, Type geom_type_) | |
| void | clear (bool preserve_shaders, bool preserve_voxel_data) |
| Protected Member Functions inherited from Node | |
| template<typename T> | |
| void | set_if_different (const SocketType &input, T value) |
| void | set_if_different (const SocketType &input, Node *value) |
| template<typename T> | |
| void | set_if_different (const SocketType &input, array< T > &value) |
| void | set_if_different (const SocketType &input, array< Node * > &value) |
| void | dereference_all_used_nodes () |
Friends | |
| class | BVH2 |
| class | BVHBuild |
| class | BVHSpatialSplit |
| class | DiagSplit |
| class | EdgeDice |
| class | GeometryManager |
| class | ObjectManager |
Additional Inherited Members | |
| Static Public Attributes inherited from Geometry | |
| static const uint | MAX_MOTION_STEPS = 129 |
| Static Protected Member Functions inherited from Node | |
| template<typename T> | |
| static T & | get_socket_value (const Node *node, const SocketType &socket) |
| Protected Attributes inherited from Node | |
| const NodeOwner * | owner |
| int | ref_count {0} |
| SocketModifiedFlags | socket_modified |
Definition at line 58 of file DNA_mesh_types.h.
| Enumerator | |
|---|---|
| SUBDIVISION_ADAPTIVE_SPACE_PIXEL | |
| SUBDIVISION_ADAPTIVE_SPACE_OBJECT | |
Definition at line 138 of file scene/mesh.h.
| Enumerator | |
|---|---|
| SUBDIVISION_BOUNDARY_NONE | |
| SUBDIVISION_BOUNDARY_EDGE_ONLY | |
| SUBDIVISION_BOUNDARY_EDGE_AND_CORNER | |
Definition at line 123 of file scene/mesh.h.
Definition at line 129 of file scene/mesh.h.
| Enumerator | |
|---|---|
| SUBDIVISION_NONE | |
| SUBDIVISION_LINEAR | |
| SUBDIVISION_CATMULL_CLARK | |
Definition at line 117 of file scene/mesh.h.
Definition at line 331 of file scene/mesh.cpp.
References ATTR_PRIM_SUBD, corner_offset, face_offset, Geometry::Geometry(), subd_attributes, SUBDIVISION_NONE, and vert_offset.
Referenced by Mesh(), Mesh::SubdFace::normal(), ObjectManager, and Volume::Volume().
| Mesh::Mesh | ( | ) |
Definition at line 345 of file scene/mesh.cpp.
References Geometry::Geometry(), Geometry::MESH, and Mesh().
| void Mesh::add_edge_crease | ( | const int | v0, |
| const int | v1, | ||
| const float | weight ) |
Definition at line 510 of file scene/mesh.cpp.
Referenced by create_subd_mesh(), and ObjectManager.
| void Mesh::add_subd_face | ( | const int * | corners, |
| const int | num_corners, | ||
| const int | shader_, | ||
| bool | smooth_ ) |
Definition at line 466 of file scene/mesh.cpp.
References get_subd_face(), i, Mesh::SubdFace::num_ptex_faces(), and Mesh::SubdFace::ptex_offset.
Referenced by ObjectManager, and xml_read_mesh().
| void Mesh::add_triangle | ( | const int | v0, |
| const int | v1, | ||
| const int | v2, | ||
| const int | shader, | ||
| bool | smooth ) |
Definition at line 453 of file scene/mesh.cpp.
References v2.
Referenced by GeometryManager::create_volume_mesh(), ObjectManager, and xml_read_mesh().
| void Mesh::add_undisplaced | ( | Scene * | scene | ) |
Definition at line 759 of file scene/mesh.cpp.
References ATTR_PRIM_GEOMETRY, ATTR_STD_NORMAL_UNDISPLACED, ATTR_STD_POSITION_UNDISPLACED, ATTR_STD_VERTEX_NORMAL, Geometry::attributes, Attribute::buffer_size(), Attribute::data_float3(), Geometry::need_attribute(), size(), and verts.
Referenced by GeometryManager::displace(), and ObjectManager.
| void Mesh::add_vertex | ( | const float3 | P | ) |
Definition at line 441 of file scene/mesh.cpp.
Referenced by GeometryManager::create_volume_mesh(), and ObjectManager.
| void Mesh::add_vertex_crease | ( | const int | v, |
| const float | weight ) |
Definition at line 521 of file scene/mesh.cpp.
References v.
Referenced by create_subd_mesh(), and ObjectManager.
| void Mesh::add_vertex_normals | ( | ) |
Definition at line 655 of file scene/mesh.cpp.
References ATTR_STD_MOTION_VERTEX_NORMAL, ATTR_STD_MOTION_VERTEX_POSITION, ATTR_STD_VERTEX_NORMAL, Geometry::attributes, Mesh::Triangle::compute_normal(), Attribute::data_float3(), get_num_subd_faces(), get_subd_face(), get_triangle(), has_motion_blur(), i, Mesh::SubdFace::normal(), normalize, Mesh::SubdFace::num_corners, num_triangles(), Mesh::SubdFace::start_corner, step, subd_attributes, Geometry::transform_negative_scaled, Mesh::Triangle::v, verts, and zero_float3().
Referenced by GeometryManager::device_update(), and ObjectManager.
| void Mesh::add_vertex_slow | ( | const float3 | P | ) |
Definition at line 447 of file scene/mesh.cpp.
Referenced by ObjectManager.
|
overridevirtual |
Implements Geometry.
Definition at line 617 of file scene/mesh.cpp.
References ATTR_STD_MOTION_VERTEX_NORMAL, ATTR_STD_MOTION_VERTEX_POSITION, Geometry::attributes, Attribute::data_float3(), i, normalize, transform_direction(), Geometry::transform_normal, transform_point(), transform_transposed_inverse(), and verts.
Referenced by ObjectManager.
|
protected |
Definition at line 408 of file scene/mesh.cpp.
References Geometry::attributes, Geometry::clear(), clear_non_sockets(), subd_attributes, SUBDIVISION_NONE, and verts.
|
overridevirtual |
Reimplemented from Geometry.
Reimplemented in Volume.
Definition at line 436 of file scene/mesh.cpp.
References clear().
Referenced by clear(), Volume::clear(), and ObjectManager.
| void Mesh::clear_non_sockets | ( | ) |
Definition at line 400 of file scene/mesh.cpp.
References Geometry::clear().
Referenced by clear(), and ObjectManager.
|
overridevirtual |
Implements Geometry.
Definition at line 570 of file scene/mesh.cpp.
References ATTR_STD_MOTION_VERTEX_POSITION, Geometry::attributes, Geometry::bounds, Attribute::data_float3(), BoundBox::empty, BoundBox::grow(), BoundBox::grow_safe(), i, BoundBox::valid(), verts, and zero_float3().
Referenced by ObjectManager.
| void Mesh::copy_center_to_motion_step | ( | const int | motion_step | ) |
Definition at line 530 of file scene/mesh.cpp.
References ATTR_STD_MOTION_VERTEX_NORMAL, ATTR_STD_MOTION_VERTEX_POSITION, ATTR_STD_VERTEX_NORMAL, Geometry::attributes, Attribute::data_float3(), Geometry::motion_step(), N, P, and verts.
Referenced by ObjectManager.
|
inline |
Definition at line 243 of file scene/mesh.h.
References verts.
Referenced by Attribute::element_size().
|
inline |
Definition at line 235 of file scene/mesh.h.
References get_num_subd_faces().
Referenced by add_vertex_normals(), Attribute::element_size(), GeometryManager::geom_calc_offset(), get_num_subd_faces(), and tessellate().
|
inline |
Definition at line 106 of file scene/mesh.h.
References Mesh::SubdEdgeCrease::crease, i, and Mesh::SubdEdgeCrease::v.
| Mesh::SubdFace Mesh::get_subd_face | ( | const size_t | index | ) | const |
Definition at line 499 of file scene/mesh.cpp.
References Geometry::index, Mesh::SubdFace::num_corners, Mesh::SubdFace::ptex_offset, Mesh::SubdFace::shader, Mesh::SubdFace::smooth, and Mesh::SubdFace::start_corner.
Referenced by add_subd_face(), add_vertex_normals(), ObjectManager, and tessellate().
|
inline |
Definition at line 71 of file scene/mesh.h.
References i.
Referenced by BVHBuild::add_reference_triangles(), add_vertex_normals(), LightManager::device_update_distribution(), GeometryManager::displace(), fill_shader_input(), LightTreeEmitter::LightTreeEmitter(), read_shader_output(), BVH2::refit_primitives(), and BVHSpatialSplit::split_triangle_primitive().
|
overridevirtual |
Implements Geometry.
Definition at line 548 of file scene/mesh.cpp.
References ATTR_PRIM_GEOMETRY, ATTR_PRIM_SUBD, ATTR_STD_UV, Geometry::attributes, Attribute::get_uv_tiles(), subd_attributes, and tiles.
Referenced by ObjectManager.
|
overridevirtual |
Reimplemented from Geometry.
Definition at line 928 of file scene/mesh.cpp.
References ATTR_STD_MOTION_VERTEX_POSITION, Geometry::attributes, subd_attributes, and SUBDIVISION_NONE.
Referenced by BVHBuild::add_reference_triangles(), add_vertex_normals(), GeometryManager::displace(), ObjectManager, and primitive_type().
| bool Mesh::need_tesselation | ( | ) |
Definition at line 323 of file scene/mesh.cpp.
References SUBDIVISION_NONE.
Referenced by GeometryManager::device_update(), and GeometryManager::device_update_preprocess().
|
inline |
Definition at line 77 of file scene/mesh.h.
Referenced by BVHBuild::add_reference_triangles(), add_vertex_normals(), LightTree::build(), count_primitives(), LightManager::device_update_distribution(), GeometryManager::device_update_mesh(), GeometryManager::displace(), Attribute::element_size(), fill_shader_input(), GeometryManager::geom_calc_offset(), pack_shaders(), pack_verts(), read_shader_output(), BVHSpatialSplit::split_object_reference(), update_generated(), and update_tangents().
| void Mesh::pack_normals | ( | packed_float3 * | vnormal | ) |
Definition at line 885 of file scene/mesh.cpp.
References ATTR_STD_VERTEX_NORMAL, Geometry::attributes, Attribute::data_float3(), i, safe_normalize(), Geometry::transform_applied, transform_direction(), Geometry::transform_normal, and verts.
Referenced by GeometryManager::device_update_mesh(), and ObjectManager.
Definition at line 858 of file scene/mesh.cpp.
References Scene::default_surface, i, num_triangles(), and Scene::shader_manager.
Referenced by GeometryManager::device_update_mesh(), and ObjectManager.
| void Mesh::pack_verts | ( | packed_float3 * | tri_verts, |
| packed_uint3 * | tri_vindex ) |
Definition at line 911 of file scene/mesh.cpp.
References i, make_packed_uint3(), num_triangles(), vert_offset, and verts.
Referenced by GeometryManager::device_update_mesh(), and ObjectManager.
|
overridevirtual |
Implements Geometry.
Definition at line 935 of file scene/mesh.cpp.
References has_motion_blur(), PRIMITIVE_MOTION_TRIANGLE, and PRIMITIVE_TRIANGLE.
Referenced by BVHBuild::add_reference_triangles(), and ObjectManager.
| void Mesh::reserve_mesh | ( | const int | numverts, |
| const int | numtris ) |
Definition at line 357 of file scene/mesh.cpp.
References Geometry::attributes, and verts.
Referenced by GeometryManager::create_volume_mesh(), ObjectManager, and xml_read_mesh().
| void Mesh::reserve_subd_creases | ( | const size_t | num_creases | ) |
Definition at line 394 of file scene/mesh.cpp.
Referenced by create_subd_mesh(), and ObjectManager.
| void Mesh::reserve_subd_faces | ( | const int | numfaces, |
| const int | numcorners ) |
Definition at line 381 of file scene/mesh.cpp.
References subd_attributes.
Referenced by ObjectManager, and xml_read_mesh().
| void Mesh::resize_mesh | ( | const int | numverts, |
| const int | numtris ) |
Definition at line 347 of file scene/mesh.cpp.
References Geometry::attributes, and verts.
Referenced by create_mesh(), EdgeDice::EdgeDice(), and ObjectManager.
| void Mesh::resize_subd_faces | ( | const int | numfaces, |
| const int | numcorners ) |
Definition at line 368 of file scene/mesh.cpp.
References subd_attributes.
Referenced by create_mesh(), and ObjectManager.
|
inline |
Definition at line 239 of file scene/mesh.h.
| CCL_NAMESPACE_BEGIN void Mesh::tessellate | ( | SubdParams & | params | ) |
Definition at line 18 of file mesh_subdivision.cpp.
References DiagSplit, EdgeDice::dice(), EdgeDice, float, Patch::from_ngon, get_num_subd_faces(), get_subd_face(), LinearQuadPatch::hull, Mesh::SubdFace::is_quad(), mod, Mesh::SubdFace::num_corners, params, Patch::patch_index, Mesh::SubdFace::ptex_offset, Mesh::SubdFace::shader, Patch::shader, Mesh::SubdFace::smooth, Patch::smooth, split(), Mesh::SubdFace::start_corner, SUBDIVISION_CATMULL_CLARK, SUBDIVISION_LINEAR, verts, and zero_float3().
Referenced by ObjectManager.
| void Mesh::update_generated | ( | Scene * | scene | ) |
Definition at line 785 of file scene/mesh.cpp.
References AttributeSet::add(), ATTR_STD_GENERATED, Geometry::attributes, Attribute::data_float3(), AttributeSet::find(), i, Geometry::need_attribute(), num_triangles(), subd_attributes, and verts.
Referenced by ObjectManager.
| void Mesh::update_tangents | ( | Scene * | scene, |
| bool | undisplaced ) |
Definition at line 804 of file scene/mesh.cpp.
References assert, ATTR_ELEMENT_CORNER, ATTR_STD_UV, ATTR_STD_UV_TANGENT, ATTR_STD_UV_TANGENT_SIGN, ATTR_STD_UV_TANGENT_SIGN_UNDISPLACED, ATTR_STD_UV_TANGENT_UNDISPLACED, ATTR_STD_VERTEX_NORMAL, Geometry::attributes, Attribute::element, mikk_compute_tangents(), Attribute::name, Geometry::need_attribute(), num_triangles(), and Attribute::type.
Referenced by GeometryManager::displace(), and ObjectManager.
|
friend |
|
friend |
|
friend |
Definition at line 188 of file scene/mesh.h.
References BVHSpatialSplit.
Referenced by BVHSpatialSplit.
|
friend |
Definition at line 189 of file scene/mesh.h.
References DiagSplit.
Referenced by DiagSplit, and tessellate().
|
friend |
Definition at line 190 of file scene/mesh.h.
References EdgeDice.
Referenced by EdgeDice, and tessellate().
|
friend |
Definition at line 191 of file scene/mesh.h.
References GeometryManager.
Referenced by GeometryManager.
|
friend |
Definition at line 192 of file scene/mesh.h.
References add_edge_crease(), add_subd_face(), add_triangle(), add_undisplaced(), add_vertex(), add_vertex_crease(), add_vertex_normals(), add_vertex_slow(), apply_transform(), clear(), clear_non_sockets(), compute_bounds(), copy_center_to_motion_step(), false, get_subd_face(), get_uv_tiles(), has_motion_blur(), Geometry::index, Mesh(), Geometry::motion_step(), ObjectManager, override, P, pack_normals(), pack_shaders(), pack_verts(), params, primitive_type(), reserve_mesh(), reserve_subd_creases(), reserve_subd_faces(), resize_mesh(), resize_subd_faces(), tessellate(), tiles, update_generated(), update_tangents(), v, and v2.
Referenced by ObjectManager.
| char Mesh::_pad1 |
Definition at line 241 of file DNA_mesh_types.h.
| int Mesh::act_face |
In most cases the last selected element (see mselect) represents the active element. For faces we make an exception and store the active face separately so it can be active even when no faces are selected. This is done to prevent flickering in the material properties and UV Editor which base the content they display on the current material which is controlled by the active face.
Definition at line 143 of file DNA_mesh_types.h.
Referenced by BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_compact(), and paintface_mouse_select().
| char* Mesh::active_color_attribute |
The color attribute currently selected in the list and edited by a user.
Definition at line 174 of file DNA_mesh_types.h.
Referenced by BKE_mesh_nomain_to_mesh(), BKE_sculpt_color_layer_create_if_needed(), copy_attribute_names(), data_transfer_mesh_attributes_transfer_active_color_string(), edbm_reverse_colors_exec(), edbm_rotate_colors_exec(), face_corner_color_equalize_verts(), blender::io::fbx::import_colors(), blender::io::ply::load_custom_attributes(), blender::io::ply::load_plydata(), mesh_copy_data(), mesh_free_data(), blender::bke::mesh_remesh_reproject_attributes(), blender::draw::particle_batch_cache_ensure_pos_and_seg(), blender::draw::request_active_and_default_color_attributes(), blender::draw::retrieve_active_attribute_names(), blender::draw::sculpt_batches_get(), transform_active_color_data(), update_active_fdata_layers(), vertex_paint_from_weight(), and blender::io::obj::OBJWriter::write_vertex_coords().
| char* Mesh::active_uv_map_attribute |
The UV map currently selected in the list and edited by a user. Currently only used for file reading/writing (see AttributeStorage).
Definition at line 182 of file DNA_mesh_types.h.
Referenced by mesh_copy_data(), and mesh_free_data().
| struct AnimData* Mesh::adt |
Animation data (must be immediately after id for utilities to use it).
Definition at line 67 of file DNA_mesh_types.h.
Referenced by acf_dsmesh_setting_ptr(), and make_new_animlistelem().
| struct AttributeStorage Mesh::attribute_storage |
Vertex, edge, face, and corner generic attributes. Currently unused at runtime, but used for forward compatibility when reading files (see #122398).
Definition at line 99 of file DNA_mesh_types.h.
Referenced by AttributeOwner::get_storage(), mesh_copy_data(), mesh_foreach_working_space_color(), mesh_free_data(), and mesh_init_data().
| int Mesh::attributes_active_index |
The index of the active attribute in the UI. The attribute list is a combination of the generic type attributes from vertex, edge, face, and corner custom data.
Set to -1 when none is active.
Definition at line 120 of file DNA_mesh_types.h.
Referenced by BKE_attributes_active_index_p(), and BKE_mesh_copy_parameters().
| CustomData Mesh::corner_data |
Definition at line 104 of file DNA_mesh_types.h.
Referenced by blender::io::alembic::add_customdata_cb(), add_interpolated_faces_to_new_mesh(), arrayModifier_doArray(), blender::ed::object::bake(), BKE_mesh_calc_edges_legacy(), BKE_mesh_convert_mfaces_to_mpolys(), BKE_mesh_debug_info(), BKE_mesh_do_versions_convert_mfaces_to_mpolys(), BKE_mesh_new_nomain_from_template_ex(), BKE_mesh_nomain_to_mesh(), BKE_mesh_runtime_is_valid(), BKE_mesh_tessface_calc(), blo_update_defaults_scene(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me_compact(), BM_mesh_copy_init_customdata_from_mesh_array(), blender::bm_to_mesh_loops(), context_init_grid_pointers(), copy_ccg_data(), copy_masked_faces_to_new_mesh(), blender::geometry::create_merged_mesh(), data_transfer_dtdata_type_postprocess(), data_transfer_layersmapping_generate(), blender::geometry::debug_randomize_face_order(), do_versions_mesh_mloopcol_swap_2_62_1(), blender::ed::object::dt_layers_select_src_itemf(), ED_mesh_uv_add(), ED_operator_uvmap_mesh(), ED_paint_proj_mesh_data_check(), blender::draw::overlay::MeshUVs::edit_object_sync(), blender::geometry::execute_realize_mesh_tasks(), blender::nodes::node_geo_extrude_mesh_cc::expand_mesh(), blender::draw::extract_edituv_stretch_angle_subdiv(), blender::draw::extract_face_dots_uv_mesh(), blender::draw::extract_tan_init_common(), blender::draw::extract_uv_maps(), blender::draw::extract_uv_maps_subdiv(), blender::draw::extract_uv_stretch_angle_mesh(), blender::io::ply::generate_vertex_map(), Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh(), blender::io::alembic::get_config(), get_domains(), get_levels_from_disps(), blender::workbench::get_loop_custom_data(), get_mesh_active_uvlayer_name(), get_uv_attribute(), blender::draw::hair_sub_pass_setup_implementation(), imapaint_pick_uv(), blender::ed::mesh::join_objects_exec(), blender::io::ply::load_custom_attributes(), make_duplis_faces(), mesh_calc_tri_tessface(), blender::draw::mesh_cd_ldata_get_from_mesh(), mesh_copy_data(), blender::nodes::node_geo_extrude_mesh_cc::mesh_custom_data_for_domain(), mesh_customdata_get_type(), mesh_ensure_tessellation_customdata(), mesh_foreach_path(), mesh_foreach_working_space_color(), mesh_free_data(), mesh_init_data(), mesh_merge_transform(), mesh_wrapper_ensure_subdivision(), MOD_get_texture_coords(), MOD_solidify_extrude_modifyMesh(), MOD_solidify_nonmanifold_modifyMesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), multires_apply_smat(), multires_apply_uniform_scale(), multires_ccg_settings_init(), multires_create_grids_in_unsubdivided_base_mesh(), multires_customdata_delete(), multires_del_higher(), multires_ensure_external_read(), multires_force_external_reload(), multires_set_tot_mdisps(), multires_subdivide_create_tangent_displacement_linear_grids(), multires_topology_changed(), multiresModifier_del_levels(), multiresModifier_set_levels_from_disps(), multiresModifier_subdivide_to_level(), blender::ed::object::object_curves_empty_hair_add_exec(), blender::draw::overlay::MeshUVs::object_sync(), paint_sample_color(), paintface_minmax(), blender::draw::particle_batch_cache_ensure_pos_and_seg(), proj_paint_layer_clone_init(), proj_paint_state_mesh_eval_init(), project_paint_begin(), project_paint_clone_face_skip(), project_paint_prepare_all_faces(), RE_bake_pixels_populate(), RE_generate_texturemargin_adjacentfaces(), blender::nodes::node_geo_extrude_mesh_cc::remove_unsupported_corner_data(), rename_mesh_uv_seam_attribute(), blender::draw::sculpt_batches_get(), blender::draw::sculpt_batches_per_material_get(), sculpt_multires_modifier_get(), blender::bke::subdiv::subdiv_interpolate_corner_data(), blender::bke::subdiv::subdiv_mesh_ctx_cache_custom_data_layers(), blender::bke::subdiv::subdiv_mesh_ctx_cache_uv_layers(), blender::bke::subdiv::subdiv_mesh_topology_info(), blender::ed::curves::surface_set::surface_set_exec(), triangulate_mesh(), and um_arraystore_expand().
| size_t Mesh::corner_offset |
Definition at line 180 of file scene/mesh.h.
Referenced by GeometryManager::geom_calc_offset(), and Mesh().
| int Mesh::corners_num |
The number of face corners in the mesh, and the size of corner_data.
Definition at line 85 of file DNA_mesh_types.h.
Referenced by blender::io::alembic::add_customdata_cb(), arrayModifier_doArray(), blender::ed::object::bake(), blender::ed::object::bake_targets_populate_pixels_color_attributes(), BKE_mesh_calc_edges_legacy(), BKE_mesh_convert_mfaces_to_mpolys(), BKE_mesh_do_versions_convert_mfaces_to_mpolys(), BKE_mesh_new_nomain_from_template_ex(), BKE_mesh_nomain_to_mesh(), BKE_mesh_remap_calc_loops_from_mesh(), BKE_mesh_runtime_is_valid(), BKE_mesh_tessface_calc(), BKE_mesh_wrapper_ensure_mdata(), BKE_mesh_wrapper_from_editmesh(), BKE_mesh_wrapper_loop_len(), BKE_object_data_transfer_ex(), BKE_object_data_transfer_layout(), BKE_subdiv_to_ccg(), blo_update_defaults_scene(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_compact(), blender::bm_to_mesh_loops(), blender::io::usd::UsdExportTest::compare_blender_mesh_to_usd_prim(), blender::bke::compare_geometry::compare_meshes(), blender::nodes::node_geo_uv_pack_islands_cc::construct_uv_gvarray(), context_init_grid_pointers(), copy_ccg_data(), blender::geometry::create_curves_for_faces(), data_transfer_dtdata_type_postprocess(), data_transfer_layersmapping_generate(), do_versions_mesh_mloopcol_swap_2_62_1(), blender::io::alembic::ABCGenericMeshWriter::do_write(), ED_mesh_uv_add(), blender::nodes::node_geo_extrude_mesh_cc::expand_mesh(), blender::draw::extract_attribute_subdiv(), blender::draw::extract_normals_subdiv(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_edges(), blender::geometry::gather_realize_tasks_recursive(), blender::io::ply::generate_vertex_map(), Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh(), blender::nodes::node_geo_sample_nearest_cc::get_closest_mesh_corners(), blender::io::alembic::get_config(), get_domains(), blender::io::alembic::get_loop_normals(), blender::nodes::node_geo_uv_tangent_cc::TangentFieldInput::get_varray_for_context(), heat_bone_weighting(), blender::io::fbx::import_normals_into_temp_attribute(), Freestyle::BlenderFileLoader::insertShapeNode(), blender::ed::mesh::join_objects_exec(), laplaciansmoothModifier_do(), blender::io::ply::load_plydata(), mesh_calc_tri_tessface(), mesh_copy_data(), blender::geometry::mesh_copy_selection(), blender::geometry::mesh_copy_selection_keep_edges(), blender::geometry::mesh_copy_selection_keep_verts(), mesh_customdata_get_type(), mesh_faces_to_scratch(), mesh_foreach_working_space_color(), blender::bke::mesh_remesh_reproject_attributes(), blender::draw::mesh_render_data_create(), blender::bke::pbvh::mesh_topology_count_matches(), blender::geometry::mesh_triangulate(), mesh_wrapper_ensure_subdivision(), MeshFairingContext::MeshFairingContext(), MOD_solidify_extrude_modifyMesh(), modify_mesh(), modify_mesh(), modify_mesh(), multires_apply_uniform_scale(), multires_create_grids_in_unsubdivided_base_mesh(), multires_customdata_delete(), multires_del_higher(), multires_do_versions_simple_to_catmull_clark(), multires_ensure_external_read(), multires_force_external_reload(), multires_set_tot_mdisps(), multires_subdivide_create_tangent_displacement_linear_grids(), multires_topology_changed(), multires_unsubdivide_extract_grids(), multiresModifier_del_levels(), multiresModifier_subdivide_to_level(), blender::nodes::node_geo_triangulate_cc::node_geo_exec(), normalEditModifier_do(), blender::io::alembic::process_loop_normals(), proj_paint_state_mesh_eval_init(), RE_bake_pixels_populate(), blender::io::alembic::AbcMeshReader::read_mesh(), blender::geometry::reorder_mesh(), sculpt_multires_modifier_get(), sculpt_update_object(), stats_mesheval(), blender::bke::subdiv::subdiv_mesh_ctx_cache_custom_data_layers(), blender::bke::subdiv::subdiv_mesh_ctx_cache_uv_layers(), blender::bke::subdiv::subdiv_mesh_topology_info(), blender::io::stl::STLMeshHelper::to_mesh(), blender::io::alembic::AbcMeshReader::topology_changed(), blender::io::usd::USDMeshReader::topology_changed(), blender::ed::sculpt_paint::topology_matches(), triangulate_mesh(), um_arraystore_compact_ex(), and um_arraystore_expand().
| char* Mesh::default_color_attribute |
The color attribute used by default (i.e. for rendering) if no name is given explicitly.
Definition at line 176 of file DNA_mesh_types.h.
Referenced by BKE_mesh_nomain_to_mesh(), copy_attribute_names(), data_transfer_mesh_attributes_transfer_default_color_string(), blender::io::fbx::import_colors(), blender::draw::mesh_cd_calc_used_gpu_layers(), mesh_copy_data(), mesh_free_data(), blender::bke::mesh_remesh_reproject_attributes(), proj_paint_color_attribute_create(), blender::draw::request_active_and_default_color_attributes(), blender::draw::retrieve_active_attribute_names(), and update_active_fdata_layers().
| char* Mesh::default_uv_map_attribute |
The UV map used by default (i.e. for rendering) if no name is given explicitly. Currently only used for file reading/writing (see AttributeStorage).
Definition at line 187 of file DNA_mesh_types.h.
Referenced by mesh_copy_data(), and mesh_free_data().
| struct MFace* mface Mesh::DNA_DEPRECATED |
Deprecated face storage (quads & triangles only). Kept for reading old files.
Definition at line 229 of file DNA_mesh_types.h.
| struct MCol* mcol Mesh::DNA_DEPRECATED |
Deprecated array of colors for the tessellated faces, kept for reading old files.
Definition at line 227 of file DNA_mesh_types.h.
| struct TFace* tface Mesh::DNA_DEPRECATED |
Deprecated, use mtface.
Definition at line 225 of file DNA_mesh_types.h.
| struct MTFace* mtface Mesh::DNA_DEPRECATED |
Deprecated runtime data for tessellation face UVs and texture, kept for reading old files.
Definition at line 223 of file DNA_mesh_types.h.
| struct MDeformVert* dvert Mesh::DNA_DEPRECATED |
Deprecated "Vertex group" data. Kept for reading old files, now stored in CustomData.
Definition at line 221 of file DNA_mesh_types.h.
| struct MEdge* medge Mesh::DNA_DEPRECATED |
Deprecated array of mesh edges, kept for reading old files, now stored in CustomData.
Definition at line 219 of file DNA_mesh_types.h.
| struct MVert* mvert Mesh::DNA_DEPRECATED |
Deprecated array of mesh vertices, kept for reading old files, now stored in CustomData.
Definition at line 217 of file DNA_mesh_types.h.
| struct MLoop* mloop Mesh::DNA_DEPRECATED |
Deprecated pointer to face corners, kept for forward compatibility.
Definition at line 214 of file DNA_mesh_types.h.
| struct MPoly* mpoly Mesh::DNA_DEPRECATED |
Deprecated pointer to mesh polygons, kept for forward compatibility.
Definition at line 212 of file DNA_mesh_types.h.
| char subsurftype Mesh::DNA_DEPRECATED |
Definition at line 209 of file DNA_mesh_types.h.
| char subdivr Mesh::DNA_DEPRECATED |
Definition at line 208 of file DNA_mesh_types.h.
| char subdiv Mesh::DNA_DEPRECATED |
Definition at line 207 of file DNA_mesh_types.h.
| char cd_flag Mesh::DNA_DEPRECATED |
Deprecated flag for choosing whether to store specific custom data that was built into Mesh structs in edit mode. Replaced by separating that data to separate layers. Kept for forward and backwards compatibility.
Definition at line 206 of file DNA_mesh_types.h.
| float smoothresh_legacy Mesh::DNA_DEPRECATED |
Definition at line 162 of file DNA_mesh_types.h.
| CustomData Mesh::edge_data |
Definition at line 102 of file DNA_mesh_types.h.
Referenced by add_interp_verts_copy_edges_to_new_mesh(), arrayModifier_doArray(), BKE_mesh_calc_edges_legacy(), BKE_mesh_debug_info(), BKE_mesh_do_versions_cd_flag_init(), BKE_mesh_foreach_mapped_edge(), BKE_mesh_new_nomain_from_template_ex(), BKE_mesh_nomain_to_mesh(), BKE_mesh_runtime_is_valid(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me_compact(), BM_mesh_copy_init_customdata_from_mesh_array(), blender::bm_to_mesh_edges(), blender::ed::spreadsheet::calc_mesh_selection_mask(), construct_param_handle_subsurfed(), copy_masked_edges_to_new_mesh(), blender::geometry::create_merged_mesh(), customdata_version_242(), data_transfer_layersmapping_generate(), blender::geometry::debug_randomize_edge_order(), blender::nodes::node_geo_extrude_mesh_cc::expand_mesh(), get_domains(), blender::draw::mesh_cd_edata_get_from_mesh(), mesh_copy_data(), blender::nodes::node_geo_extrude_mesh_cc::mesh_custom_data_for_domain(), mesh_customdata_get_type(), mesh_foreach_working_space_color(), mesh_free_data(), mesh_init_data(), mesh_merge_transform(), blender::draw::mesh_render_data_create(), blender::geometry::mesh_triangulate(), MOD_solidify_extrude_modifyMesh(), MOD_solidify_nonmanifold_modifyMesh(), modify_mesh(), modify_mesh(), blender::geometry::propagate_edge_attributes(), rename_mesh_uv_seam_attribute(), blender::bke::subdiv::subdiv_copy_edge_data(), blender::bke::subdiv::subdiv_mesh_ctx_cache_custom_data_layers(), blender::bke::subdiv::subdiv_mesh_topology_info(), and um_arraystore_expand().
| int Mesh::edges_num |
The number of edges in the mesh, and the size of edge_data.
Definition at line 81 of file DNA_mesh_types.h.
Referenced by add_interp_verts_copy_edges_to_new_mesh(), add_interpolated_faces_to_new_mesh(), arrayModifier_doArray(), BKE_mesh_calc_edges_legacy(), BKE_mesh_convert_mfaces_to_mpolys(), BKE_mesh_debug_info(), BKE_mesh_do_versions_cd_flag_init(), BKE_mesh_do_versions_convert_mfaces_to_mpolys(), BKE_mesh_foreach_mapped_edge(), BKE_mesh_new_nomain_from_template_ex(), BKE_mesh_nomain_to_mesh(), BKE_mesh_remap_calc_edges_from_mesh(), BKE_mesh_runtime_is_valid(), BKE_mesh_wrapper_edge_len(), BKE_mesh_wrapper_ensure_mdata(), BKE_mesh_wrapper_from_editmesh(), BKE_object_data_transfer_ex(), BKE_object_data_transfer_layout(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_compact(), blender::bm_to_mesh_edges(), blender::nodes::node_geo_dual_mesh_cc::calc_boundaries(), blender::nodes::node_geo_dual_mesh_cc::calc_dual_mesh(), blender::ed::spreadsheet::calc_mesh_selection_mask(), cloth_from_mesh(), blender::bke::compare_geometry::compare_meshes(), computed_masked_edges(), computed_masked_edges_smooth(), blender::nodes::node_geo_input_mesh_face_neighbors_cc::construct_neighbor_count_varray(), construct_param_handle_subsurfed(), copy_masked_edges_to_new_mesh(), blender::geometry::create_merged_mesh(), blender::nodes::node_geo_blur_attribute_cc::create_mesh_map(), customdata_version_242(), data_transfer_layersmapping_generate(), blender::geometry::debug_randomize_edge_order(), deform_verts(), deform_verts(), do_hair_dynamics(), ED_mesh_mirrtopo_init(), ED_mesh_mirrtopo_recalc_check(), ED_mesh_pick_edge(), blender::ed::sculpt_paint::boundary::ensure_boundary_info(), blender::nodes::node_geo_extrude_mesh_cc::expand_mesh(), blender::geometry::extract_mesh_edges(), blender::nodes::node_geo_extrude_mesh_cc::extrude_individual_mesh_faces(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_edges(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_face_regions(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_vertices(), blender::bke::subdiv::foreach_subdiv_geometry(), blender::nodes::node_geo_scale_elements_cc::gather_edge_islands(), blender::geometry::gather_realize_tasks_recursive(), Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh(), blender::nodes::node_geo_sample_nearest_cc::get_closest_mesh_edges(), get_domains(), isSystemDifferent(), LaplacianDeformModifier_do(), laplaciansmoothModifier_do(), mesh_copy_data(), blender::geometry::mesh_copy_selection(), blender::geometry::mesh_copy_selection_keep_edges(), blender::geometry::mesh_copy_selection_keep_verts(), mesh_customdata_get_type(), blender::ed::object::mesh_data_to_grease_pencil(), mesh_foreach_working_space_color(), blender::bke::mesh_remesh_reproject_attributes(), blender::draw::mesh_render_data_create(), blender::draw::mesh_render_data_loose_geom_mesh(), blender::draw::edit_select::Instance::mesh_sync(), mesh_to_softbody(), blender::geometry::mesh_triangulate(), MOD_solidify_extrude_modifyMesh(), MOD_solidify_nonmanifold_modifyMesh(), modify_mesh(), modify_mesh(), modify_mesh(), blender::nodes::node_geo_mesh_to_curve_cc::node_geo_exec(), blender::draw::overlay::Wireframe::object_sync_ex(), paintface_select_linked_faces(), paintface_select_loop(), paintvert_select_more(), blender::geometry::propagate_edge_attributes(), RE_generate_texturemargin_adjacentfaces(), remap_hair_emitter(), blender::geometry::reorder_mesh(), smooth_iter__length_weight(), smooth_iter__simple(), stats_mesheval(), blender::bke::subdiv::subdiv_foreach_ctx_count(), blender::bke::subdiv::subdiv_foreach_ctx_init(), blender::bke::subdiv::subdiv_foreach_ctx_init_offsets(), blender::bke::subdiv::subdiv_mesh_ctx_cache_custom_data_layers(), subdivide_base(), surfacedeformBind(), blender::ed::sculpt_paint::topology_matches(), um_arraystore_compact_ex(), and um_arraystore_expand().
| char Mesh::editflag |
Various flags used when editing the mesh.
Definition at line 158 of file DNA_mesh_types.h.
Referenced by BKE_mesh_copy_parameters(), blender::draw::DRW_mesh_batch_cache_create_requested(), ED_mesh_mirror_get_vert(), edbm_blend_from_shape_exec(), edbm_do_smooth_laplacian_vertex_exec(), edbm_do_smooth_vertex_exec(), EDBM_select_mirrored(), edbm_shape_propagate_to_all_exec(), blender::draw::overlay::MeshUVs::edit_object_sync(), envelope_bone_weighting(), blender::draw::extract_paint_overlay_flags(), get_selected_indices(), heat_bone_weighting(), mesh_get_x_mirror_faces(), blender::draw::overlay::Paints::object_sync(), paint_weight_gradient_exec(), weight_paint_set(), weight_sample_group_invoke(), and weight_sample_invoke().
| CustomData Mesh::face_data |
Definition at line 103 of file DNA_mesh_types.h.
Referenced by add_interpolated_faces_to_new_mesh(), arrayModifier_doArray(), blender::ed::object::bake_targets_populate_pixels_color_attributes(), BKE_mesh_calc_edges_legacy(), BKE_mesh_convert_mfaces_to_mpolys(), BKE_mesh_debug_info(), BKE_mesh_do_versions_convert_mfaces_to_mpolys(), BKE_mesh_foreach_mapped_face_center(), BKE_mesh_foreach_mapped_loop(), BKE_mesh_foreach_mapped_subdiv_face_center(), BKE_mesh_new_nomain_from_template_ex(), BKE_mesh_nomain_to_mesh(), BKE_mesh_runtime_is_valid(), BKE_mesh_tessface_calc(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me_compact(), BM_mesh_copy_init_customdata_from_mesh_array(), blender::bm_to_mesh_faces(), blender::ed::spreadsheet::calc_mesh_selection_mask_faces(), construct_param_handle_subsurfed(), copy_masked_faces_to_new_mesh(), blender::geometry::create_merged_mesh(), data_transfer_layersmapping_generate(), blender::geometry::debug_randomize_face_order(), ED_mesh_pick_face_vert(), blender::nodes::node_geo_extrude_mesh_cc::expand_mesh(), get_domains(), blender::draw::mesh_cd_pdata_get_from_mesh(), mesh_copy_data(), blender::nodes::node_geo_extrude_mesh_cc::mesh_custom_data_for_domain(), mesh_customdata_get_type(), mesh_foreach_working_space_color(), mesh_free_data(), mesh_init_data(), mesh_merge_transform(), blender::draw::mesh_render_data_create(), blender::geometry::mesh_triangulate(), MOD_solidify_extrude_modifyMesh(), MOD_solidify_nonmanifold_modifyMesh(), modify_mesh(), modify_mesh(), modify_mesh(), paintface_flush_flags(), proj_paint_face_lookup_init(), proj_paint_state_mesh_eval_init(), psys_calc_dmcache(), psys_particle_dm_face_lookup(), rename_mesh_uv_seam_attribute(), skin_set_orig_indices(), blender::bke::subdiv::subdiv_mesh_ctx_cache_custom_data_layers(), blender::bke::subdiv::subdiv_mesh_face(), blender::bke::subdiv::subdiv_mesh_topology_info(), and um_arraystore_expand().
| size_t Mesh::face_offset |
Definition at line 179 of file scene/mesh.h.
Referenced by GeometryManager::geom_calc_offset(), and Mesh().
| int* Mesh::face_offset_indices |
Array owned by mesh. See #Mesh::faces() and #OffsetIndices.
This array is shared based on the bke::MeshRuntime::face_offsets_sharing_info. Avoid accessing directly when possible.
Definition at line 93 of file DNA_mesh_types.h.
Referenced by BKE_mesh_nomain_to_mesh(), blender::geometry::copy_and_reorder_mesh_edges(), blender::geometry::copy_and_reorder_mesh_verts(), blender::geometry::create_curves_for_faces(), blender::nodes::node_geo_extrude_mesh_cc::expand_mesh(), mesh_copy_data(), mesh_free_data(), um_arraystore_expand(), and um_arraystore_free().
| int Mesh::face_sets_color_default |
Definition at line 171 of file DNA_mesh_types.h.
Referenced by BKE_mesh_copy_parameters(), blender::draw::extract_sculpt_data(), and blender::draw::extract_sculpt_data_subdiv().
| int Mesh::face_sets_color_seed |
Definition at line 168 of file DNA_mesh_types.h.
Referenced by BKE_mesh_copy_parameters(), blender::draw::extract_sculpt_data(), blender::draw::extract_sculpt_data_subdiv(), and mesh_init_data().
| int Mesh::faces_num |
The number of faces in the mesh, and the size of face_data.
Definition at line 83 of file DNA_mesh_types.h.
Referenced by add_mesh_quad_diag_springs(), arrayModifier_doArray(), blender::ed::object::bake(), blender::ed::object::bake_targets_populate_pixels_color_attributes(), BKE_mball_polygonize(), BKE_mesh_calc_edges_legacy(), BKE_mesh_center_median_from_faces(), BKE_mesh_center_of_surface(), BKE_mesh_center_of_volume(), BKE_mesh_convert_mfaces_to_mpolys(), BKE_mesh_debug_info(), BKE_mesh_do_versions_convert_mfaces_to_mpolys(), BKE_mesh_new_nomain_from_template_ex(), BKE_mesh_nomain_to_mesh(), BKE_mesh_remap_calc_faces_from_mesh(), BKE_mesh_runtime_is_valid(), BKE_mesh_tessface_calc(), BKE_mesh_tessface_ensure(), BKE_mesh_wrapper_ensure_mdata(), BKE_mesh_wrapper_face_len(), BKE_mesh_wrapper_from_editmesh(), BKE_object_data_transfer_ex(), BKE_object_data_transfer_layout(), BKE_subdiv_to_ccg_mesh(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_compact(), BMD_mesh_intersection(), C_BVHTree_FromObject(), blender::nodes::node_geo_dual_mesh_cc::calc_boundaries(), blender::ed::spreadsheet::calc_mesh_selection_mask_faces(), blender::io::usd::UsdExportTest::compare_blender_mesh_to_usd_prim(), blender::bke::compare_geometry::compare_meshes(), compute_interpolated_faces(), computed_masked_faces(), construct_param_handle_subsurfed(), data_transfer_layersmapping_generate(), blender::geometry::debug_randomize_face_order(), blender::bke::subdiv::deform_coarse_vertices(), deform_verts(), do_lasso_select_paintface(), blender::io::alembic::ABCGenericMeshWriter::do_write(), blender::draw::draw_subdiv_cache_ensure_mat_offsets(), blender::draw::draw_subdiv_cache_update_extra_coarse_face_data(), blender::draw::draw_subdiv_create_requested_buffers(), ED_mesh_pick_face(), ED_wpaint_ensure_data(), edbm_backbuf_check_and_select_faces_obmode(), blender::ed::sculpt_paint::AddOperationExecutor::execute(), blender::nodes::node_geo_extrude_mesh_cc::expand_mesh(), blender::geometry::extract_mesh_faces(), blender::nodes::node_geo_extrude_mesh_cc::extrude_individual_mesh_faces(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_face_regions(), blender::geometry::face_normals_if_worthwhile(), foreach_grid_coordinate(), blender::bke::subdiv::foreach_subdiv_geometry(), blender::nodes::node_geo_scale_elements_cc::gather_face_islands(), blender::geometry::gather_realize_tasks_recursive(), Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh(), blender::nodes::node_geo_sample_nearest_cc::get_closest_mesh_faces(), blender::nodes::node_geo_sample_nearest_cc::get_closest_mesh_tris(), blender::io::alembic::get_config(), get_domains(), blender::io::usd::get_loops_polys(), get_quick_mesh(), blender::nodes::node_geo_material_selection_cc::MaterialSelectionFieldInput::get_varray_for_context(), heat_bone_weighting(), imapaint_pick_face(), Freestyle::BlenderFileLoader::insertShapeNode(), blender::ed::mesh::join_objects_exec(), lineart_object_load_single_instance(), blender::io::ply::load_plydata(), make_duplis_faces(), mesh_calc_tri_tessface(), mesh_copy_data(), blender::geometry::mesh_copy_selection(), blender::geometry::mesh_copy_selection_keep_edges(), blender::geometry::mesh_copy_selection_keep_verts(), mesh_customdata_get_type(), mesh_ensure_tessellation_customdata(), mesh_faces_to_scratch(), mesh_foreach_working_space_color(), blender::bke::mesh_remesh_reproject_attributes(), blender::draw::mesh_render_data_create(), mesh_reorder_vertices_spatial_exec(), blender::draw::edit_select::Instance::mesh_sync(), blender::bke::pbvh::mesh_topology_count_matches(), blender::geometry::mesh_triangulate(), meshcache_do(), MOD_solidify_extrude_modifyMesh(), MOD_solidify_nonmanifold_modifyMesh(), modify_mesh(), modify_mesh(), modify_mesh(), blender::nodes::node_geo_mesh_to_curve_cc::node_geo_exec(), blender::nodes::node_geo_raycast_cc::node_geo_exec(), blender::nodes::node_geo_triangulate_cc::node_geo_exec(), paint_select_less_exec(), paint_select_more_exec(), paintface_deselect_all_visible(), paintface_flush_flags(), paintface_hide(), paintface_minmax(), paintface_reveal(), paintface_select_linked(), paintvert_select_less_exec(), paintvert_select_linked(), paintvert_select_linked_vertices(), paintvert_select_more_exec(), blender::draw::particle_calculate_parent_mcol(), blender::draw::particle_calculate_parent_uvs(), blender::io::alembic::process_loop_normals(), proj_paint_state_mesh_eval_init(), blender::ed::transform::raycastMesh(), RE_bake_pixels_populate(), blender::io::alembic::AbcMeshReader::read_mesh(), blender::geometry::reorder_mesh(), sculpt_update_object(), skin_set_orig_indices(), stats_mesheval(), stats_object_sculpt(), blender::bke::subdiv::subdiv_foreach_ctx_count(), blender::bke::subdiv::subdiv_foreach_ctx_init(), blender::bke::subdiv::subdiv_foreach_ctx_init_offsets(), blender::bke::subdiv::subdiv_foreach_every_corner_vertices(), blender::bke::subdiv::subdiv_foreach_every_edge_vertices(), blender::bke::subdiv::subdiv_foreach_single_geometry_vertices(), blender::bke::subdiv::subdiv_mesh_ctx_cache_custom_data_layers(), blender::bke::subdiv::subdiv_to_mesh(), surfacedeformBind(), blender::io::alembic::AbcMeshReader::topology_changed(), blender::io::usd::USDMeshReader::topology_changed(), blender::ed::sculpt_paint::topology_matches(), blender::ed::curves::convert_to_particle_system::try_convert_single_object(), um_arraystore_compact_ex(), um_arraystore_expand(), vertex_weight_paint_mode_poll(), and weight_paint_set().
| CustomData Mesh::fdata_legacy |
Deprecated storage of old faces (only triangles or quads).
Definition at line 237 of file DNA_mesh_types.h.
Referenced by BKE_mesh_convert_mfaces_to_mpolys(), BKE_mesh_debug_info(), BKE_mesh_do_versions_convert_mfaces_to_mpolys(), BKE_mesh_new_nomain_from_template_ex(), BKE_mesh_runtime_is_valid(), BKE_mesh_strip_loose_faces(), BKE_mesh_tessface_calc(), createFacepa(), customdata_version_242(), customdata_version_243(), cutEdges(), distribute_children_exec(), distribute_from_faces_exec(), distribute_from_verts_exec(), distribute_from_volume_exec(), distribute_grid(), explodeMesh(), get_dface(), get_particle_uv(), mesh_copy_data(), mesh_ensure_tessellation_customdata(), mesh_free_data(), mesh_init_data(), blender::draw::particle_batch_cache_ensure_pos_and_seg(), blender::draw::particle_calculate_parent_mcol(), blender::draw::particle_calculate_parent_uvs(), blender::draw::particle_interpolate_children_mcol(), blender::draw::particle_interpolate_children_uvs(), particle_intersect_mesh(), PE_mirror_x(), psys_calc_dmcache(), psys_face_mat(), psys_get_dupli_texture(), psys_interpolate_value_from_verts(), psys_map_index_on_dm(), psys_particle_dm_face_lookup(), psys_particle_on_dm(), psys_thread_context_init_distribute(), recalc_emitter_field(), remap_hair_emitter(), remap_uvs_15(), remap_uvs_19_21_22(), remap_uvs_23(), remap_uvs_3_6_9_12(), remap_uvs_5_10(), remap_uvs_7_11_13_14(), blender::draw::span_from_custom_data_layer(), blender::draw::span_from_custom_data_layer(), blender::ed::curves::convert_to_particle_system::try_convert_single_object(), and blender::io::hydra::HairData::write_curves().
| uint16_t Mesh::flag |
Mostly more flags used when editing or displaying the mesh.
Definition at line 160 of file DNA_mesh_types.h.
Referenced by acf_dsmesh_setting_ptr(), BKE_mesh_copy_parameters(), blo_do_versions_pre250(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_compact(), mesh_reorder_vertices_spatial_exec(), and blender::ed::object::single_obdata_user_make().
| ID Mesh::id |
Definition at line 65 of file DNA_mesh_types.h.
Referenced by blender::ed::object::add_shapekey_layers(), blender::ed::object::bake(), BKE_armature_deform_coords_with_mesh(), BKE_attribute_rename(), BKE_mesh_assign_object(), BKE_mesh_convert_mfaces_to_mpolys(), BKE_mesh_copy_for_eval(), BKE_mesh_copy_parameters_for_eval(), BKE_mesh_do_versions_convert_mfaces_to_mpolys(), BKE_mesh_new_from_object(), BKE_mesh_new_from_object_to_bmain(), BKE_mesh_nomain_to_mesh(), BKE_mesh_nomain_to_meshkey(), BKE_mesh_runtime_is_valid(), BKE_object_data_transfer_ex(), BKE_sculpt_color_layer_create_if_needed(), blo_do_versions_pre250(), BM_mesh_bm_from_me(), bpy_bmesh_to_mesh(), calculate_weld(), cloth_build_springs(), blender::ed::object::convert_curves_to_mesh(), blender::ed::object::convert_mesh_to_grease_pencil(), blender::ed::object::convert_mesh_to_mesh(), blender::io::ply::convert_ply_to_mesh(), blender::nodes::node_geo_mesh_primitive_circle_cc::create_circle_mesh(), blender::nodes::node_geo_mesh_primitive_ico_sphere_cc::create_ico_sphere_mesh(), curve_calc_modifiers_post(), blender::ed::transform::data_for_snap(), data_transfer_layersmapping_vgroups_multisrc_to_dst(), data_transfer_mesh_attributes_transfer_active_color_string(), data_transfer_mesh_attributes_transfer_default_color_string(), do_hair_dynamics(), blender::io::usd::USDGenericMeshWriter::do_write(), ED_mesh_pick_edge(), ED_mesh_pick_face(), ED_mesh_pick_face_vert(), ED_mesh_pick_vert(), ED_mesh_shapes_join_objects_exec(), ED_mesh_uv_add(), ED_object_texture_paint_mode_enter_ex(), ED_object_texture_paint_mode_exit_ex(), ED_wpaint_ensure_data(), edbm_reverse_colors_exec(), edbm_rotate_colors_exec(), edbm_select_by_attribute_exec(), edbm_select_by_attribute_poll(), edbm_separate_exec(), EDBM_update(), blender::bke::editbmesh_build_data(), ensure_weight_attribute_meta_data(), blender::geometry::execute_realize_mesh_tasks(), fill_texpaint_slots_cb(), Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh(), geometry_extract_apply(), get_evaluated_object_data_with_materials(), get_quick_mesh(), get_uv_attribute(), blender::io::fbx::import_blend_shapes(), blender::ed::mesh::join_generic_attributes(), blender::ed::mesh::join_objects_exec(), blender::ed::mesh::join_shape_keys(), lattice_deform_coords_impl(), blender::draw::mesh_batch_cache_init(), blender::draw::mesh_batch_cache_valid(), blender::bke::mesh_build_data(), blender::bke::mesh_calc_finalize(), blender::bke::mesh_calc_modifiers(), mesh_copy_data(), blender::ed::object::mesh_data_to_grease_pencil(), mesh_new_from_mesh(), blender::bke::mesh_remesh_reproject_attributes(), blender::ed::mesh::set_attribute::mesh_set_attribute_exec(), mesh_to_softbody(), mesh_undostep_reference_elems_from_objects(), mesh_undosys_step_decode(), mesh_undosys_step_encode(), MOD_get_vgroup(), MOD_solidify_extrude_modifyMesh(), MOD_solidify_nonmanifold_modifyMesh(), blender::ed::object::modifier_apply_obdata(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), multires_customdata_delete(), multires_ensure_external_read(), multires_force_external_reload(), multires_topology_changed(), blender::ed::transform::nearest_world_mesh(), blender::nodes::node_geo_grid_to_mesh_cc::node_geo_exec(), blender::nodes::node_geo_mesh_primitive_cone_cc::node_geo_exec(), blender::nodes::node_geo_mesh_primitive_cube_cc::node_geo_exec(), normalEditModifier_do(), object_copy_mesh_data(), object_get_data(), prepare_mesh_for_viewport_render(), proj_paint_color_attribute_create(), blender::ed::transform::raycastMesh(), blender::io::alembic::read_velocity(), remap_hair_emitter(), reset_uv_map(), blender::ed::transform::snap_object_editmesh(), blender::ed::transform::snapMesh(), blender::ed::geometry::store_result_geometry(), tag_object_after_update(), blender::bke::tests::TEST_F(), blender::bke::tests::TEST_F(), transform_active_color_data(), uv_mark_seam_exec(), uv_seams_from_islands_exec(), weight_from_bones_exec(), weight_paint_set(), weightvg_do_mask(), and WireframeModifier_do().
| struct Key* Mesh::key |
Definition at line 69 of file DNA_mesh_types.h.
Referenced by blender::ed::object::add_shapekey_layers(), BKE_key_from_id_p(), BKE_mesh_nomain_to_mesh(), BKE_mesh_nomain_to_meshkey(), BM_mesh_bm_from_me(), bmo_mesh_to_bmesh_exec(), blender::ed::object::convert_mesh_to_mesh(), ED_mesh_get_edit_shape_key(), ED_mesh_shapes_join_objects_exec(), edbm_blend_from_shape_exec(), edbm_blend_from_shape_ui(), blender::bke::editbmesh_build_data(), blender::io::usd::get_mesh_shape_key(), blender::io::usd::get_shape_key_basis_mesh(), blender::io::fbx::import_blend_shapes(), blender::io::usd::import_blendshapes(), blender::ed::mesh::join_objects_exec(), blender::ed::mesh::join_shape_keys(), blender::bke::mesh_build_data(), mesh_copy_data(), mesh_foreach_id(), mesh_undosys_step_encode(), mesh_wrapper_ensure_subdivision(), object_shapenr_basis_index_ensured(), sculpt_modifiers_active(), um_arraystore_expand(), um_arraystore_free(), undomesh_free_data(), and undomesh_from_editmesh().
| struct Material** Mesh::mat |
An array of materials, with length totcol. These can be overridden by material slots on Object. Indices in the "material_index" attribute control which material is used for every face.
Definition at line 76 of file DNA_mesh_types.h.
Referenced by blender::ed::object::bake_targets_output_external(), BKE_mesh_copy_parameters_for_eval(), BKE_mesh_new_from_object_to_bmain(), BKE_object_material_array_p(), blender::nodes::node_geo_boolean_cc::calc_mesh_material_map(), Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh(), blender::nodes::node_geo_material_selection_cc::MaterialSelectionFieldInput::get_varray_for_context(), blender::ed::mesh::join_objects_exec(), mesh_copy_data(), mesh_foreach_id(), mesh_free_data(), blender::geometry::preprocess_meshes(), and switch_preview_floor_material().
| struct MSelect* Mesh::mselect |
This array represents the selection order when the user manually picks elements in edit-mode, some tools take advantage of this information. All elements in this array are expected to be selected, see BKE_mesh_mselect_validate which ensures this. For procedurally created meshes, this is generally empty (selections are stored as boolean attributes in the corresponding custom data).
Definition at line 129 of file DNA_mesh_types.h.
Referenced by BKE_mesh_new_nomain_from_template_ex(), BM_mesh_bm_from_me(), mesh_copy_data(), mesh_free_data(), um_arraystore_expand(), and um_arraystore_free().
| int8_t Mesh::radial_symmetry[3] |
Definition at line 242 of file DNA_mesh_types.h.
| char Mesh::remesh_mode |
Choice between different remesh methods in the UI.
Definition at line 196 of file DNA_mesh_types.h.
Referenced by BKE_mesh_copy_parameters().
| float Mesh::remesh_voxel_adaptivity |
Definition at line 166 of file DNA_mesh_types.h.
Referenced by BKE_mesh_copy_parameters().
| float Mesh::remesh_voxel_size |
Per-mesh settings for voxel remesh.
Definition at line 165 of file DNA_mesh_types.h.
Referenced by BKE_mesh_copy_parameters(), and BKE_shrinkwrap_remesh_target_project().
| MeshRuntimeHandle* Mesh::runtime |
Data that isn't saved in files, including caches of derived data, temporary data to improve the editing experience, etc. The struct is created when reading files and can be accessed without null checks, with the exception of some temporary meshes which should allocate and free the data if they are passed to functions that expect run-time data.
Definition at line 250 of file DNA_mesh_types.h.
Referenced by arrayModifier_doArray(), BKE_editmesh_eval_orig_map_available(), BKE_editmesh_vert_coords_when_deformed(), BKE_mesh_batch_cache_dirty_tag(), BKE_mesh_copy_parameters_for_eval(), BKE_mesh_debug_info(), BKE_mesh_face_normals_are_dirty(), BKE_mesh_foreach_mapped_edge(), BKE_mesh_foreach_mapped_face_center(), BKE_mesh_foreach_mapped_loop(), BKE_mesh_foreach_mapped_subdiv_face_center(), BKE_mesh_foreach_mapped_vert(), BKE_mesh_new_from_object(), BKE_mesh_nomain_to_mesh(), BKE_mesh_vert_normals_are_dirty(), BKE_mesh_wrapper_edge_len(), BKE_mesh_wrapper_ensure_mdata(), BKE_mesh_wrapper_face_len(), BKE_mesh_wrapper_face_normals(), BKE_mesh_wrapper_from_editmesh(), BKE_mesh_wrapper_loop_len(), BKE_mesh_wrapper_tag_positions_changed(), BKE_mesh_wrapper_vert_coords(), BKE_mesh_wrapper_vert_coords_copy(), BKE_mesh_wrapper_vert_coords_copy_with_mat4(), BKE_mesh_wrapper_vert_len(), BKE_modifier_modify_mesh(), BKE_object_select_update(), BKE_subsurf_modifier_has_gpu_subdiv(), BKE_view_layer_filter_edit_mesh_has_edges(), BKE_view_layer_filter_edit_mesh_has_uvs(), BM_mesh_bm_to_me_compact(), bpy_bm_from_edit_mesh(), bpy_bm_update_edit_mesh(), bpy_bmesh_to_mesh(), brush_add(), brush_add_count_iter(), blender::draw::calc_face_visibility_mesh(), blender::draw::calc_mesh_edge_visibility(), blender::ed::spreadsheet::calc_mesh_selection_mask(), blender::ed::spreadsheet::calc_mesh_selection_mask_faces(), blender::geometry::copy_and_reorder_mesh_edges(), blender::geometry::copy_and_reorder_mesh_verts(), blender::geometry::copy_loose_edge_hint(), copy_loose_edge_hint(), blender::geometry::copy_loose_vert_hint(), copy_loose_vert_hint(), blender::geometry::create_curves_for_faces(), blender::ed::transform::data_for_snap(), deform_verts(), deform_verts_EM(), deform_verts_EM(), deform_verts_EM(), deform_verts_EM(), blender::draw::draw_subdiv_create_requested_buffers(), blender::draw::DRW_mesh_batch_cache_create_requested(), blender::draw::DRW_mesh_batch_cache_dirty_tag(), blender::draw::DRW_mesh_batch_cache_free_old(), blender::draw::DRW_mesh_batch_cache_validate(), DRW_text_edit_mesh_measure_stats(), ED_mesh_active_dvert_get_em(), ED_mesh_get_edit_shape_key(), ED_mesh_mirror_get_vert(), ED_mesh_mirror_spatial_table_begin(), ED_mesh_uv_add(), ED_transverts_create_from_obedit(), edbm_blend_from_shape_exec(), EDBM_mesh_load_ex(), EDBM_mesh_make_from_mesh(), edbm_shape_propagate_to_all_exec(), EDBM_update(), edgetag_ensure_cd_flag(), blender::draw::overlay::MeshUVs::edit_object_sync(), blender::bke::editbmesh_calc_modifiers(), blender::draw::editmesh_final_or_this(), editmesh_object_from_context(), ensure_non_lazy_normals(), blender::bke::subdiv::evaluate_vertex_and_apply_displacement_copy(), blender::nodes::node_geo_extrude_mesh_cc::expand_mesh(), blender::draw::extract_edge_factor_mesh(), blender::draw::extract_edituv_face_dots_mesh(), blender::draw::extract_face_dot_positions_mesh(), blender::draw::extract_face_dots_uv_mesh(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_vertices(), blender::bke::pbvh::face_normals_cache_eval(), blender::geometry::face_normals_if_worthwhile(), get_domains(), get_evaluated_object_data_with_materials(), blender::workbench::get_loop_custom_data(), blender::workbench::get_vert_custom_data(), get_weights_array(), give_parvert(), key_block_get_data(), knifetool_init_obinfo(), lineart_object_load_single_instance(), mesh_attribute_valid(), blender::draw::mesh_batch_cache_get(), blender::draw::mesh_batch_cache_init(), blender::draw::mesh_batch_cache_valid(), blender::draw::mesh_buffer_cache_create_requested(), blender::bke::mesh_calc_modifiers(), blender::draw::mesh_cd_edata_get_from_mesh(), blender::draw::mesh_cd_ldata_get_from_mesh(), blender::draw::mesh_cd_pdata_get_from_mesh(), blender::draw::mesh_cd_vdata_get_from_mesh(), mesh_copy_data(), blender::geometry::mesh_copy_selection_keep_edges(), blender::geometry::mesh_copy_selection_keep_verts(), mesh_customdata_get_type(), mesh_data_from_duplicator_object(), mesh_foreachScreenFace(), mesh_free_data(), blender::bke::mesh_get_mapped_verts_coords(), blender::draw::overlay::Meshes::mesh_has_edit_cage(), mesh_init_data(), mesh_mirror_topo_table_get_meshes(), mesh_new_from_mesh_object(), blender::draw::mesh_render_data_create(), blender::draw::mesh_render_data_loose_geom_mesh(), blender::geometry::mesh_triangulate(), mesh_undosys_step_decode(), mesh_undosys_step_encode(), blender::ed::geometry::MeshState::MeshState(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), multires_customdata_delete(), multires_mark_as_modified(), multiresModifier_set_levels_from_disps(), blender::nodes::node_geo_deform_curves_on_surface_cc::node_geo_exec(), blender::draw::edit_select::Instance::object_sync(), object_update_from_subsurf_ccg(), blender::bke::object::pbvh_ensure(), PE_mirror_x(), prepare_mesh_for_viewport_render(), psys_calc_dmcache(), psys_map_index_on_dm(), psys_particle_dm_face_lookup(), psys_thread_context_init_distribute(), remap_hair_emitter(), reset_uv_map(), blender::deg::ObjectRuntimeBackup::restore_modifier_runtime_data(), blender::deg::ObjectRuntimeBackup::restore_to_object(), sculpt_update_object(), blender::ed::transform::snap_object_data_editmesh_get(), stats_mesheval(), subdiv_cache_mesh_wrapper_settings(), blender::bke::subdiv::subdiv_mesh_tag_center_vertex(), blender::bke::subdiv::subdiv_mesh_topology_info(), blender::bke::subdiv::subdiv_to_mesh(), blender::nodes::node_geo_extrude_mesh_cc::tag_mesh_added_faces(), blender::ed::sculpt_paint::topology_matches(), um_arraystore_expand(), uv_mark_seam_exec(), uv_seams_from_islands_exec(), uvprojectModifier_do(), v3d_editvertex_buts(), and blender::bke::pbvh::vert_normals_cache_eval().
| AttributeSet Mesh::subd_attributes |
Definition at line 174 of file scene/mesh.h.
Referenced by add_vertex_normals(), attr_create_generic(), attr_create_motion_from_velocity(), attr_create_pointiness(), attr_create_random_per_island(), attr_create_subd_uv_map(), clear(), create_mesh(), ObjectManager::device_update_object_transform(), GeometryManager::device_update_preprocess(), get_uv_tiles(), has_motion_blur(), Mesh(), reserve_subd_faces(), resize_subd_faces(), update_generated(), and xml_read_mesh().
| char Mesh::symmetry |
User-defined symmetry flag (eMeshSymmetryType) that causes editing operations to maintain symmetrical geometry. Supported by operations such as transform and weight-painting.
Definition at line 193 of file DNA_mesh_types.h.
Referenced by BKE_mesh_copy_parameters(), EditMeshSymmetryHelper::create_if_needed(), edbm_blend_from_shape_exec(), edbm_shape_propagate_to_all_exec(), paint_proj_new_stroke(), SCULPT_mesh_symmetry_xyz_get(), weight_from_bones_exec(), and weight_paint_set().
| struct Mesh* Mesh::texcomesh |
An optional mesh owned elsewhere (by Main) that can be used to override the texture space #loc and size.
Definition at line 150 of file DNA_mesh_types.h.
Referenced by mesh_foreach_id().
| char Mesh::texspace_flag |
Definition at line 155 of file DNA_mesh_types.h.
Referenced by BKE_mesh_copy_parameters(), and BKE_mesh_eval_geometry().
| float Mesh::texspace_location[3] |
Texture space location and size, used for procedural coordinates when rendering.
Definition at line 153 of file DNA_mesh_types.h.
Referenced by BKE_mesh_copy_parameters(), BKE_mesh_eval_geometry(), blender::draw::overlay::Bounds::object_sync(), and psys_get_texture().
| float Mesh::texspace_size[3] |
Definition at line 154 of file DNA_mesh_types.h.
Referenced by BKE_mesh_copy_parameters(), BKE_mesh_eval_geometry(), blender::draw::overlay::Bounds::object_sync(), and psys_get_texture().
| short Mesh::totcol |
The length of the mat array.
Definition at line 199 of file DNA_mesh_types.h.
Referenced by BKE_mesh_copy_parameters_for_eval(), BKE_mesh_new_from_object_to_bmain(), BKE_object_material_len_p(), blender::nodes::node_geo_boolean_cc::calc_mesh_material_map(), Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh(), blender::io::usd::get_loops_polys(), blender::nodes::node_geo_material_selection_cc::MaterialSelectionFieldInput::get_varray_for_context(), blender::ed::mesh::join_materials(), blender::ed::mesh::join_objects_exec(), mesh_foreach_id(), blender::geometry::preprocess_meshes(), and switch_preview_floor_material().
| int Mesh::totface_legacy |
Definition at line 239 of file DNA_mesh_types.h.
Referenced by BKE_mesh_calc_edges_legacy(), BKE_mesh_convert_mfaces_to_mpolys(), BKE_mesh_debug_info(), BKE_mesh_do_versions_convert_mfaces_to_mpolys(), BKE_mesh_new_nomain_from_template_ex(), BKE_mesh_runtime_is_valid(), BKE_mesh_strip_loose_faces(), BKE_mesh_tessface_calc(), BKE_mesh_tessface_ensure(), blo_do_versions_pre250(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_compact(), createFacepa(), customdata_version_242(), cutEdges(), deform_verts(), distribute_children_exec(), distribute_from_faces_exec(), distribute_from_verts_exec(), distribute_from_volume_exec(), distribute_grid(), explodeMesh(), get_particle_uv(), mesh_copy_data(), mesh_ensure_tessellation_customdata(), mesh_get_x_mirror_faces(), modify_mesh(), blender::draw::particle_calculate_parent_mcol(), blender::draw::particle_calculate_parent_uvs(), particle_intersect_mesh(), psys_calc_dmcache(), psys_face_mat(), psys_get_dupli_texture(), psys_interpolate_value_from_verts(), psys_map_index_on_dm(), psys_particle_dm_face_lookup(), psys_particle_on_dm(), psys_thread_context_init_distribute(), psys_thread_create_path(), recalc_emitter_field(), remap_hair_emitter(), remap_uvs_15(), remap_uvs_19_21_22(), remap_uvs_23(), remap_uvs_3_6_9_12(), remap_uvs_5_10(), remap_uvs_7_11_13_14(), blender::draw::span_from_custom_data_layer(), blender::draw::span_from_custom_data_layer(), blender::ed::curves::convert_to_particle_system::try_convert_single_object(), and vcol_to_fcol().
| int Mesh::totselect |
The length of the mselect array.
Definition at line 132 of file DNA_mesh_types.h.
Referenced by BM_mesh_bm_from_me(), and um_arraystore_expand().
| CustomData Mesh::vert_data |
Definition at line 101 of file DNA_mesh_types.h.
Referenced by add_interp_verts_copy_edges_to_new_mesh(), blender::ed::object::add_shapekey_layers(), arrayModifier_doArray(), blender::ed::object::bake_targets_populate_pixels_color_attributes(), base_skin(), BKE_mesh_calc_edges_legacy(), BKE_mesh_debug_info(), BKE_mesh_do_versions_cd_flag_init(), BKE_mesh_foreach_mapped_loop(), BKE_mesh_foreach_mapped_vert(), BKE_mesh_new_nomain_from_template_ex(), BKE_mesh_nomain_to_mesh(), BKE_mesh_runtime_is_valid(), BKE_object_as_kdtree(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me_compact(), BM_mesh_copy_init_customdata_from_mesh_array(), blender::bm_to_mesh_verts(), blender::ed::spreadsheet::calc_mesh_selection_mask(), cloth_from_object(), construct_param_handle_subsurfed(), blender::ed::object::convert_mesh_to_mesh(), copy_masked_verts_to_new_mesh(), blender::geometry::create_merged_mesh(), customdata_version_242(), cutEdges(), data_transfer_layersmapping_generate(), blender::geometry::debug_randomize_vert_order(), deform_verts(), deformVerts_do(), blender::draw::DRW_mesh_batch_cache_create_requested(), blender::ed::object::dt_layers_select_src_itemf(), ED_mesh_pick_face_vert(), blender::nodes::node_geo_extrude_mesh_cc::expand_mesh(), explodeMesh(), blender::draw::extract_orco(), blender::draw::extract_tan_init_common(), final_skin(), blender::nodes::node_geo_points_to_vertices_cc::geometry_set_points_to_vertices(), get_domains(), blender::workbench::get_vert_custom_data(), give_parvert(), blender::ed::mesh::join_vertex_groups(), make_duplis_faces(), make_duplis_verts(), blender::draw::mesh_cd_vdata_get_from_mesh(), mesh_copy_data(), blender::nodes::node_geo_extrude_mesh_cc::mesh_custom_data_for_domain(), mesh_customdata_get_type(), mesh_foreach_working_space_color(), mesh_free_data(), mesh_init_data(), mesh_merge_transform(), blender::draw::mesh_render_data_create(), blender::geometry::mesh_triangulate(), MOD_solidify_extrude_modifyMesh(), MOD_solidify_nonmanifold_modifyMesh(), modify_mesh(), modify_mesh(), modify_mesh(), paintvert_flush_flags(), blender::geometry::propagate_vert_attributes(), psys_calc_dmcache(), psys_face_mat(), psys_particle_on_dm(), psys_thread_context_init_distribute(), blender::io::alembic::read_generated_coordinates(), blender::nodes::node_geo_extrude_mesh_cc::remove_unsupported_vert_data(), rename_mesh_uv_seam_attribute(), blender::bke::subdiv::subdiv_mesh_ctx_cache_custom_data_layers(), blender::bke::subdiv::subdiv_mesh_topology_info(), blender::bke::subdiv::subdiv_mesh_vertex_of_loose_edge_interpolate(), blender::bke::subdiv::subdiv_vertex_data_copy(), blender::bke::subdiv::subdiv_vertex_data_interpolate(), subdivide_base(), um_arraystore_expand(), blender::bke::subdiv::vertex_interpolation_from_corner(), blender::bke::subdiv::vertex_interpolation_init(), and blender::io::alembic::write_generated_coordinates().
| size_t Mesh::vert_offset |
Definition at line 177 of file scene/mesh.h.
Referenced by AttributeTableBuilder::add(), GeometryManager::device_update_mesh(), GeometryManager::geom_calc_offset(), Mesh(), and pack_verts().
| int Mesh::vertex_group_active_index |
The active index in the vertex_group_names list.
Definition at line 112 of file DNA_mesh_types.h.
Referenced by BKE_mesh_copy_parameters(), blender::draw::drw_mesh_weight_state_extract(), ED_wpaint_ensure_data(), blender::geometry::execute_realize_mesh_tasks(), mesh_undosys_step_decode(), mesh_undosys_step_encode(), object_defgroup_active_index_get_p(), undomesh_from_editmesh(), undomesh_to_editmesh(), vertex_paint_from_weight(), and weight_sample_invoke().
| ListBase Mesh::vertex_group_names |
List of vertex group (bDeformGroup) names and flags only. Actual weights are stored in dvert.
Definition at line 110 of file DNA_mesh_types.h.
Referenced by BKE_id_defgroup_list_get(), BKE_mesh_copy_parameters_for_eval(), BKE_mesh_nomain_to_mesh(), compute_vertex_mask__armature_mode(), blender::geometry::copy_vertex_group_names(), blender::geometry::create_curves_for_faces(), data_transfer_layersmapping_vgroups_multisrc_to_dst(), blender::draw::drw_mesh_weight_state_extract(), ED_mesh_active_dvert_get_em(), blender::geometry::execute_realize_mesh_tasks(), blender::io::usd::export_deform_verts(), blender::geometry::gather_vert_attributes(), blender::nodes::node_geo_extrude_mesh_cc::gather_vert_attributes(), blender::nodes::node_geo_extrude_mesh_cc::gather_vert_attributes(), blender::io::fbx::import_blend_shape_full_weights(), blender::ed::mesh::join_vertex_groups(), mesh_copy_data(), mesh_free_data(), mesh_undosys_step_decode(), mesh_undosys_step_encode(), MOD_lineart_gpencil_generate_v3(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), paint_weight_gradient_exec(), rename_mesh_uv_seam_attribute(), undomesh_from_editmesh(), undomesh_to_editmesh(), vert_select_ungrouped_exec(), vertex_paint_from_weight(), weight_sample_group_invoke(), and weight_sample_invoke().
| int Mesh::verts_num |
The number of vertices in the mesh, and the size of vert_data.
Definition at line 79 of file DNA_mesh_types.h.
Referenced by add_interp_verts_copy_edges_to_new_mesh(), blender::bke::add_orco_mesh(), blender::ed::object::add_shapekey_layers(), add_verts_to_dgroups(), arrayModifier_doArray(), base_skin(), BKE_key_evaluate_object_ex(), BKE_keyblock_convert_from_mesh(), BKE_keyblock_update_from_mesh(), BKE_mball_polygonize(), BKE_mesh_calc_edges_legacy(), BKE_mesh_center_median(), BKE_mesh_debug_info(), BKE_mesh_do_versions_cd_flag_init(), BKE_mesh_foreach_mapped_vert(), BKE_mesh_new_nomain_from_template_ex(), BKE_mesh_nomain_to_mesh(), BKE_mesh_nomain_to_meshkey(), BKE_mesh_remap_calc_edges_from_mesh(), BKE_mesh_remap_calc_loops_from_mesh(), BKE_mesh_remap_calc_verts_from_mesh(), BKE_mesh_runtime_is_valid(), BKE_mesh_to_pointcloud(), BKE_mesh_wrapper_ensure_mdata(), BKE_mesh_wrapper_from_editmesh(), BKE_mesh_wrapper_vert_coords_copy_with_mat4(), BKE_mesh_wrapper_vert_len(), BKE_object_data_transfer_ex(), BKE_object_data_transfer_layout(), BKE_shrinkwrap_mesh_nearest_surface_deform(), BKE_shrinkwrap_remesh_target_project(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_compact(), blender::bm_to_mesh_verts(), BMD_mesh_intersection(), C_BVHTree_FromObject(), blender::bke::pbvh::cache_source_get(), blender::nodes::node_geo_dual_mesh_cc::calc_boundaries(), blender::nodes::node_geo_dual_mesh_cc::calc_dual_mesh(), blender::ed::spreadsheet::calc_mesh_selection_mask(), calc_tangent_spaces(), calculate_weld(), cloth_apply_vgroup(), cloth_from_mesh(), cloth_from_object(), cloth_update_spring_lengths(), cloth_update_verts(), clothModifier_do(), blender::io::usd::UsdExportTest::compare_blender_mesh_to_usd_prim(), blender::bke::compare_geometry::compare_meshes(), compute_interpolated_faces(), computed_masked_faces(), blender::bke::compare_geometry::construct_vert_mapping(), blender::io::ply::convert_ply_to_mesh(), copy_masked_edges_to_new_mesh(), copy_masked_verts_to_new_mesh(), blender::geometry::create_merged_mesh(), blender::nodes::node_geo_blur_attribute_cc::create_mesh_map(), blender::geometry::create_uv_sphere_mesh(), createFacepa(), customdata_version_242(), cutEdges(), data_transfer_layersmapping_generate(), blender::geometry::debug_randomize_vert_order(), deform_verts(), deform_verts(), deform_verts(), deform_verts(), deformVerts_do(), distribute_from_verts_exec(), distribute_grid(), do_hair_dynamics(), do_lasso_select_paintvert(), blender::io::alembic::ABCGenericMeshWriter::do_write(), blender::draw::DRW_subdivide_loose_geom(), blender::nodes::node_geo_duplicate_elements_cc::duplicate_faces(), blender::nodes::node_geo_duplicate_elements_cc::duplicate_points_mesh(), dynamicPaint_brushMeshCalculateVelocity(), dynamicPaint_surfaceNumOfPoints(), ED_mesh_deform_bind_callback(), ED_mesh_mirror_spatial_table_begin(), ED_mesh_mirrtopo_init(), ED_mesh_mirrtopo_recalc_check(), ED_mesh_pick_vert(), ED_mesh_shapes_join_objects_exec(), ED_vpaint_proj_handle_create(), edbm_backbuf_check_and_select_verts_obmode(), blender::nodes::node_geo_edge_paths_to_curves_cc::edge_paths_to_curves_convert(), blender::nodes::node_geo_edge_paths_to_selection_cc::edge_paths_to_selection(), blender::geometry::edges_to_curves_convert(), blender::ed::sculpt_paint::boundary::ensure_boundary_info(), envelope_bone_weighting(), blender::nodes::node_geo_extrude_mesh_cc::expand_mesh(), explodeMesh(), blender::io::usd::export_deform_verts(), blender::geometry::extract_mesh_vertices(), blender::nodes::node_geo_extrude_mesh_cc::extrude_individual_mesh_faces(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_edges(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_face_regions(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_vertices(), blender::bke::subdiv::foreach_subdiv_geometry(), blender::nodes::node_geo_scale_elements_cc::gather_edge_islands(), blender::nodes::node_geo_scale_elements_cc::gather_face_islands(), blender::geometry::gather_realize_tasks_recursive(), generate_vert_coordinates(), blender::io::ply::generate_vertex_map(), Freestyle::BlenderStrokeRenderer::GenerateStrokeMesh(), geometry_extract_apply(), blender::nodes::node_geo_mesh_to_points_cc::geometry_set_mesh_to_points(), blender::nodes::node_geo_points_to_vertices_cc::geometry_set_points_to_vertices(), blender::ed::sculpt_paint::trim::gesture_apply_for_symmetry_pass(), blender::nodes::node_geo_sample_nearest_cc::get_closest_mesh_points(), blender::io::alembic::get_config(), get_domains(), get_effector_tot(), blender::geometry::get_final_points_num(), get_particle_uv(), blender::io::usd::get_shape_key_basis_mesh(), blender::io::alembic::get_vertices(), get_weights_array(), give_parvert(), heat_bone_weighting(), blender::io::usd::import_mesh_skel_bindings(), initSystem(), blender::ed::mesh::join_objects_exec(), blender::ed::mesh::join_vertex_groups(), make_duplis_verts(), mesh_calc_hq_normal(), mesh_copy_data(), blender::geometry::mesh_copy_selection(), blender::geometry::mesh_copy_selection_keep_edges(), blender::geometry::mesh_copy_selection_keep_verts(), mesh_customdata_get_type(), mesh_foreach_working_space_color(), mesh_foreachScreenFace(), mesh_get_x_mirror_faces(), blender::geometry::mesh_merge_by_distance_all(), blender::nodes::node_geo_merge_by_distance_cc::mesh_merge_by_distance_all(), blender::geometry::mesh_merge_by_distance_connected(), blender::nodes::node_geo_merge_by_distance_cc::mesh_merge_by_distance_connected(), blender::bke::mesh_remesh_reproject_attributes(), blender::draw::mesh_render_data_create(), mesh_reorder_vertices_spatial_exec(), blender::draw::edit_select::Instance::mesh_sync(), mesh_to_softbody(), mesh_to_volume(), blender::bke::pbvh::mesh_topology_count_matches(), blender::geometry::mesh_triangulate(), meshcache_do(), MeshFairingContext::MeshFairingContext(), MOD_get_texture_coords(), MOD_solidify_extrude_modifyMesh(), MOD_solidify_nonmanifold_modifyMesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), multires_reshape_apply_base_refit_base_mesh(), multires_unsubdivide_extract_grids(), multires_unsubdivide_prepare_original_bmesh_for_extract(), blender::nodes::node_geo_edge_paths_to_curves_cc::node_geo_exec(), blender::draw::overlay::Wireframe::object_sync_ex(), paint_weight_gradient_exec(), paint_weight_gradient_modal(), paintface_select_less(), paintvert_deselect_all_visible(), paintvert_hide(), paintvert_reveal(), paintvert_select_less(), paintvert_select_linked_vertices(), paintvert_select_more(), proj_paint_state_mesh_eval_init(), blender::geometry::propagate_vert_attributes(), psys_cache_vgroup(), psys_calc_dmcache(), psys_map_index_on_dm(), psys_thread_context_init_distribute(), blender::io::alembic::read_generated_coordinates(), blender::io::alembic::read_mverts(), blender::io::alembic::read_velocity(), blender::io::alembic::read_vertex_creases(), remap_hair_emitter(), blender::geometry::reorder_mesh(), sculpt_update_object(), blender::geometry::seed_from_mesh(), blender::nodes::node_geo_input_shortest_edge_paths_cc::shortest_paths(), blender::geometry::split_edges(), springs_from_mesh(), stats_mesheval(), stats_object_sculpt(), blender::bke::subdiv::subdiv_foreach_ctx_count(), blender::bke::subdiv::subdiv_foreach_ctx_init(), blender::bke::subdiv::subdiv_foreach_ctx_init_offsets(), blender::bke::subdiv::subdiv_mesh_ctx_cache_custom_data_layers(), blender::bke::subdiv::subdiv_mesh_topology_info(), blender::bke::subdiv::subdiv_to_mesh(), subdivide_base(), blender::io::alembic::AbcMeshReader::topology_changed(), blender::io::usd::USDMeshReader::topology_changed(), blender::ed::sculpt_paint::topology_matches(), um_arraystore_compact_ex(), um_arraystore_expand(), weight_paint_set(), weightvg_do_mask(), blender::geometry::weld_mesh_context_create(), and blender::io::alembic::write_generated_coordinates().