Blender V5.0
versioning_400.cc File Reference
#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)

Functions

static void version_composite_nodetree_null_id (bNodeTree *ntree, Scene *scene)
static void version_bonegroup_migrate_color (Main *bmain)
static void version_bonelayers_to_bonecollections (Main *bmain)
static void version_bonegroups_to_bonecollections (Main *bmain)
static void version_principled_bsdf_update_animdata (ID *owner_id, bNodeTree *ntree)
static bool versioning_convert_strip_speed_factor (Strip *strip, void *user_data)
void do_versions_after_linking_400 (FileData *fd, Main *bmain)
static void version_mesh_legacy_to_struct_of_array_format (Mesh &mesh)
static void version_motion_tracking_legacy_camera_object (MovieClip &movieclip)
static void version_movieclips_legacy_camera_object (Main *bmain)
static void versioning_replace_legacy_glossy_node (bNodeTree *ntree)
static void versioning_remove_microfacet_sharp_distribution (bNodeTree *ntree)
static void version_mesh_crease_generic (Main &bmain)
static void version_replace_texcoord_normal_socket (bNodeTree *ntree)
static void version_vertex_weight_edit_preserve_threshold_exclusivity (Main *bmain)
static void version_principled_transmission_roughness (bNodeTree *ntree)
static void version_replace_velvet_sheen_node (bNodeTree *ntree)
static void version_principled_bsdf_sheen (bNodeTree *ntree)
static void version_replace_principled_hair_model (bNodeTree *ntree)
static bNodeTreeInterfaceItemlegacy_socket_move_to_interface (bNodeSocket &legacy_socket, const eNodeSocketInOut in_out)
static void versioning_convert_node_tree_socket_lists_to_interface (bNodeTree *ntree)
static void version_principled_bsdf_coat (bNodeTree *ntree)
static void version_principled_bsdf_subsurface (bNodeTree *ntree)
static void version_principled_bsdf_emission (bNodeTree *ntree)
static void version_copy_socket (bNodeTreeInterfaceSocket &dst, const bNodeTreeInterfaceSocket &src, char *identifier)
static int version_nodes_find_valid_insert_position_for_item (const bNodeTreeInterfacePanel &panel, const bNodeTreeInterfaceItem &item, const int initial_pos)
static void version_nodes_insert_item (bNodeTreeInterfacePanel &parent, bNodeTreeInterfaceSocket &socket, int position)
static void version_node_group_split_socket (bNodeTreeInterface &tree_interface, bNodeTreeInterfaceSocket &socket, bNodeTreeInterfacePanel *parent, int position)
static void versioning_node_group_sort_sockets_recursive (bNodeTreeInterfacePanel &panel)
static void version_principled_bsdf_specular_tint (bNodeTree *ntree)
static void version_principled_bsdf_rename_sockets (bNodeTree *ntree)
static void enable_geometry_nodes_is_modifier (Main &bmain)
void blo_do_versions_400 (FileData *fd, Library *, Main *bmain)

Macro Definition Documentation

◆ DNA_DEPRECATED_ALLOW

#define DNA_DEPRECATED_ALLOW

Definition at line 9 of file versioning_400.cc.

◆ DNA_GENFILE_VERSIONING_MACROS

#define DNA_GENFILE_VERSIONING_MACROS

Definition at line 15 of file versioning_400.cc.

◆ SCE_SNAP_PROJECT

#define SCE_SNAP_PROJECT   (1 << 3)

Referenced by blo_do_versions_400().

Function Documentation

◆ blo_do_versions_400()

void blo_do_versions_400 ( FileData * fd,
Library * lib,
Main * bmain )

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().

◆ do_versions_after_linking_400()

◆ enable_geometry_nodes_is_modifier()

◆ legacy_socket_move_to_interface()

◆ version_bonegroup_migrate_color()

◆ version_bonegroups_to_bonecollections()

◆ version_bonelayers_to_bonecollections()

◆ version_composite_nodetree_null_id()

void version_composite_nodetree_null_id ( bNodeTree * ntree,
Scene * scene )
static

◆ version_copy_socket()

◆ version_mesh_crease_generic()

◆ version_mesh_legacy_to_struct_of_array_format()

◆ version_motion_tracking_legacy_camera_object()

◆ version_movieclips_legacy_camera_object()

void version_movieclips_legacy_camera_object ( Main * bmain)
static

◆ version_node_group_split_socket()

◆ version_nodes_find_valid_insert_position_for_item()

◆ version_nodes_insert_item()

◆ version_principled_bsdf_coat()

◆ version_principled_bsdf_emission()

◆ version_principled_bsdf_rename_sockets()

void version_principled_bsdf_rename_sockets ( bNodeTree * ntree)
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().

◆ version_principled_bsdf_sheen()

◆ version_principled_bsdf_specular_tint()

◆ version_principled_bsdf_subsurface()

◆ version_principled_bsdf_update_animdata()

void version_principled_bsdf_update_animdata ( ID * owner_id,
bNodeTree * ntree )
static

◆ version_principled_transmission_roughness()

void version_principled_transmission_roughness ( bNodeTree * ntree)
static

◆ version_replace_principled_hair_model()

void version_replace_principled_hair_model ( bNodeTree * ntree)
static

◆ version_replace_texcoord_normal_socket()

◆ version_replace_velvet_sheen_node()

◆ version_vertex_weight_edit_preserve_threshold_exclusivity()

void version_vertex_weight_edit_preserve_threshold_exclusivity ( Main * bmain)
static

◆ versioning_convert_node_tree_socket_lists_to_interface()

◆ versioning_convert_strip_speed_factor()

◆ versioning_node_group_sort_sockets_recursive()

◆ versioning_remove_microfacet_sharp_distribution()

◆ versioning_replace_legacy_glossy_node()

void versioning_replace_legacy_glossy_node ( bNodeTree * ntree)
static