|
Blender
V2.93
|
#include "DNA_anim_types.h"#include "DNA_collection_types.h"#include "DNA_constraint_types.h"#include "DNA_gpencil_types.h"#include "DNA_key_types.h"#include "DNA_material_types.h"#include "DNA_mesh_types.h"#include "DNA_modifier_types.h"#include "DNA_scene_types.h"#include "BLI_blenlib.h"#include "BLI_math.h"#include "BLI_threads.h"#include "BLI_utildefines.h"#include "BKE_DerivedMesh.h"#include "BKE_action.h"#include "BKE_armature.h"#include "BKE_constraint.h"#include "BKE_curve.h"#include "BKE_displist.h"#include "BKE_editmesh.h"#include "BKE_effect.h"#include "BKE_gpencil.h"#include "BKE_gpencil_modifier.h"#include "BKE_hair.h"#include "BKE_image.h"#include "BKE_key.h"#include "BKE_lattice.h"#include "BKE_layer.h"#include "BKE_light.h"#include "BKE_material.h"#include "BKE_mball.h"#include "BKE_mesh.h"#include "BKE_object.h"#include "BKE_particle.h"#include "BKE_pointcache.h"#include "BKE_pointcloud.h"#include "BKE_scene.h"#include "BKE_volume.h"#include "MEM_guardedalloc.h"#include "DEG_depsgraph.h"#include "DEG_depsgraph_query.h"Go to the source code of this file.
| void BKE_object_batch_cache_dirty_tag | ( | Object * | ob | ) |
Definition at line 352 of file object_update.c.
References BKE_curve_batch_cache_dirty_tag(), BKE_CURVE_BATCH_DIRTY_ALL, BKE_gpencil_batch_cache_dirty_tag(), BKE_hair_batch_cache_dirty_tag(), BKE_HAIR_BATCH_DIRTY_ALL, BKE_lattice_batch_cache_dirty_tag(), BKE_LATTICE_BATCH_DIRTY_ALL, BKE_mball_batch_cache_dirty_tag(), BKE_MBALL_BATCH_DIRTY_ALL, BKE_mesh_batch_cache_dirty_tag(), BKE_MESH_BATCH_DIRTY_ALL, BKE_pointcloud_batch_cache_dirty_tag(), BKE_POINTCLOUD_BATCH_DIRTY_ALL, BKE_volume_batch_cache_dirty_tag(), BKE_VOLUME_BATCH_DIRTY_ALL, Object::data, OB_CURVE, OB_FONT, OB_GPENCIL, OB_HAIR, OB_LATTICE, OB_MBALL, OB_MESH, OB_POINTCLOUD, OB_SURF, OB_VOLUME, and Object::type.
Referenced by BKE_object_defgroup_new(), BKE_object_defgroup_remove(), BKE_object_eval_uber_data(), and object_origin_set_exec().
Definition at line 412 of file object_update.c.
References BKE_curve_batch_cache_dirty_tag(), BKE_CURVE_BATCH_DIRTY_SELECT, BKE_lattice_batch_cache_dirty_tag(), BKE_LATTICE_BATCH_DIRTY_SELECT, BKE_mesh_batch_cache_dirty_tag(), BKE_MESH_BATCH_DIRTY_SELECT, DEG_debug_print_eval(), depsgraph, GS, ID_CU, ID_LT, ID_ME, and ID::name.
Referenced by BKE_object_select_update(), and blender::deg::DepsgraphNodeBuilder::build_object_data_geometry_datablock().
Definition at line 123 of file object_update.c.
References BKE_constraints_clear_evalob(), BKE_constraints_make_evalob(), BKE_constraints_solve(), BKE_scene_frame_get(), CONSTRAINT_OBTYPE_OBJECT, Object::constraints, DEG_debug_print_eval(), depsgraph, Object::id, ID::name, NULL, and scene.
Referenced by BKE_object_eval_transform_all(), and force_evaluation_if_constraint_disabled().
| void BKE_object_eval_eval_base_flags | ( | Depsgraph * | depsgraph, |
| Scene * | scene, | ||
| const int | view_layer_index, | ||
| Object * | object, | ||
| int | base_index, | ||
| const bool | is_from_set | ||
| ) |
Definition at line 446 of file object_update.c.
References BASE_ENABLED_RENDER, BASE_FROM_SET, Base::base_orig, BASE_SELECTABLE, BASE_SELECTED, BASE_VISIBLE_DEPSGRAPH, BKE_base_eval_flags(), BKE_particle_batch_cache_dirty_tag(), BKE_PARTICLE_BATCH_DIRTY_ALL, BLI_assert, BLI_findlink(), DAG_EVAL_RENDER, DEG_debug_print_eval(), DEG_get_evaluated_view_layer(), DEG_get_mode(), DEG_is_active(), depsgraph, ListBase::first, Base::flag, Object::id, Base::local_collections_bits, Base::local_view_bits, MEM_allocN_len, Object::mode, ID::name, NULL, OB_MODE_PARTICLE_EDIT, Base::object, ViewLayer::object_bases_array, Object::particlesystem, scene, and Scene::view_layers.
Definition at line 83 of file object_update.c.
References BKE_object_to_mat4(), DEG_debug_print_eval(), depsgraph, Object::id, ID::name, and Object::obmat.
Referenced by BKE_object_eval_transform_all().
Definition at line 93 of file object_update.c.
References BKE_object_get_parent_matrix(), copy_m4_m4(), copy_v3_v3(), DEG_debug_print_eval(), depsgraph, Object::id, mul_m4_m4m4(), ID::name, Object::obmat, Object::parent, Object_Runtime::parent_display_origin, Object::parentinv, PARSKEL, Object::partype, PARTYPE, and Object::runtime.
Referenced by BKE_object_eval_transform_all().
Definition at line 323 of file object_update.c.
References add_v3_v3(), copy_m4_m4(), DEG_debug_print_eval(), depsgraph, Object::id, ID_IS_LINKED, Object::instance_collection, Collection::instance_offset, invert_m4_m4(), mul_m4_m4m4(), ID::name, Object::obmat, Object::proxy_from, and Object::proxy_group.
Referenced by BKE_object_eval_uber_transform(), and BKE_object_handle_update_ex().
Definition at line 392 of file object_update.c.
References BKE_ptcache_object_reset(), DEG_debug_print_eval(), depsgraph, Object::id, ID::name, PTCACHE_RESET_DEPSGRAPH, and scene.
| void BKE_object_eval_reset | ( | Object * | ob_eval | ) |
Restore the object->data to a non-modifier evaluated state.
Some changes done directly in evaluated object require them to be reset before being re-evaluated. For example, we need to call this before BKE_mesh_new_from_object(), in case we removed/added modifiers in the evaluated object.
Definition at line 78 of file object_update.c.
References BKE_object_free_derived_caches().
Referenced by bake(), and object_force_modifier_update_for_bind().
Definition at line 398 of file object_update.c.
References BKE_object_eval_constraints(), BKE_object_eval_local_transform(), BKE_object_eval_parent(), BKE_object_eval_transform_final(), BKE_object_eval_uber_transform(), BLI_listbase_is_empty(), Object::constraints, depsgraph, NULL, Object::parent, and scene.
Referenced by applyGridAbsolute(), applyProject(), and ignore_parent_tx().
Definition at line 144 of file object_update.c.
References Object::data, DEG_debug_print_eval(), depsgraph, Object_Runtime::gpd_eval, Object::id, Object::imat, invert_m4_m4_safe(), is_negative_m4(), ID::name, NULL, OB_GPENCIL, OB_NEG_SCALE, Object::obmat, Object::runtime, Object::transflag, and Object::type.
Referenced by BKE_object_eval_transform_all().
Definition at line 384 of file object_update.c.
References BKE_object_batch_cache_dirty_tag(), BKE_object_handle_data_update(), BLI_assert, DEG_debug_print_eval(), depsgraph, Object::id, ID::name, OB_ARMATURE, scene, and Object::type.
Definition at line 347 of file object_update.c.
References BKE_object_eval_proxy_copy(), and depsgraph.
Referenced by BKE_object_eval_transform_all().
Definition at line 164 of file object_update.c.
References BKE_displist_make_curveTypes(), BKE_displist_make_mball(), BKE_editmesh_from_object(), BKE_gpencil_modifiers_calc(), BKE_gpencil_prepare_eval_data(), BKE_gpencil_update_layer_transforms(), BKE_hair_data_update(), BKE_lattice_modifiers_calc(), BKE_pointcloud_data_update(), BKE_pose_copy_result(), BKE_pose_where_is(), BKE_volume_data_update(), BLI_remlink(), CD_MASK_BAREMESH, CD_MASK_FREESTYLE_EDGE, CD_MASK_FREESTYLE_FACE, CD_MASK_MDEFORMVERT, CD_MASK_MLOOPCOL, CD_MASK_MLOOPUV, CD_MASK_ORCO, CD_MASK_PROP_ALL, CD_MASK_PROP_COLOR, Scene::customdata_mask, CustomData_MeshMasks_update(), DAG_EVAL_RENDER, Object::data, DEG_debug_print_eval(), DEG_get_mode(), depsgraph, ParticleSettings::draw_as, CustomData_MeshMasks::emask, ListBase::first, ParticleSystem::flag, CustomData_MeshMasks::fmask, Object::id, ID_IS_LINKED, ParticleSettings::instance_collection, ParticleSettings::instance_object, CustomData_MeshMasks::lmask, makeDerivedMesh(), Object::mode, ID::name, ParticleSystem::next, NULL, OB_ARMATURE, OB_CURVE, OB_DUPLIPARTS, OB_FONT, OB_GPENCIL, OB_HAIR, OB_LATTICE, OB_MBALL, OB_MESH, OB_MODE_EDIT, OB_POINTCLOUD, OB_SURF, OB_VOLUME, ParticleSystem::part, PART_DRAW_GR, PART_DRAW_OB, PART_DRAW_REND, particle_system_update(), Object::particlesystem, CustomData_MeshMasks::pmask, Object::pose, Object::proxy_from, psys_check_enabled(), PSYS_DELETE, psys_free(), ParticleSettings::ren_as, scene, Object::transflag, Object::type, and CustomData_MeshMasks::vmask.
Referenced by bake(), BKE_object_eval_uber_data(), and BKE_object_handle_update_ex().
Definition at line 431 of file object_update.c.
References BKE_object_data_select_update(), BLI_mutex_lock(), BLI_mutex_unlock(), Object::data, Object_Runtime::data_orig, DEG_debug_print_eval(), depsgraph, Object::id, Object_Runtime::is_data_eval_owned, ID::name, OB_MESH, Mesh::runtime, Object::runtime, and Object::type.
Definition at line 294 of file object_update.c.
References Object::base_flag, BLI_assert, BLI_strdup(), Object::constinv, copy_m4_m4(), DEG_get_original_object(), DEG_is_active(), depsgraph, ListBase::first, Object::flag, Object::imat, MEM_SAFE_FREE, Object::modifiers, NULL, object_sync_boundbox_to_original(), Object::obmat, STREQ, and Object::transflag.
Bounding box from evaluated geometry.
Definition at line 283 of file object_update.c.
References Object_Runtime::bb, BKE_object_boundbox_get(), MEM_mallocN, NULL, and Object::runtime.
Referenced by BKE_object_sync_to_original().