|
Blender V5.0
|
#include "ANIM_armature_iter.hh"#include "ANIM_bone_collections.hh"#include "DNA_brush_types.h"#include "DNA_camera_types.h"#include "DNA_defaults.h"#include "DNA_genfile.h"#include "DNA_light_types.h"#include "DNA_lightprobe_types.h"#include "DNA_modifier_types.h"#include "DNA_node_types.h"#include "DNA_particle_types.h"#include "DNA_screen_types.h"#include "DNA_sequence_types.h"#include "DNA_world_types.h"#include "BLI_listbase.h"#include "BLI_math_vector.h"#include "BLI_string.h"#include "BLI_string_utf8.h"#include "BLT_translation.hh"#include "BKE_anim_data.hh"#include "BKE_animsys.h"#include "BKE_attribute.hh"#include "BKE_curve.hh"#include "BKE_effect.h"#include "BKE_grease_pencil.hh"#include "BKE_idprop.hh"#include "BKE_main.hh"#include "BKE_mesh_legacy_convert.hh"#include "BKE_node.hh"#include "BKE_node_legacy_types.hh"#include "BKE_node_runtime.hh"#include "BKE_report.hh"#include "BKE_scene.hh"#include "BKE_texture.h"#include "BKE_tracking.h"#include "SEQ_iterator.hh"#include "SEQ_retiming.hh"#include "SEQ_sequencer.hh"#include "SEQ_time.hh"#include "BLO_read_write.hh"#include "readfile.hh"#include "versioning_common.hh"Go to the source code of this file.
Macros | |
| #define | DNA_DEPRECATED_ALLOW |
| #define | DNA_GENFILE_VERSIONING_MACROS |
| #define | SCE_SNAP_PROJECT (1 << 3) |
| #define DNA_DEPRECATED_ALLOW |
Definition at line 9 of file versioning_400.cc.
| #define DNA_GENFILE_VERSIONING_MACROS |
Definition at line 15 of file versioning_400.cc.
| #define SCE_SNAP_PROJECT (1 << 3) |
Referenced by blo_do_versions_400().
CharInfo mat_nr used to start at 1, unlike mesh & nurbs, now zero-based.
Definition at line 1185 of file versioning_400.cc.
References Main::actions, RegionAssetShelf::active_shelf, blender::Vector< T, InlineBufferCapacity, Allocator >::append(), ASSET_LIBRARY_ALL, AssetShelfSettings::asset_library_reference, NodeTexNoise::base, BKE_mesh_legacy_bevel_weight_to_generic(), BKE_scene_disable_color_management(), BKE_texture_colormapping_default(), BKE_texture_mapping_default(), BLI_freelistN(), BLI_listbase_clear(), Main::cameras, NodeTexBase::color_mapping, Main::curves, AssetLibraryReference::custom_library_index, NodeTexNoise::dimensions, ColorManagedDisplaySettings::display_device, DNA_struct_default_get, do_versions_add_region_if_not_found(), ELEM, enable_geometry_nodes_is_modifier(), blender::bke::Face, FileData::filesdna, Camera::fisheye_fov, Camera::fisheye_lens, Camera::fisheye_polynomial_k0, Camera::fisheye_polynomial_k1, Camera::fisheye_polynomial_k2, Camera::fisheye_polynomial_k3, Camera::fisheye_polynomial_k4, bNodeTreeInterfaceSocket::flag, flag, SequencerTimelineOverlay::flag, SpaceNodeOverlay::flag, FOREACH_NODETREE_BEGIN, FOREACH_NODETREE_END, GEO_NODE_SET_SHADE_SMOOTH, Main::grease_pencils, i, IDP_FreeProperty(), bNodeTreeInterfaceItem::item_type, LA_SPOT, Camera::latitude_max, Camera::latitude_min, LIGHT_PROBE_RESOLUTION_1024, LIGHTPROBE_GRID_CAPTURE_EMISSION, LIGHTPROBE_GRID_CAPTURE_INDIRECT, LIGHTPROBE_GRID_CAPTURE_WORLD, Main::lightprobes, Main::lights, LISTBASE_FOREACH, LISTBASE_FOREACH_MUTABLE, Camera::longitude_max, Camera::longitude_min, MAIN_VERSION_FILE_ATLEAST, max_ff(), MAXFRAMEF, MEM_callocN(), MEM_freeN(), MEM_SAFE_FREE, Main::meshes, min_ff(), MINAFRAMEF, NODE_INTERFACE_PANEL_ALLOW_CHILD_PANELS_LEGACY, NODE_INTERFACE_SOCKET, NODE_INTERFACE_SOCKET_INPUT, NODE_INTERFACE_SOCKET_OUTPUT, Main::nodetrees, NTREE_CUSTOM, NTREE_GEOMETRY, NTREE_SHADER, SpaceNode::overlay, Camera::panorama_type, AssetShelf::preferred_row_count, RAYTRACE_EEVEE_METHOD_SCREEN, RGN_ALIGN_BOTTOM, RGN_FLAG_DYNAMIC_SIZE, RGN_FLAG_HIDDEN, RGN_FLAG_NO_USER_RESIZE, RGN_SPLIT_PREV, RGN_TYPE_ASSET_SHELF, RGN_TYPE_ASSET_SHELF_HEADER, RGN_TYPE_TOOL_HEADER, SCE_SNAP, SCE_SNAP_INDIVIDUAL_NEAREST, SCE_SNAP_INDIVIDUAL_PROJECT, SCE_SNAP_PROJECT, SCE_SNAP_TO_EDGE, SCE_SNAP_TO_EDGE_MIDPOINT, SCE_SNAP_TO_EDGE_PERPENDICULAR, SCE_SNAP_TO_FACE, SCE_SNAP_TO_FRAME, SCE_SNAP_TO_GEOM, SCE_SNAP_TO_GRID, SCE_SNAP_TO_INCREMENT, SCE_SNAP_TO_MARKERS, SCE_SNAP_TO_NONE, SCE_SNAP_TO_SECOND, SCE_SNAP_TO_VERTEX, SCE_SNAP_TO_VOLUME, Main::scenes, Main::screens, SEQ_TIMELINE_SHOW_STRIP_RETIMING, AssetShelf::settings, SH_NODE_TEX_NOISE, SceneEEVEE::shadow_ray_count, SceneEEVEE::shadow_step_count, SHD_NOISE_FBM, SN_OVERLAY_SHOW_PREVIEWS, ToolSettings::snap_anim_mode, ToolSettings::snap_flag, ToolSettings::snap_mode, ToolSettings::snap_mode_tools, ToolSettings::snap_node_mode, ToolSettings::snap_uv_mode, SOCK_HIDDEN, SPACE_NODE, SPACE_SEQ, SPACE_VIEW3D, STREQ, NodeTexBase::tex_mapping, TEXMAP_TYPE_POINT, SpaceSeq::timeline_overlay, AssetLibraryReference::type, NodeTexNoise::type, version_cycles_properties_from_ID(), version_cycles_property_float(), version_cycles_property_int(), version_mesh_crease_generic(), version_mesh_legacy_to_struct_of_array_format(), version_movieclips_legacy_camera_object(), version_node_group_split_socket(), version_principled_bsdf_coat(), version_principled_bsdf_emission(), version_principled_bsdf_rename_sockets(), version_principled_bsdf_sheen(), version_principled_bsdf_specular_tint(), version_principled_bsdf_subsurface(), version_principled_transmission_roughness(), version_replace_principled_hair_model(), version_replace_texcoord_normal_socket(), version_replace_velvet_sheen_node(), version_vertex_weight_edit_preserve_threshold_exclusivity(), versioning_convert_node_tree_socket_lists_to_interface(), versioning_node_group_sort_sockets_recursive(), versioning_remove_microfacet_sharp_distribution(), versioning_replace_legacy_glossy_node(), and Main::worlds.
Referenced by do_versions().
Definition at line 313 of file versioning_400.cc.
References BKE_effector_add_weights(), BKE_mesh_legacy_face_map_to_generic(), BLO_reportf_wrap(), BlendFileReadReport::count, blender::seq::editing_get(), FileData::filesdna, FOREACH_NODETREE_BEGIN, FOREACH_NODETREE_END, blender::seq::foreach_strip(), ID_IS_LINKED, LA_AREA, Main::lights, LISTBASE_FOREACH, M_PI_4, MAIN_VERSION_FILE_ATLEAST, BlendFileReadReport::missing_obproxies, NTREE_SHADER, Main::objects, Main::particles, FileData::reports, RPT_, RPT_INFO, Main::scenes, Editing::seqbase, version_bonegroup_migrate_color(), version_bonegroups_to_bonecollections(), version_bonelayers_to_bonecollections(), version_composite_nodetree_null_id(), version_principled_bsdf_update_animdata(), and versioning_convert_strip_speed_factor().
Referenced by do_versions_after_linking().
|
static |
Definition at line 1157 of file versioning_400.cc.
References bNodeTreeInterfaceSocket::flag, GEO_NODE_ASSET_MODIFIER, bNodeTreeInterfaceItem::item_type, LISTBASE_FOREACH, MEM_callocN(), NODE_INTERFACE_SOCKET, NODE_INTERFACE_SOCKET_OUTPUT, Main::nodetrees, NTREE_GEOMETRY, and STREQ.
Referenced by blo_do_versions_400().
|
static |
Definition at line 680 of file versioning_400.cc.
References bNodeSocket::attribute_domain, bNodeTreeInterfaceSocket::attribute_domain, BLI_strdup(), blender::StringRefBase::data(), bNodeSocket::default_attribute_name, bNodeTreeInterfaceSocket::default_attribute_name, bNodeSocket::default_value, bNodeSocket::description, bNodeTreeInterfaceSocket::description, bNodeSocket::flag, bNodeTreeInterfaceSocket::flag, bNodeSocket::identifier, bNodeTreeInterfaceSocket::identifier, bNodeSocket::idname, bNodeTreeInterfaceSocket::item, bNodeTreeInterfaceItem::item_type, legacy_socket_idname_to_socket_type(), MEM_callocN(), bNodeSocket::name, bNodeTreeInterfaceSocket::name, NODE_INTERFACE_SOCKET, NODE_INTERFACE_SOCKET_HIDE_IN_MODIFIER, NODE_INTERFACE_SOCKET_HIDE_VALUE, NODE_INTERFACE_SOCKET_INPUT, NODE_INTERFACE_SOCKET_OUTPUT, bNodeSocket::prop, bNodeTreeInterfaceSocket::properties, bNodeSocket::runtime, SET_FLAG_FROM_TEST, SOCK_HIDE_IN_MODIFIER, SOCK_HIDE_VALUE, SOCK_IN, bNodeTreeInterfaceSocket::socket_data, and bNodeTreeInterfaceSocket::socket_type.
Referenced by versioning_convert_node_tree_socket_lists_to_interface().
|
static |
Definition at line 80 of file versioning_400.cc.
References BKE_pose_ensure(), BLI_assert_msg, BLI_findlink(), bActionGroup::cs, BoneColor::custom, bActionGroup::customCol, GS, bArmature::id, ID_AR, LISTBASE_FOREACH, blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_or_add_default(), ID::name, OB_ARMATURE, Main::objects, BoneColor::palette_index, and blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::values().
Referenced by do_versions_after_linking_400().
|
static |
Definition at line 189 of file versioning_400.cc.
References blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add_new(), bPose::agroups, ANIM_armature_bonecoll_assign(), ANIM_armature_bonecoll_new(), ANIM_bonecoll_hide(), BLI_findlink(), bPose::chanbase, LISTBASE_FOREACH, blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup(), OB_ARMATURE, and Main::objects.
Referenced by do_versions_after_linking_400().
|
static |
Definition at line 128 of file versioning_400.cc.
References ANIM_armature_bonecoll_new(), blender::animrig::ANIM_armature_foreach_bone(), ANIM_bonecoll_hide(), blender::Vector< T, InlineBufferCapacity, Allocator >::append(), Main::armatures, BLI_assert_msg, IDP_GetProperties(), IDP_GetPropertyFromGroup(), IDP_STRING, IDP_string_get, LISTBASE_FOREACH, MAX_NAME, SNPRINTF_UTF8, and IDProperty::type.
Referenced by do_versions_after_linking_400().
Definition at line 67 of file versioning_400.cc.
References CMP_NODE_CRYPTOMATTE, CMP_NODE_CRYPTOMATTE_SOURCE_RENDER, CMP_NODE_R_LAYERS, and Scene::id.
Referenced by do_versions_after_linking_400().
|
static |
Definition at line 887 of file versioning_400.cc.
References BLI_strdup(), BLI_strdup_null(), bNodeTreeInterfaceSocket::default_attribute_name, bNodeTreeInterfaceSocket::description, bNodeTreeInterfaceSocket::identifier, IDP_CopyProperty_ex(), MEM_dupallocN(), bNodeTreeInterfaceSocket::name, bNodeTreeInterfaceSocket::properties, bNodeTreeInterfaceSocket::socket_data, and bNodeTreeInterfaceSocket::socket_type.
Referenced by version_node_group_split_socket().
|
static |
Definition at line 506 of file versioning_400.cc.
References BKE_mesh_legacy_crease_to_generic(), IDProperty::data, eModifierType_Nodes, blender::StringRefBase::endswith(), IDPropertyData::group, IDP_AssignString(), IDP_string_get, LISTBASE_FOREACH, Main::meshes, blender::bke::node_find_socket(), Main::nodetrees, NTREE_GEOMETRY, Main::objects, SOCK_IN, STR_ELEM, STREQ, STRNCPY_UTF8, and bNodeSocketValueString::value.
Referenced by blo_do_versions_400().
|
static |
Definition at line 407 of file versioning_400.cc.
References BKE_mesh_legacy_attribute_flags_to_strings(), BKE_mesh_legacy_bevel_weight_to_layers(), BKE_mesh_legacy_convert_edges_to_generic(), BKE_mesh_legacy_convert_flags_to_hide_layers(), BKE_mesh_legacy_convert_flags_to_selection_layers(), BKE_mesh_legacy_convert_loops_to_corners(), BKE_mesh_legacy_convert_mpoly_to_material_indices(), BKE_mesh_legacy_convert_polys_to_offsets(), BKE_mesh_legacy_convert_uvs_to_generic(), BKE_mesh_legacy_convert_verts_to_positions(), BKE_mesh_legacy_edge_crease_to_layers(), BKE_mesh_legacy_face_set_to_generic(), BKE_mesh_legacy_sharp_edges_from_flags(), BKE_mesh_legacy_sharp_faces_from_flags(), and BKE_mesh_legacy_uv_seam_from_flags().
Referenced by blo_do_versions_400().
|
static |
Definition at line 426 of file versioning_400.cc.
References MovieTracking::act_plane_track_legacy, MovieTracking::act_track_legacy, MovieTrackingObject::active_plane_track, MovieTrackingObject::active_track, BKE_tracking_object_get_active(), BKE_tracking_object_get_camera(), BLI_assert, BLI_listbase_clear(), BLI_listbase_is_empty(), MovieTrackingReconstruction::cameras, MovieTrackingObject::plane_tracks, MovieTracking::plane_tracks_legacy, MovieTrackingObject::reconstruction, MovieTracking::reconstruction_legacy, MovieClip::tracking, MovieTrackingObject::tracks, and MovieTracking::tracks_legacy.
Referenced by version_movieclips_legacy_camera_object().
|
static |
Definition at line 458 of file versioning_400.cc.
References LISTBASE_FOREACH, Main::movieclips, and version_motion_tracking_legacy_camera_object().
Referenced by blo_do_versions_400().
|
static |
Definition at line 972 of file versioning_400.cc.
References BLI_sprintfN(), bNodeTreeInterfaceSocket::flag, MEM_dupallocN(), bNodeTreeInterface::next_uid, NODE_INTERFACE_SOCKET_INPUT, NODE_INTERFACE_SOCKET_OUTPUT, bNodeTreeInterface::root_panel, version_copy_socket(), and version_nodes_insert_item().
Referenced by blo_do_versions_400().
|
static |
Definition at line 906 of file versioning_400.cc.
References bNodeTreeInterfacePanel::flag, bNodeTreeInterfaceItem::item_type, bNodeTreeInterfacePanel::items_array, bNodeTreeInterfacePanel::items_num, NODE_INTERFACE_PANEL, NODE_INTERFACE_PANEL_ALLOW_SOCKETS_AFTER_PANELS, pos, and blender::Span< T >::size().
Referenced by version_nodes_insert_item().
|
static |
Definition at line 950 of file versioning_400.cc.
References blender::MutableSpan< T >::data(), blender::MutableSpan< T >::drop_front(), bNodeTreeInterfaceSocket::item, bNodeTreeInterfacePanel::items_array, bNodeTreeInterfacePanel::items_num, MEM_calloc_arrayN(), MEM_freeN(), blender::MutableSpan< T >::take_front(), and version_nodes_find_valid_insert_position_for_item().
Referenced by version_node_group_split_socket().
|
static |
Definition at line 742 of file versioning_400.cc.
References bNodeSocket::link, LISTBASE_FOREACH, blender::bke::node_add_static_socket(), blender::bke::node_find_socket(), bNodeTree::nodes, PROP_NONE, SH_NODE_BSDF_PRINCIPLED, SOCK_FLOAT, SOCK_IN, version_cycles_node_socket_float_value(), and version_node_input_socket_name().
Referenced by blo_do_versions_400().
|
static |
Definition at line 861 of file versioning_400.cc.
References LISTBASE_FOREACH, blender::bke::node_add_static_socket(), blender::bke::node_find_socket(), bNodeTree::nodes, PROP_NONE, SH_NODE_BSDF_PRINCIPLED, SOCK_FLOAT, SOCK_IN, and version_cycles_node_socket_float_value().
Referenced by blo_do_versions_400().
|
static |
Definition at line 1145 of file versioning_400.cc.
References SH_NODE_BSDF_PRINCIPLED, and version_node_input_socket_name().
Referenced by blo_do_versions_400().
|
static |
Definition at line 632 of file versioning_400.cc.
References copy_v4_v4(), input, blender::bke::node_find_socket(), blender::bke::node_modify_socket_type_static(), SH_NODE_BSDF_PRINCIPLED, sheen(), SOCK_IN, SOCK_RGBA, version_cycles_node_socket_float_value(), version_cycles_node_socket_rgba_value(), and version_update_node_input().
Referenced by blo_do_versions_400().
|
static |
Definition at line 1032 of file versioning_400.cc.
References copy_v4_v4(), bNodeLink::fromnode, bNodeLink::fromsock, interp_v4_v4v4(), bNodeSocket::link, LISTBASE_FOREACH, mix, blender::bke::node_add_link(), blender::bke::node_add_static_node(), blender::bke::node_find_socket(), blender::bke::node_modify_socket_type_static(), blender::bke::node_remove_link(), bNodeTree::nodes, SH_NODE_BSDF_PRINCIPLED, SH_NODE_MIX, SOCK_IN, SOCK_OUT, SOCK_RGBA, bNodeSocket::type, version_cycles_node_socket_float_value(), and version_cycles_node_socket_rgba_value().
Referenced by blo_do_versions_400().
|
static |
Definition at line 771 of file versioning_400.cc.
References copy_v4_v4(), bNodeLink::fromnode, bNodeLink::fromsock, interp_v4_v4v4(), bNodeSocket::link, LISTBASE_FOREACH, mix, blender::bke::node_add_link(), blender::bke::node_add_static_node(), blender::bke::node_add_static_socket(), blender::bke::node_find_socket(), blender::bke::node_remove_link(), blender::bke::node_remove_socket(), bNodeTree::nodes, PROP_DISTANCE, SH_NODE_BSDF_PRINCIPLED, SH_NODE_MIX, SOCK_FLOAT, SOCK_IN, SOCK_OUT, SOCK_RGBA, version_cycles_node_socket_float_value(), and version_cycles_node_socket_rgba_value().
Referenced by blo_do_versions_400().
Definition at line 234 of file versioning_400.cc.
References BKE_animdata_fix_paths_remove(), BKE_animdata_fix_paths_rename(), BKE_animdata_from_id(), BLI_str_escape(), bNodeTree::id, LISTBASE_FOREACH, MAX_NAME, bNodeTree::nodes, and SH_NODE_BSDF_PRINCIPLED.
Referenced by do_versions_after_linking_400().
|
static |
Definition at line 601 of file versioning_400.cc.
References LISTBASE_FOREACH, blender::bke::node_find_socket(), blender::bke::node_remove_socket(), bNodeTree::nodes, SH_NODE_BSDF_PRINCIPLED, and SOCK_IN.
Referenced by blo_do_versions_400().
|
static |
Definition at line 666 of file versioning_400.cc.
References data, LISTBASE_FOREACH, MEM_callocN(), bNodeTree::nodes, SH_NODE_BSDF_HAIR_PRINCIPLED, and SHD_PRINCIPLED_HAIR_CHIANG.
Referenced by blo_do_versions_400().
|
static |
Definition at line 547 of file versioning_400.cc.
References bNodeTree::links, LISTBASE_FOREACH_MUTABLE, blender::bke::node_add_link(), blender::bke::node_add_static_node(), blender::bke::node_find_socket(), blender::bke::node_remove_link(), SH_NODE_NEW_GEOMETRY, SH_NODE_TEX_COORD, SH_NODE_VECT_TRANSFORM, SHD_VECT_TRANSFORM_TYPE_NORMAL, SOCK_IN, SOCK_OUT, bNode::storage, STREQ, and NodeShaderVectTransform::type.
Referenced by blo_do_versions_400().
|
static |
Definition at line 615 of file versioning_400.cc.
References bNodeSocket::identifier, LISTBASE_FOREACH, bNodeSocket::name, blender::bke::node_find_socket(), bNodeTree::nodes, SH_NODE_BSDF_SHEEN, SHD_SHEEN_ASHIKHMIN, SOCK_IN, and STRNCPY_UTF8.
Referenced by blo_do_versions_400().
|
static |
Definition at line 584 of file versioning_400.cc.
References WeightVGEditModifierData::add_threshold, eModifierType_WeightVGEdit, LISTBASE_FOREACH, OB_MESH, Main::objects, and WeightVGEditModifierData::rem_threshold.
Referenced by blo_do_versions_400().
|
static |
Definition at line 719 of file versioning_400.cc.
References BLI_listbase_count(), bNodeTreeInterfacePanel::items_array, bNodeTreeInterfacePanel::items_num, legacy_socket_move_to_interface(), LISTBASE_FOREACH_INDEX, MEM_malloc_arrayN(), bNodeTreeInterface::root_panel, SOCK_IN, SOCK_OUT, and bNodeTree::tree_interface.
Referenced by blo_do_versions_400().
|
static |
Definition at line 288 of file versioning_400.cc.
References Strip::endofs, Strip::len, blender::seq::retiming_data_ensure(), blender::seq::retiming_is_allowed(), blender::seq::retiming_keys_count(), blender::seq::retiming_keys_get(), Strip::speed_factor, Strip::startofs, SeqRetimingKey::strip_frame_index, STRIP_TYPE_SOUND_RAM, blender::seq::time_left_handle_frame_get(), blender::seq::time_right_handle_frame_set(), and Strip::type.
Referenced by do_versions_after_linking_400().
|
static |
Definition at line 996 of file versioning_400.cc.
References b, bNodeTreeInterfaceSocket::flag, bNodeTreeInterfaceItem::item_type, NODE_INTERFACE_PANEL, NODE_INTERFACE_SOCKET, NODE_INTERFACE_SOCKET_OUTPUT, and versioning_node_group_sort_sockets_recursive().
Referenced by blo_do_versions_400(), and versioning_node_group_sort_sockets_recursive().
|
static |
Definition at line 475 of file versioning_400.cc.
References ELEM, LISTBASE_FOREACH, blender::bke::node_remove_link(), bNodeTree::nodes, SH_NODE_BSDF_GLASS, SH_NODE_BSDF_GLOSSY, SH_NODE_BSDF_REFRACTION, SHD_GLOSSY_GGX, SHD_GLOSSY_SHARP_DEPRECATED, STREQ, and bNodeSocketValueFloat::value.
Referenced by blo_do_versions_400().
|
static |
Definition at line 465 of file versioning_400.cc.
References LISTBASE_FOREACH, bNodeTree::nodes, SH_NODE_BSDF_GLOSSY, SH_NODE_BSDF_GLOSSY_LEGACY, and STRNCPY_UTF8.
Referenced by blo_do_versions_400().