Blender V4.3
blender::bke::ObjectRuntime Struct Reference

#include <BKE_object_types.hh>

Public Attributes

float4x4 object_to_world = float4x4::identity()
 
float4x4 world_to_object = float4x4::identity()
 
CustomData_MeshMasks last_data_mask = {}
 
char last_need_mapping = false
 
float3 parent_display_origin
 
int select_id = -1
 
char is_data_eval_owned = false
 
double overlay_mode_transfer_start_time = 0.0f
 
std::optional< Bounds< float3 > > bounds_eval
 
IDdata_orig = nullptr
 
IDdata_eval = nullptr
 
GeometrySetgeometry_set_eval = nullptr
 
Meshmesh_deform_eval = nullptr
 
Mesheditmesh_eval_cage = nullptr
 
Meshobject_as_temp_mesh = nullptr
 
PoseBackuppose_backup = nullptr
 
::Curveobject_as_temp_curve = nullptr
 
CurveCachecurve_cache = nullptr
 
unsigned short local_collections_bits = 0
 
Array< float3x3, 0 > crazyspace_deform_imats
 
Array< float3, 0 > crazyspace_deform_cos
 
uint64_t last_update_transform = 0
 
uint64_t last_update_geometry = 0
 
uint64_t last_update_shading = 0
 

Detailed Description

Definition at line 27 of file BKE_object_types.hh.

Member Data Documentation

◆ bounds_eval

std::optional<Bounds<float3> > blender::bke::ObjectRuntime::bounds_eval

The bounding box of the object's evaluated geometry in the active dependency graph. The bounds are copied back to the original object for the RNA API and for display in the interface.

Only set on original objects.

Definition at line 65 of file BKE_object_types.hh.

Referenced by blender::deg::ObjectRuntimeBackup::init_from_object().

◆ crazyspace_deform_cos

Array<float3, 0> blender::bke::ObjectRuntime::crazyspace_deform_cos

Definition at line 129 of file BKE_object_types.hh.

Referenced by BKE_object_runtime_reset_on_copy().

◆ crazyspace_deform_imats

Array<float3x3, 0> blender::bke::ObjectRuntime::crazyspace_deform_imats

Definition at line 128 of file BKE_object_types.hh.

Referenced by BKE_object_runtime_reset_on_copy().

◆ curve_cache

CurveCache* blender::bke::ObjectRuntime::curve_cache = nullptr

Runtime evaluated curve-specific data, not stored in the file.

Definition at line 124 of file BKE_object_types.hh.

Referenced by BKE_object_runtime_reset_on_copy().

◆ data_eval

ID* blender::bke::ObjectRuntime::data_eval = nullptr

Object data structure created during object evaluation. It has all modifiers applied. The type is determined by the type of the original object.

Definition at line 77 of file BKE_object_types.hh.

Referenced by BKE_object_runtime_reset_on_copy(), and blender::deg::ObjectRuntimeBackup::restore_to_object().

◆ data_orig

ID* blender::bke::ObjectRuntime::data_orig = nullptr

Original data pointer, before object->data was changed to point to data_eval. Is assigned by dependency graph's copy-on-evaluation.

Definition at line 72 of file BKE_object_types.hh.

Referenced by blender::deg::ObjectRuntimeBackup::init_from_object(), and blender::deg::ObjectRuntimeBackup::restore_to_object().

◆ editmesh_eval_cage

Mesh* blender::bke::ObjectRuntime::editmesh_eval_cage = nullptr

Evaluated mesh cage in edit mode.

Note
When the mesh's runtime->deformed_only is true, the meshes vertex positions and other geometry arrays will be aligned the edit-mesh. Otherwise the CD_ORIGINDEX custom-data should be used to map the cage geometry back to the original indices, see eModifierTypeFlag_SupportsMapping.

Definition at line 101 of file BKE_object_types.hh.

◆ geometry_set_eval

GeometrySet* blender::bke::ObjectRuntime::geometry_set_eval = nullptr

Objects can evaluate to a geometry set instead of a single ID. In those cases, the evaluated geometry set will be stored here. An ID of the correct type is still stored in data_eval. geometry_set_eval might reference the ID pointed to by data_eval as well, but does not own the data.

