|
Blender V5.0
|
Classes | |
| struct | FbxImportContext |
| struct | ElementAnimations |
| struct | ArmatureImportContext |
| struct | FbxPbrTextureToSocket |
| struct | FbxStdTextureToSocket |
| struct | FbxElementMapping |
Functions | |
| static bool | should_import_camera (const ufbx_scene &fbx, const ufbx_camera *camera) |
| static void | fbx_task_run_fn (void *, ufbx_thread_pool_context ctx, uint32_t, uint32_t start_index, uint32_t count) |
| static void | fbx_task_wait_fn (void *, ufbx_thread_pool_context, uint32_t, uint32_t) |
| void | importer_main (Main *bmain, Scene *scene, ViewLayer *view_layer, const FBXImportParams ¶ms) |
| static FCurve * | create_fcurve (animrig::Channelbag &channelbag, const animrig::FCurveDescriptor &descriptor, int64_t key_count) |
| static void | set_curve_sample (FCurve *curve, int64_t key_index, float time, float value) |
| static Vector< ElementAnimations > | gather_animated_properties (const FbxElementMapping &mapping, const ufbx_anim_layer &flayer) |
| static void | finalize_curve (FCurve *cu) |
| static void | create_transform_curve_desc (const FbxElementMapping &mapping, const ElementAnimations &anim, LinearAllocator<> &curve_name_alloc, Vector< animrig::FCurveDescriptor > &r_curve_desc) |
| static void | create_transform_curve_data (const FbxElementMapping &mapping, const ufbx_anim *fbx_anim, const ElementAnimations &anim, const double fps, const float anim_offset, FCurve **curves) |
| static void | create_camera_curves (const ufbx_metadata &metadata, const ElementAnimations &anim, animrig::Channelbag &channelbag, const double fps, const float anim_offset) |
| static void | create_material_curves (const ElementAnimations &anim, bAction *action, animrig::Channelbag &channelbag, const double fps, const float anim_offset) |
| static void | create_blend_shape_curves (const ElementAnimations &anim, animrig::Channelbag &channelbag, const double fps, const float anim_offset) |
| void | import_animations (Main &bmain, const ufbx_scene &fbx, const FbxElementMapping &mapping, const double fps, const float anim_offset) |
| static bool | need_create_armature_for_node (const ufbx_node *node) |
| static void | find_bones (const ufbx_node *node, Set< const ufbx_node * > &r_bones) |
| static void | find_fake_bones (const ufbx_node *root_node, const Set< const ufbx_node * > &bones, Set< const ufbx_node * > &r_fake_bones) |
| static Set< const ufbx_node * > | find_all_bones (const ufbx_node *root_node) |
| void | import_armatures (Main &bmain, const ufbx_scene &fbx, FbxElementMapping &mapping, const FBXImportParams ¶ms) |
| static bNode * | add_node (bNodeTree *ntree, int type, float x, float y) |
| static void | link_sockets (bNodeTree *ntree, bNode *from_node, const char *from_node_id, bNode *to_node, const char *to_node_id) |
| static void | set_socket_float (const char *socket_id, const float value, bNode *node) |
| static void | set_socket_rgb (const char *socket_id, float vr, float vg, float vb, bNode *node) |
| static void | set_socket_vector (const char *socket_id, float vx, float vy, float vz, bNode *node) |
| static float | set_bsdf_float_param (bNode *bsdf, const ufbx_material_map &umap, const char *socket, float def, float min=0.0f, float max=1.0f, float multiplier=1.0f) |
| static float3 | set_bsdf_color_param (bNode *bsdf, const ufbx_material_map &umap, const char *socket, float3 def, float3 min=float3(0.0f), float3 max=float3(1.0f)) |
| static void | set_bsdf_socket_values (bNode *bsdf, Material *mat, const ufbx_material &fmat) |
| static Image * | create_placeholder_image (Main *bmain, const std::string &path) |
| static Image * | load_texture_image (Main *bmain, const std::string &file_dir, const ufbx_texture &tex) |
| static void | add_image_texture (Main *bmain, const std::string &file_dir, bNodeTree *ntree, bNode *bsdf, const ufbx_material &fmat, const ufbx_texture *ftex, const char *socket_name, float node_locy, Set< StringRefNull > &done_bsdf_inputs) |
| static void | add_image_textures (Main *bmain, const std::string &file_dir, bNodeTree *ntree, bNode *bsdf, const ufbx_material &fmat) |
| Material * | import_material (Main *bmain, const std::string &base_dir, const ufbx_material &fmat) |
| static bool | is_skin_deformer_usable (const ufbx_mesh *mesh, const ufbx_skin_deformer *skin) |
| static void | import_vertex_positions (const ufbx_mesh *fmesh, Mesh *mesh) |
| static void | import_faces (const ufbx_mesh *fmesh, Mesh *mesh) |
| static void | import_face_material_indices (const ufbx_mesh *fmesh, bke::MutableAttributeAccessor &attributes) |
| static void | import_face_smoothing (const ufbx_mesh *fmesh, bke::MutableAttributeAccessor &attributes) |
| static void | import_edges (const ufbx_mesh *fmesh, Mesh *mesh, bke::MutableAttributeAccessor &attributes) |
| static void | import_uvs (const ufbx_mesh *fmesh, bke::MutableAttributeAccessor &attributes, AttributeOwner attr_owner) |
| static void | import_colors (const ufbx_mesh *fmesh, Mesh *mesh, bke::MutableAttributeAccessor &attributes, AttributeOwner attr_owner, eFBXVertexColorMode color_mode) |
| static bool | import_normals_into_temp_attribute (const ufbx_mesh *fmesh, Mesh *mesh, bke::MutableAttributeAccessor &attributes) |
| static VectorSet< std::string > | get_skin_bone_name_set (const FbxElementMapping &mapping, const ufbx_mesh *fmesh) |
| static void | import_skin_vertex_groups (const FbxElementMapping &mapping, const ufbx_mesh *fmesh, Mesh *mesh) |
| static bool | import_blend_shapes (Main &bmain, FbxElementMapping &mapping, const ufbx_mesh *fmesh, Mesh *mesh) |
| static void | import_blend_shape_full_weights (const FbxElementMapping &mapping, const ufbx_mesh *fmesh, Mesh *mesh, Object *obj) |
| void | import_meshes (Main &bmain, const ufbx_scene &fbx, FbxElementMapping &mapping, const FBXImportParams ¶ms) |
| const char * | get_fbx_name (const ufbx_string &name, const char *def) |
| void | matrix_to_m44 (const ufbx_matrix &src, float dst[4][4]) |
| ufbx_matrix | calc_bone_pose_matrix (const ufbx_transform &local_xform, const ufbx_node &node, const ufbx_matrix &local_bind_inv_matrix) |
| void | ufbx_matrix_to_obj (const ufbx_matrix &mtx, Object *obj) |
| void | node_matrix_to_obj (const ufbx_node *node, Object *obj, const FbxElementMapping &mapping) |
| static void | read_ufbx_property (const ufbx_prop &prop, IDProperty *idgroup, bool enums_as_strings) |
| void | read_custom_properties (const ufbx_props &props, ID &id, bool enums_as_strings) |
| static IDProperty * | pchan_EnsureProperties (bPoseChannel &pchan) |
| void | read_custom_properties (const ufbx_props &props, bPoseChannel &pchan, bool enums_as_strings) |
Variables | |
| static constexpr float | node_locx_texcoord = -880.0f |
| static constexpr float | node_locx_mapping = -680.0f |
| static constexpr float | node_locx_image = -480.0f |
| static constexpr float | node_locx_normalmap = -200.0f |
| static constexpr float | node_locx_bsdf = 0.0f |
| static constexpr float | node_locx_output = 280.0f |
| static constexpr float | node_locy_top = 300.0f |
| static constexpr float | node_locy_step = 300.0f |
| static const FbxPbrTextureToSocket | fbx_pbr_to_socket [] |
| static const FbxStdTextureToSocket | fbx_std_to_socket [] |
| static constexpr const char * | temp_custom_normals_name = "fbx_temp_custom_normals" |
|
static |
Definition at line 309 of file fbx_import_material.cc.
References blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), add_node(), BKE_image_acquire_ibuf(), BKE_image_release_ibuf(), BLI_assert, COLOR_ROLE_DATA, Image::colorspace_settings, blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), bNode::custom1, NodeTexImage::extension, bNode::id, Image::id, IMB_colormanagement_role_colorspace_name_get(), link_sockets(), load_texture_image(), lock, ColorManagedColorspaceSettings::name, node_locx_image, node_locx_mapping, node_locx_normalmap, node_locx_texcoord, ImBuf::planes, R_IMF_PLANES_RGBA, rot, set_socket_float(), set_socket_vector(), SH_NODE_MAPPING, SH_NODE_NORMAL_MAP, SH_NODE_TEX_IMAGE, SH_NODE_UVMAP, SHD_IMAGE_EXTENSION_EXTEND, SHD_IMAGE_EXTENSION_REPEAT, bNode::storage, STR_ELEM, STREQ, STRNCPY_UTF8, and TEXMAP_TYPE_TEXTURE.
Referenced by add_image_textures().
|
static |
Definition at line 396 of file fbx_import_material.cc.
References add_image_texture(), BLI_assert, blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), fbx_pbr_to_socket, fbx_std_to_socket, node_locy_step, and node_locy_top.
Referenced by import_material().
Definition at line 48 of file fbx_import_material.cc.
References bNode::location, blender::bke::node_add_static_node(), x, and y.
Referenced by add_image_texture(), and import_material().
| ufbx_matrix blender::io::fbx::calc_bone_pose_matrix | ( | const ufbx_transform & | local_xform, |
| const ufbx_node & | node, | ||
| const ufbx_matrix & | local_bind_inv_matrix ) |
Definition at line 47 of file fbx_import_util.cc.
Referenced by create_transform_curve_data(), and blender::io::fbx::ArmatureImportContext::find_armatures().
|
static |
Definition at line 475 of file fbx_import_anim.cc.
References BLI_assert, create_fcurve(), finalize_curve(), float, i, blender::io::fbx::ElementAnimations::prop_blend_shape, and set_curve_sample().
Referenced by import_animations().
|
static |
Definition at line 398 of file fbx_import_anim.cc.
References create_fcurve(), finalize_curve(), float, GS, i, ID_CA, ID::name, blender::io::fbx::ElementAnimations::prop_focal_length, blender::io::fbx::ElementAnimations::prop_focus_dist, set_curve_sample(), and blender::io::fbx::ElementAnimations::target_id.
Referenced by import_animations().
|
static |
Definition at line 37 of file fbx_import_anim.cc.
References BKE_fcurve_bezt_resize(), BLI_assert_msg, and blender::animrig::Channelbag::fcurve_create_unique().
Referenced by create_blend_shape_curves(), create_camera_curves(), and create_material_curves().
|
static |
Definition at line 435 of file fbx_import_anim.cc.
References blender::animrig::action_channelbag_ensure(), blender::animrig::assign_action_ensure_slot_for_keying(), BLI_assert, create_fcurve(), finalize_curve(), float, GS, i, ID_MA, ID::name, Material::nodetree, blender::io::fbx::ElementAnimations::prop_mat_diffuse, set_curve_sample(), blender::io::fbx::ElementAnimations::target_id, and UNUSED_VARS_NDEBUG.
Referenced by import_animations().
|
static |
Definition at line 202 of file fbx_import_material.cc.
References BKE_image_add_generated(), BLI_path_basename(), Image::filepath, IMA_GENTYPE_BLANK, IMA_SRC_FILE, name, Image::source, and STRNCPY().
Referenced by load_texture_image().
|
static |
Definition at line 255 of file fbx_import_anim.cc.
References blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), blender::math::AxisAngleBase< T, AngleT >::angle(), blender::io::fbx::FbxElementMapping::armature_world_to_arm_pose_matrix, blender::math::AxisAngleBase< T, AngleT >::axis(), blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::begin(), blender::Vector< T, InlineBufferCapacity, Allocator >::begin(), BKE_fcurve_bezt_resize(), BLI_assert_msg, blender::io::fbx::FbxElementMapping::bone_to_armature, calc_bone_pose_matrix(), blender::io::fbx::FbxElementMapping::calc_local_bind_matrix(), Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), blender::math::dot(), blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::end(), blender::Vector< T, InlineBufferCapacity, Allocator >::end(), blender::io::fbx::ElementAnimations::fbx_elem, float, i, blender::math::QuaternionBase< float >::identity(), Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_default(), blender::io::fbx::FbxElementMapping::node_is_blender_bone, blender::io::fbx::ElementAnimations::object_rotmode, blender::io::fbx::ElementAnimations::prop_position, blender::io::fbx::ElementAnimations::prop_rotation, blender::io::fbx::ElementAnimations::prop_scale, blender::math::AngleRadianBase< T >::radian(), ROT_MODE_AXISANGLE, ROT_MODE_QUAT, set_curve_sample(), blender::Vector< T, InlineBufferCapacity, Allocator >::size(), blender::math::to_axis_angle(), blender::math::to_euler(), blender::math::QuaternionBase< T >::w, blender::math::EulerBase< T >::x(), blender::math::QuaternionBase< T >::x, blender::math::EulerBase< T >::y(), blender::math::QuaternionBase< T >::y, blender::math::EulerBase< T >::z(), and blender::math::QuaternionBase< T >::z.
Referenced by import_animations().
|
static |
Definition at line 203 of file fbx_import_anim.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::append(), Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), blender::LinearAllocator< Allocator >::copy_string(), blender::io::fbx::ElementAnimations::fbx_elem, get_fbx_name(), i, Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_default(), blender::io::fbx::FbxElementMapping::node_is_blender_bone, blender::io::fbx::FbxElementMapping::node_to_name, blender::io::fbx::ElementAnimations::object_rotmode, ROT_MODE_AXISANGLE, and ROT_MODE_QUAT.
Referenced by import_animations().
|
static |
Definition at line 312 of file fbx_import.cc.
References count, and blender::threading::parallel_for_each().
Referenced by importer_main().
|
static |
Definition at line 323 of file fbx_import.cc.
Referenced by importer_main().
|
static |
Definition at line 196 of file fbx_import_anim.cc.
References BKE_fcurve_handles_recalc().
Referenced by create_blend_shape_curves(), create_camera_curves(), create_material_curves(), and import_animations().
|
static |
Definition at line 301 of file fbx_import_armature.cc.
References blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), b, find_bones(), and find_fake_bones().
Referenced by blender::io::fbx::ArmatureImportContext::find_armatures().
|
static |
Definition at line 276 of file fbx_import_armature.cc.
References blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), and find_bones().
Referenced by find_all_bones(), and find_bones().
|
static |
Definition at line 286 of file fbx_import_armature.cc.
References blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), and ELEM.
Referenced by find_all_bones().
|
static |
Definition at line 72 of file fbx_import_anim.cc.
References b, blender::Vector< T, InlineBufferCapacity, Allocator >::begin(), Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::BaseIteratorRange< SubIterator >::begin(), blender::io::fbx::FbxElementMapping::bone_to_armature, blender::io::fbx::FbxElementMapping::el_to_object, blender::io::fbx::FbxElementMapping::el_to_shape_key, blender::Vector< T, InlineBufferCapacity, Allocator >::end(), Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::BaseIteratorRange< SubIterator >::end(), blender::io::fbx::ElementAnimations::fbx_elem, Key::id, Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_default(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_or_add_default(), blender::io::fbx::FbxElementMapping::mat_to_material, OB_ARMATURE, OB_CAMERA, OB_MESH, blender::io::fbx::ElementAnimations::object_rotmode, blender::io::fbx::ElementAnimations::order, blender::io::fbx::ElementAnimations::prop_blend_shape, blender::io::fbx::ElementAnimations::prop_focal_length, blender::io::fbx::ElementAnimations::prop_focus_dist, blender::io::fbx::ElementAnimations::prop_mat_diffuse, blender::io::fbx::ElementAnimations::prop_position, blender::io::fbx::ElementAnimations::prop_rotation, blender::io::fbx::ElementAnimations::prop_scale, ROT_MODE_QUAT, STREQ, blender::io::fbx::ElementAnimations::target_id, and blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::values().
Referenced by import_animations().
| const char * blender::io::fbx::get_fbx_name | ( | const ufbx_string & | name, |
| const char * | def ) |
Definition at line 22 of file fbx_import_util.cc.
References name.
Referenced by blender::io::fbx::ArmatureImportContext::create_armature_bones(), blender::io::fbx::ArmatureImportContext::create_armature_for_node(), create_transform_curve_desc(), blender::io::fbx::FbxImportContext::import_cameras(), blender::io::fbx::FbxImportContext::import_empties(), and blender::io::fbx::FbxImportContext::import_lights().
|
static |
Definition at line 275 of file fbx_import_mesh.cc.
References blender::VectorSet< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), is_skin_deformer_usable(), Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_default(), and blender::io::fbx::FbxElementMapping::node_to_name.
Referenced by import_skin_vertex_groups().
| void blender::io::fbx::import_animations | ( | Main & | bmain, |
| const ufbx_scene & | fbx, | ||
| const FbxElementMapping & | mapping, | ||
| const double | fps, | ||
| const float | anim_offset ) |
Definition at line 496 of file fbx_import_anim.cc.
References AnimData::action, blender::animrig::action_add(), blender::Vector< T, InlineBufferCapacity, Allocator >::append(), blender::Vector< T, InlineBufferCapacity, Allocator >::as_span(), blender::animrig::assign_action(), blender::animrig::assign_action_slot(), BKE_animdata_ensure_id(), BLI_assert, BLI_assert_msg, blender::animrig::StripKeyframeData::channelbag_for_slot_ensure(), create_blend_shape_curves(), create_camera_curves(), create_material_curves(), create_transform_curve_data(), create_transform_curve_desc(), blender::animrig::Strip::data(), blender::Vector< T, InlineBufferCapacity, Allocator >::data(), blender::animrig::Channelbag::fcurve_create_many(), finalize_curve(), gather_animated_properties(), GS, bAction::id, id_fake_user_set(), blender::Vector< T, InlineBufferCapacity, Allocator >::index_range(), blender::Vector< T, InlineBufferCapacity, Allocator >::is_empty(), blender::animrig::Action::layer(), blender::animrig::Action::layer_keystrip_ensure(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_or_add_default(), blender::animrig::OK, blender::io::fbx::ElementAnimations::prop_blend_shape, blender::io::fbx::ElementAnimations::prop_focal_length, blender::io::fbx::ElementAnimations::prop_focus_dist, blender::io::fbx::ElementAnimations::prop_mat_diffuse, blender::io::fbx::ElementAnimations::prop_position, blender::io::fbx::ElementAnimations::prop_rotation, blender::io::fbx::ElementAnimations::prop_scale, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), blender::animrig::Action::slot_add_for_id_type(), AnimData::slot_handle, blender::animrig::Action::slot_identifier_define(), STREQ, blender::animrig::Layer::strip(), blender::animrig::Slot::unassigned, and UNUSED_VARS_NDEBUG.
Referenced by blender::io::fbx::FbxImportContext::import_animation().
| void blender::io::fbx::import_armatures | ( | Main & | bmain, |
| const ufbx_scene & | fbx, | ||
| FbxElementMapping & | mapping, | ||
| const FBXImportParams & | params ) |
Definition at line 423 of file fbx_import_armature.cc.
References params.
Referenced by blender::io::fbx::FbxImportContext::import_armatures().
|
static |
Definition at line 383 of file fbx_import_mesh.cc.
References BKE_defgroup_name_index(), BKE_defvert_ensure_index(), BKE_keyblock_find_name(), BKE_object_defgroup_add_name(), blender::io::fbx::FbxElementMapping::el_to_shape_key, i, Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_default(), KeyBlock::name, blender::MutableSpan< T >::size(), STRNCPY_UTF8, Mesh::vertex_group_names, KeyBlock::vgroup, w(), and MDeformWeight::weight.
|
static |
Definition at line 339 of file fbx_import_mesh.cc.
References Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), BKE_key_add(), BKE_keyblock_add(), BKE_keyblock_convert_from_mesh(), KeyBlock::curval, KeyBlock::data, blender::io::fbx::FbxElementMapping::el_to_shape_key, i, Mesh::id, Mesh::key, KEY_RELATIVE, and Key::type.
|
static |
Definition at line 203 of file fbx_import_mesh.cc.
References Mesh::active_color_attribute, BKE_attribute_calc_unique_name(), BLI_assert, BLI_assert_unreachable, BLI_strdup(), col, blender::bke::Corner, Mesh::default_color_attribute, blender::bke::SpanAttributeWriter< T >::finish(), i, Linear, blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_only_span(), rgba_float_to_uchar(), blender::bke::SpanAttributeWriter< T >::span, and sRGB.
Referenced by import_meshes().
|
static |
Definition at line 117 of file fbx_import_mesh.cc.
References blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), BLI_assert, blender::bke::Edge, blender::bke::SpanAttributeWriter< T >::finish(), i, blender::Span< T >::index_range(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_default(), blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_only_span(), blender::bke::mesh_calc_edges(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::reserve(), blender::MutableSpan< T >::size(), blender::Span< T >::size(), blender::bke::SpanAttributeWriter< T >::span, and sqrtf.
Referenced by import_meshes().
|
static |
Definition at line 91 of file fbx_import_mesh.cc.
References blender::bke::Face, blender::bke::SpanAttributeWriter< T >::finish(), i, blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_only_span(), and blender::bke::SpanAttributeWriter< T >::span.
Referenced by import_meshes().
|
static |
Definition at line 104 of file fbx_import_mesh.cc.
References blender::bke::Face, blender::bke::SpanAttributeWriter< T >::finish(), i, blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_only_span(), and blender::bke::SpanAttributeWriter< T >::span.
Referenced by import_meshes().
|
static |
Definition at line 73 of file fbx_import_mesh.cc.
References BLI_assert, i, blender::MutableSpan< T >::is_empty(), and blender::MutableSpan< T >::size().
Referenced by import_meshes().
| Material * blender::io::fbx::import_material | ( | Main * | bmain, |
| const std::string & | base_dir, | ||
| const ufbx_material & | fmat ) |
Definition at line 443 of file fbx_import_material.cc.
References add_image_textures(), add_node(), BKE_material_add(), BKE_ntree_update_after_single_tree_change(), Material::id, id_us_min(), link_sockets(), node_locx_bsdf, node_locx_output, node_locy_top, blender::bke::node_set_active(), blender::bke::node_tree_add_tree_embedded(), Material::nodetree, ntreeType_Shader, output, set_bsdf_socket_values(), SH_NODE_BSDF_PRINCIPLED, and SH_NODE_OUTPUT_MATERIAL.
Referenced by blender::io::fbx::FbxImportContext::import_materials().
| void blender::io::fbx::import_meshes | ( | Main & | bmain, |
| const ufbx_scene & | fbx, | ||
| FbxElementMapping & | mapping, | ||
| const FBXImportParams & | params ) |
Definition at line 444 of file fbx_import_mesh.cc.
References BKE_mesh_new_nomain(), BKE_mesh_validate(), blender::bke::Corner, AttributeOwner::from_id(), import_colors(), import_edges(), import_face_material_indices(), import_face_smoothing(), import_faces(), import_normals_into_temp_attribute(), import_skin_vertex_groups(), import_uvs(), import_vertex_positions(), blender::bke::mesh_set_custom_normals(), None, normals, blender::threading::parallel_for_each(), params, and temp_custom_normals_name.
Referenced by blender::io::fbx::FbxImportContext::import_meshes().
|
static |
Definition at line 255 of file fbx_import_mesh.cc.
References BLI_assert, blender::bke::Corner, Mesh::corners_num, i, blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_only_span(), normals, and temp_custom_normals_name.
Referenced by import_meshes().
|
static |
Definition at line 296 of file fbx_import_mesh.cc.
References BKE_defvert_ensure_index(), get_skin_bone_name_set(), i, blender::VectorSet< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::index_of_try(), blender::VectorSet< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::is_empty(), is_skin_deformer_usable(), Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_default(), blender::io::fbx::FbxElementMapping::node_to_name, blender::MutableSpan< T >::size(), and MDeformWeight::weight.
Referenced by import_meshes().
|
static |
Definition at line 185 of file fbx_import_mesh.cc.
References BKE_attribute_calc_unique_name(), BLI_assert, blender::bke::Corner, blender::bke::SpanAttributeWriter< T >::finish(), i, blender::bke::MutableAttributeAccessor::lookup_or_add_for_write_only_span(), and blender::bke::SpanAttributeWriter< T >::span.
Referenced by import_meshes().
|
static |
Definition at line 47 of file fbx_import_mesh.cc.
References BLI_assert, i, and blender::MutableSpan< T >::size().
Referenced by import_meshes().
| void blender::io::fbx::importer_main | ( | Main * | bmain, |
| Scene * | scene, | ||
| ViewLayer * | view_layer, | ||
| const FBXImportParams & | params ) |
Definition at line 332 of file fbx_import.cc.
References b, BKE_layer_collection_get_active(), BKE_reportf(), BLI_fopen(), CLOG_ERROR, blender::io::fbx::FbxImportContext::fbx, fbx_task_run_fn(), fbx_task_wait_fn(), blender::io::fbx::FbxImportContext::import_globals(), LOG, params, and RPT_ERROR.
Referenced by FBX_import().
|
static |
Definition at line 41 of file fbx_import_mesh.cc.
Referenced by get_skin_bone_name_set(), and import_skin_vertex_groups().
|
static |
Definition at line 56 of file fbx_import_material.cc.
References BLI_assert, blender::bke::node_add_link(), blender::bke::node_find_socket(), SOCK_IN, and SOCK_OUT.
Referenced by add_image_texture(), and import_material().
|
static |
Definition at line 213 of file fbx_import_material.cc.
References BKE_image_free_buffers, BKE_image_has_packedfile(), BKE_image_load_exists(), BKE_image_packfiles_from_mem(), BLI_path_join, BLI_path_normalize(), BLI_path_parent_dir_end(), create_placeholder_image(), FILE_MAX, IMA_SRC_FILE, IMA_TYPE_IMAGE, MEM_malloc_arrayN(), pos, Image::source, and Image::type.
Referenced by add_image_texture().
| void blender::io::fbx::matrix_to_m44 | ( | const ufbx_matrix & | src, |
| float | dst[4][4] ) |
Definition at line 27 of file fbx_import_util.cc.
Referenced by blender::io::fbx::ArmatureImportContext::create_armature_bones(), blender::io::fbx::ArmatureImportContext::find_armatures(), and ufbx_matrix_to_obj().
|
static |
Definition at line 263 of file fbx_import_armature.cc.
Referenced by blender::io::fbx::ArmatureImportContext::find_armatures().
| void blender::io::fbx::node_matrix_to_obj | ( | const ufbx_node * | node, |
| Object * | obj, | ||
| const FbxElementMapping & | mapping ) |
Definition at line 81 of file fbx_import_util.cc.
References blender::io::fbx::FbxElementMapping::bone_to_armature, blender::io::fbx::FbxElementMapping::bone_to_length, Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), Object::id, Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_default(), ID::name, blender::io::fbx::FbxElementMapping::node_is_blender_bone, blender::io::fbx::FbxElementMapping::node_to_name, PARBONE, STRNCPY_UTF8, and ufbx_matrix_to_obj().
Referenced by blender::io::fbx::ArmatureImportContext::create_armature_for_node(), blender::io::fbx::FbxImportContext::import_cameras(), blender::io::fbx::FbxImportContext::import_empties(), and blender::io::fbx::FbxImportContext::import_lights().
|
static |
Definition at line 265 of file fbx_import_util.cc.
References blender::bke::idprop::create_group(), and bPoseChannel::prop.
Referenced by read_custom_properties().
| void blender::io::fbx::read_custom_properties | ( | const ufbx_props & | props, |
| bPoseChannel & | pchan, | ||
| bool | enums_as_strings ) |
Definition at line 273 of file fbx_import_util.cc.
References pchan_EnsureProperties(), and read_ufbx_property().
| void blender::io::fbx::read_custom_properties | ( | const ufbx_props & | props, |
| ID & | id, | ||
| bool | enums_as_strings ) |
Definition at line 254 of file fbx_import_util.cc.
References IDP_EnsureProperties(), and read_ufbx_property().
Referenced by blender::io::fbx::ArmatureImportContext::create_armature_for_node(), blender::io::fbx::ArmatureImportContext::find_armatures(), blender::io::fbx::FbxImportContext::import_cameras(), blender::io::fbx::FbxImportContext::import_empties(), blender::io::fbx::FbxImportContext::import_lights(), and blender::io::fbx::FbxImportContext::import_materials().
|
static |
Definition at line 125 of file fbx_import_util.cc.
References IDPropertyTemplate::array, BLI_strchr_or_end(), IDPropertyTemplate::d, IDProperty::data, IDPropertyTemplate::i, IDP_AddToGroup(), IDP_ARRAY, IDP_BOOLEAN, IDP_DOUBLE, IDP_INT, IDP_New(), IDP_STRING, IDP_STRING_SUB_UTF8, IDPropertyTemplate::len, name, IDPropertyData::pointer, IDPropertyTemplate::str, STREQ, IDPropertyTemplate::string, IDPropertyTemplate::subtype, blender::StringRefBase::trim(), and IDPropertyTemplate::type.
Referenced by read_custom_properties(), and read_custom_properties().
|
static |
Definition at line 114 of file fbx_import_material.cc.
References blender::math::clamp(), max, min, and set_socket_rgb().
Referenced by set_bsdf_socket_values().
|
static |
Definition at line 97 of file fbx_import_material.cc.
References blender::math::clamp(), max, min, and set_socket_float().
Referenced by set_bsdf_socket_values().
|
static |
Definition at line 130 of file fbx_import_material.cc.
References Material::b, ELEM, Material::g, Material::metallic, Material::r, Material::roughness, set_bsdf_color_param(), set_bsdf_float_param(), and Material::spec.
Referenced by import_material().
|
static |
Definition at line 47 of file fbx_import_anim.cc.
References FCurve::bezt, BEZT_IPO_LIN, BLI_assert, BezTriple::f1, BezTriple::f2, BezTriple::f3, BezTriple::h1, BezTriple::h2, HD_AUTO_ANIM, BezTriple::ipo, SELECT, and BezTriple::vec.
Referenced by create_blend_shape_curves(), create_camera_curves(), create_material_curves(), and create_transform_curve_data().
|
static |
Definition at line 68 of file fbx_import_material.cc.
References BLI_assert, blender::bke::node_find_socket(), SOCK_FLOAT, SOCK_IN, bNodeSocket::type, and bNodeSocketValueFloat::value.
Referenced by add_image_texture(), and set_bsdf_float_param().
|
static |
Definition at line 76 of file fbx_import_material.cc.
References BLI_assert, blender::bke::node_find_socket(), SOCK_IN, SOCK_RGBA, bNodeSocket::type, and bNodeSocketValueRGBA::value.
Referenced by set_bsdf_color_param().
|
static |
Definition at line 87 of file fbx_import_material.cc.
References BLI_assert, blender::bke::node_find_socket(), SOCK_IN, SOCK_VECTOR, bNodeSocket::type, and bNodeSocketValueVector::value.
Referenced by add_image_texture().
|
static |
Definition at line 123 of file fbx_import.cc.
References BLI_assert, and STREQ.
Referenced by blender::io::fbx::FbxImportContext::import_cameras().
| void blender::io::fbx::ufbx_matrix_to_obj | ( | const ufbx_matrix & | mtx, |
| Object * | obj ) |
Definition at line 68 of file fbx_import_util.cc.
References BKE_object_apply_mat4(), BKE_object_to_mat4(), and matrix_to_m44().
Referenced by blender::io::fbx::ArmatureImportContext::create_armature_for_node(), and node_matrix_to_obj().
|
static |
Definition at line 268 of file fbx_import_material.cc.
Referenced by add_image_textures().
|
static |
Definition at line 303 of file fbx_import_material.cc.
Referenced by add_image_textures().
|
staticconstexpr |
Definition at line 40 of file fbx_import_material.cc.
Referenced by import_material().
|
staticconstexpr |
Definition at line 38 of file fbx_import_material.cc.
Referenced by add_image_texture().
|
staticconstexpr |
Definition at line 37 of file fbx_import_material.cc.
Referenced by add_image_texture().
|
staticconstexpr |
Definition at line 39 of file fbx_import_material.cc.
Referenced by add_image_texture().
|
staticconstexpr |
Definition at line 41 of file fbx_import_material.cc.
Referenced by import_material().
|
staticconstexpr |
Definition at line 36 of file fbx_import_material.cc.
Referenced by add_image_texture().
|
staticconstexpr |
Definition at line 45 of file fbx_import_material.cc.
Referenced by add_image_textures().
|
staticconstexpr |
Definition at line 44 of file fbx_import_material.cc.
Referenced by add_image_textures(), and import_material().
|
staticconstexpr |
Definition at line 39 of file fbx_import_mesh.cc.
Referenced by import_meshes(), and import_normals_into_temp_attribute().