|
Blender V4.5
|
Public Member Functions | |
| ArmatureImportContext (Main &main, const ufbx_scene &fbx, const FBXImportParams ¶ms, FbxElementMapping &mapping) | |
| Object * | create_armature_for_node (const ufbx_node *node) |
| void | create_armature_bones (const ufbx_node *node, Object *arm_obj, const Set< const ufbx_node * > &bone_nodes, EditBone *parent_bone, const ufbx_matrix &parent_mtx, const ufbx_matrix &world_to_arm, const float parent_bone_size) |
| void | find_armatures (const ufbx_node *node) |
| void | calc_bone_bind_matrices () |
Public Attributes | |
| Main & | bmain |
| const ufbx_scene & | fbx |
| const FBXImportParams & | params |
| FbxElementMapping & | mapping |
Definition at line 26 of file fbx_import_armature.cc.
|
inline |
Definition at line 32 of file fbx_import_armature.cc.
| void blender::io::fbx::ArmatureImportContext::calc_bone_bind_matrices | ( | ) |
Definition at line 389 of file fbx_import_armature.cc.
References blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add_overwrite(), blender::io::fbx::FbxElementMapping::bone_is_skinned, blender::io::fbx::FbxElementMapping::bone_to_bind_matrix, fbx, and mapping.
| void blender::io::fbx::ArmatureImportContext::create_armature_bones | ( | const ufbx_node * | node, |
| Object * | arm_obj, | ||
| const Set< const ufbx_node * > & | bone_nodes, | ||
| EditBone * | parent_bone, | ||
| const ufbx_matrix & | parent_mtx, | ||
| const ufbx_matrix & | world_to_arm, | ||
| const float | parent_bone_size ) |
Definition at line 100 of file fbx_import_armature.cc.
References blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), BLI_assert, BONE_CONNECTED, BONE_INHERIT_SCALE_NONE, blender::io::fbx::FbxElementMapping::bone_is_skinned, BONE_SELECTED, blender::io::fbx::FbxElementMapping::bone_to_armature, blender::io::fbx::FbxElementMapping::bone_to_bind_matrix, blender::io::fbx::FbxElementMapping::bone_to_length, blender::io::fbx::FbxElementMapping::calc_local_bind_matrix(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), create_armature_bones(), Object::data, blender::math::distance_squared(), ED_armature_ebone_add(), ED_armature_ebone_from_mat4(), EditBone::flag, blender::io::fbx::get_fbx_name(), blender::io::fbx::FbxElementMapping::get_node_bind_matrix(), EditBone::head, FBXImportParams::ignore_leaf_bones, EditBone::inherit_scale_mode, blender::math::length(), mapping, blender::io::fbx::matrix_to_m44(), blender::math::max(), EditBone::name, name, node, blender::io::fbx::FbxElementMapping::node_is_blender_bone, blender::io::fbx::FbxElementMapping::node_to_name, params, EditBone::parent, pos, and EditBone::tail.
Referenced by create_armature_bones(), and find_armatures().
| Object * blender::io::fbx::ArmatureImportContext::create_armature_for_node | ( | const ufbx_node * | node | ) |
Definition at line 52 of file fbx_import_armature.cc.
References blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), blender::io::fbx::FbxElementMapping::armature_world_to_arm_node_matrix, blender::io::fbx::FbxElementMapping::armature_world_to_arm_pose_matrix, BKE_armature_add(), BKE_object_add_only_object(), BLI_assert_msg, bmain, Object::data, Object::dtx, blender::io::fbx::FbxElementMapping::el_to_object, blender::io::fbx::get_fbx_name(), blender::io::fbx::FbxElementMapping::global_conv_matrix, Object::id, blender::io::fbx::FbxElementMapping::imported_objects, mapping, node, blender::io::fbx::node_matrix_to_obj(), OB_ARMATURE, OB_DRAW_IN_FRONT, params, blender::io::fbx::read_custom_properties(), this, blender::io::fbx::ufbx_matrix_to_obj(), and FBXImportParams::use_custom_props.
Referenced by find_armatures().
| void blender::io::fbx::ArmatureImportContext::find_armatures | ( | const ufbx_node * | node | ) |
Definition at line 320 of file fbx_import_armature.cc.
References blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), blender::io::fbx::FbxElementMapping::armature_world_to_arm_pose_matrix, BKE_id_name(), BKE_pchan_apply_mat4(), BKE_pose_channel_find_name(), bmain, blender::io::fbx::FbxElementMapping::bone_to_bind_matrix, blender::io::fbx::calc_bone_pose_matrix(), blender::io::fbx::FbxElementMapping::calc_local_bind_matrix(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), create_armature_bones(), create_armature_for_node(), Object::data, ED_armature_edit_free(), ED_armature_from_edit(), ED_armature_to_edit(), blender::io::fbx::find_all_bones(), find_armatures(), Object::id, blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_default(), mapping, matrix, blender::io::fbx::matrix_to_m44(), blender::io::fbx::need_create_armature_for_node(), node, blender::io::fbx::FbxElementMapping::node_is_blender_bone, blender::io::fbx::FbxElementMapping::node_to_name, Object::pose, blender::io::fbx::read_custom_properties(), and this.
Referenced by find_armatures().
| Main& blender::io::fbx::ArmatureImportContext::bmain |
Definition at line 27 of file fbx_import_armature.cc.
Referenced by create_armature_for_node(), and find_armatures().
| const ufbx_scene& blender::io::fbx::ArmatureImportContext::fbx |
Definition at line 28 of file fbx_import_armature.cc.
Referenced by calc_bone_bind_matrices().
| FbxElementMapping& blender::io::fbx::ArmatureImportContext::mapping |
Definition at line 30 of file fbx_import_armature.cc.
Referenced by calc_bone_bind_matrices(), create_armature_bones(), create_armature_for_node(), and find_armatures().
| const FBXImportParams& blender::io::fbx::ArmatureImportContext::params |
Definition at line 29 of file fbx_import_armature.cc.
Referenced by create_armature_bones(), and create_armature_for_node().