Definition at line 85 of file BKE_object_types.hh.

Referenced by BKE_object_runtime_reset_on_copy().

◆ is_data_eval_owned

char blender::bke::ObjectRuntime::is_data_eval_owned = false

Denotes whether the evaluated data is owned by this object or is referenced and owned by somebody else.

Definition at line 54 of file BKE_object_types.hh.

◆ last_data_mask

CustomData_MeshMasks blender::bke::ObjectRuntime::last_data_mask = {}

The custom data layer mask that was last used to calculate data_eval and mesh_deform_eval.

Definition at line 36 of file BKE_object_types.hh.

◆ last_need_mapping

char blender::bke::ObjectRuntime::last_need_mapping = false

Did last modifier stack generation need mapping support?

Definition at line 39 of file BKE_object_types.hh.

◆ last_update_geometry

uint64_t blender::bke::ObjectRuntime::last_update_geometry = 0

Definition at line 133 of file BKE_object_types.hh.

◆ last_update_shading

uint64_t blender::bke::ObjectRuntime::last_update_shading = 0

Definition at line 134 of file BKE_object_types.hh.

◆ last_update_transform

uint64_t blender::bke::ObjectRuntime::last_update_transform = 0

Definition at line 132 of file BKE_object_types.hh.

◆ local_collections_bits

unsigned short blender::bke::ObjectRuntime::local_collections_bits = 0

Definition at line 126 of file BKE_object_types.hh.

◆ mesh_deform_eval

Mesh* blender::bke::ObjectRuntime::mesh_deform_eval = nullptr

Mesh structure created during object evaluation. It has deformation only modifiers applied on it.

Definition at line 91 of file BKE_object_types.hh.

Referenced by BKE_object_runtime_reset_on_copy().

◆ object_as_temp_curve

::Curve* blender::bke::ObjectRuntime::object_as_temp_curve = nullptr

This is a curve representation of corresponding object. It created when Python calls object.to_curve().

Definition at line 121 of file BKE_object_types.hh.

Referenced by BKE_object_runtime_reset_on_copy().

◆ object_as_temp_mesh

Mesh* blender::bke::ObjectRuntime::object_as_temp_mesh = nullptr

This is a mesh representation of corresponding object. It created when Python calls object.to_mesh().

Definition at line 107 of file BKE_object_types.hh.

Referenced by BKE_object_runtime_reset_on_copy().

◆ object_to_world

float4x4 blender::bke::ObjectRuntime::object_to_world = float4x4::identity()

Final transformation matrices with constraints & animsys applied.

Definition at line 29 of file BKE_object_types.hh.

Referenced by blender::ed::sculpt_paint::dyntopo::detail_size::test::TEST(), and blender::ed::sculpt_paint::dyntopo::detail_size::test::TEST().

◆ overlay_mode_transfer_start_time

double blender::bke::ObjectRuntime::overlay_mode_transfer_start_time = 0.0f

Start time of the mode transfer overlay animation.

Definition at line 57 of file BKE_object_types.hh.

◆ parent_display_origin

float3 blender::bke::ObjectRuntime::parent_display_origin

Only used for drawing the parent/child help-line.

Definition at line 42 of file BKE_object_types.hh.

◆ pose_backup

PoseBackup* blender::bke::ObjectRuntime::pose_backup = nullptr

Backup of the object's pose (might be a subset, i.e. not contain all bones).

Created by BKE_pose_backup_create_on_object(). This memory is owned by the Object. It is freed along with the object, or when BKE_pose_backup_clear() is called.

Definition at line 115 of file BKE_object_types.hh.

Referenced by BKE_object_runtime_reset_on_copy().

◆ select_id

int blender::bke::ObjectRuntime::select_id = -1

Selection id of this object. It might differ between an evaluated and its original object, when the object is being instanced.

Definition at line 48 of file BKE_object_types.hh.

◆ world_to_object

float4x4 blender::bke::ObjectRuntime::world_to_object = float4x4::identity()

Definition at line 30 of file BKE_object_types.hh.


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