|
Blender V4.5
|
#include "ANIM_armature_iter.hh"#include "DNA_anim_types.h"#include "DNA_brush_types.h"#include "DNA_defaults.h"#include "DNA_genfile.h"#include "DNA_lightprobe_types.h"#include "DNA_material_types.h"#include "DNA_mesh_types.h"#include "DNA_modifier_types.h"#include "DNA_scene_types.h"#include "DNA_screen_types.h"#include "DNA_sequence_types.h"#include "BLI_listbase.h"#include "BLI_math_vector.h"#include "BLI_multi_value_map.hh"#include "BLI_string.h"#include "BLI_task.hh"#include "BKE_anim_data.hh"#include "BKE_armature.hh"#include "BKE_grease_pencil.hh"#include "BKE_main.hh"#include "BKE_nla.hh"#include "BKE_node.hh"#include "BKE_node_legacy_types.hh"#include "BKE_node_runtime.hh"#include "SEQ_iterator.hh"#include "SEQ_sequencer.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 DNA_DEPRECATED_ALLOW |
Definition at line 9 of file versioning_410.cc.
| #define DNA_GENFILE_VERSIONING_MACROS |
Definition at line 14 of file versioning_410.cc.
NOTE: This versioning code didn't update the subversion number.
Definition at line 850 of file versioning_410.cc.
References all_scenes_use(), Main::armatures, Sculpt::automasking_boundary_edges_propagation_steps, Brush::automasking_start_normal_falloff, Brush::automasking_start_normal_limit, Brush::automasking_view_normal_falloff, Brush::automasking_view_normal_limit, blo_do_versions_410(), BRUSH_DIR_IN, Main::brushes, CMP_NODE_KEYING, CMP_NODE_MAP_UV, CMP_NODE_MAP_UV_FILTERING_ANISOTROPIC, CMP_NODE_PIXELATE, ToolSettings::curves_sculpt, LightProbe::data_display_size, DNA_struct_default_get, FileData::filesdna, fix_geometry_nodes_object_info_scale(), FN_NODE_ROTATE_ROTATION, blender::seq::for_each_callback(), FOREACH_NODETREE_BEGIN, FOREACH_NODETREE_END, ToolSettings::gp_paint, ToolSettings::gp_sculptpaint, ToolSettings::gp_vertexpaint, ToolSettings::gp_weightpaint, Main::grease_pencils, SceneEEVEE::gtao_focus, SceneEEVEE::gtao_thickness, i, ToolSettings::imapaint, UnifiedPaintSettings::input_samples, Main::lightprobes, LISTBASE_FOREACH, MA_BL_TRANSPARENT_SHADOW, MA_BM_BLEND, MA_BS_SOLID, MA_DISPLACEMENT_BUMP, MA_SURFACE_METHOD_DEFERRED, MA_SURFACE_METHOD_FORWARD, MAIN_VERSION_FILE_ATLEAST, Main::materials, max_ii(), ME_NO_OVERLAPPING_TOPOLOGY, Main::meshes, Main::nodetrees, NTREE_COMPOSIT, NTREE_CUSTOM, NTREE_GEOMETRY, Paint::num_input_samples_deprecated, Main::objects, CurvesSculpt::paint, GpPaint::paint, GpSculptPaint::paint, GpVertexPaint::paint, GpWeightPaint::paint, ImagePaintSettings::paint, Sculpt::paint, VPaint::paint, RAYTRACE_EEVEE_DENOISE_BILATERAL, RAYTRACE_EEVEE_DENOISE_SPATIAL, RAYTRACE_EEVEE_DENOISE_TEMPORAL, RAYTRACE_EEVEE_USE_DENOISE, RE_engine_id_BLENDER_EEVEE, RE_engine_id_BLENDER_EEVEE_NEXT, RGN_ALIGN_HIDE_WITH_PREV, RGN_SPLIT_PREV, RGN_TYPE_ASSET_SHELF_HEADER, Main::scenes, Main::screens, ToolSettings::sculpt, SET_FLAG_FROM_TEST, strip_filter_bilinear_to_auto(), ToolSettings::unified_paint_settings, version_cycles_properties_from_ID(), version_cycles_property_boolean(), version_cycles_property_int(), version_geometry_nodes_use_rotation_socket(), version_node_socket_name(), versioning_fix_socket_subtype_idnames(), versioning_grease_pencil_stroke_radii_scaling(), versioning_nodes_dynamic_sockets(), versioning_nodes_dynamic_sockets_2(), versioning_replace_musgrave_texture_node(), versioning_replace_splitviewer(), versioning_update_noise_texture_node(), SceneEEVEE::volumetric_ray_depth, ToolSettings::vpaint, and ToolSettings::wpaint.
Referenced by blo_bhead_prev(), blo_do_versions_410(), and do_versions().
|
static |
Definition at line 686 of file versioning_410.cc.
References change_input_socket_to_rotation_type(), copy_v3_v3(), bNodeSocket::default_value, ELEM, bNodeSocket::idname, bNodeTree::links, LISTBASE_FOREACH_MUTABLE, bNode::locx_legacy, bNode::locy_legacy, MEM_callocN(), MEM_freeN(), blender::bke::node_add_link(), blender::bke::node_add_node(), blender::bke::node_find_socket(), bNode::parent, SOCK_FLOAT, SOCK_IN, SOCK_OUT, SOCK_ROTATION, SOCK_VECTOR, STREQ, STRNCPY(), and bNodeSocket::type.
Referenced by change_input_socket_to_rotation_type(), and version_geometry_nodes_use_rotation_socket().
|
static |
Definition at line 729 of file versioning_410.cc.
References change_output_socket_to_rotation_type(), ELEM, bNodeTree::links, LISTBASE_FOREACH_MUTABLE, bNode::locx_legacy, bNode::locy_legacy, blender::bke::node_add_link(), blender::bke::node_add_node(), blender::bke::node_find_socket(), bNode::parent, SOCK_IN, SOCK_OUT, SOCK_ROTATION, SOCK_VECTOR, and STREQ.
Referenced by change_output_socket_to_rotation_type(), and version_geometry_nodes_use_rotation_socket().
Definition at line 97 of file versioning_410.cc.
References do_versions_after_linking_410(), MAIN_VERSION_FILE_ATLEAST, and version_nla_tweakmode_incomplete().
Referenced by blo_bhead_prev(), do_versions_after_linking(), and do_versions_after_linking_410().
|
static |
Definition at line 783 of file versioning_410.cc.
References MultiValueMap< Key, Value >::add(), bNode::custom1, ListBase::first, fix_geometry_nodes_object_info_scale(), GEO_NODE_OBJECT_INFO, bNode::inputs, Span< T >::is_empty(), bNodeTree::links, LISTBASE_FOREACH, LISTBASE_FOREACH_MUTABLE, bNode::locx_legacy, bNode::locy_legacy, MultiValueMap< Key, Value >::lookup(), blender::bke::node_add_link(), blender::bke::node_add_node(), blender::bke::node_find_socket(), NODE_VECTOR_MATH_ABSOLUTE, bNodeTree::nodes, bNode::outputs, bNode::parent, and SOCK_OUT.
Referenced by blo_do_versions_410(), and fix_geometry_nodes_object_info_scale().
|
static |
Definition at line 841 of file versioning_410.cc.
References Strip::data, SEQ_TRANSFORM_FILTER_AUTO, SEQ_TRANSFORM_FILTER_BILINEAR, strip_filter_bilinear_to_auto(), StripData::transform, and transform().
Referenced by blo_do_versions_410(), and strip_filter_bilinear_to_auto().
|
static |
Definition at line 761 of file versioning_410.cc.
References change_input_socket_to_rotation_type(), change_output_socket_to_rotation_type(), LISTBASE_FOREACH_MUTABLE, blender::bke::node_find_socket(), bNodeTree::nodes, SOCK_IN, SOCK_OUT, STR_ELEM, and version_geometry_nodes_use_rotation_socket().
Referenced by blo_do_versions_410(), and version_geometry_nodes_use_rotation_socket().
|
static |
Exit NLA tweakmode when the AnimData struct has insufficient information.
When NLA tweakmode is enabled, Blender expects certain pointers to be set up correctly, and if that fails, can crash. This function ensures that everything is consistent, by exiting tweakmode everywhere there's missing pointers.
This shouldn't happen, but the example blend file attached to #119615 needs this.
Definition at line 63 of file versioning_410.cc.
References AnimData::act_track, AnimData::actstrip, ADT_NLA_EDIT_ON, BKE_animdata_from_id(), BKE_nla_tweakmode_exit(), AnimData::flag, FOREACH_MAIN_ID_BEGIN, FOREACH_MAIN_ID_END, LISTBASE_FOREACH, SCE_NLA_EDIT_ON, Main::scenes, and version_nla_tweakmode_incomplete().
Referenced by do_versions_after_linking_410(), and version_nla_tweakmode_incomplete().
|
static |
Definition at line 620 of file versioning_410.cc.
References BLI_strncat(), LISTBASE_FOREACH, and version_socket_identifier_suffixes_for_dynamic_types().
Referenced by version_socket_identifier_suffixes_for_dynamic_types(), versioning_nodes_dynamic_sockets(), and versioning_nodes_dynamic_sockets_2().
|
static |
Original node tree interface conversion in did not convert socket idnames with subtype suffixes to correct socket base types (see #versioning_convert_node_tree_socket_lists_to_interface).
Definition at line 823 of file versioning_410.cc.
References BLI_strdup(), blender::StringRefBase::data(), bNodeTreeInterfaceItem::item_type, legacy_socket_idname_to_socket_type(), MEM_freeN(), NODE_INTERFACE_SOCKET, bNodeTreeInterfaceSocket::socket_type, bNodeTree::tree_interface, and versioning_fix_socket_subtype_idnames().
Referenced by blo_do_versions_410(), and versioning_fix_socket_subtype_idnames().
|
static |
Definition at line 104 of file versioning_410.cc.
References GP_DRAWING, MutableSpan< T >::index_range(), blender::threading::parallel_for(), blender::bke::greasepencil::Drawing::radii_for_write(), versioning_grease_pencil_stroke_radii_scaling(), and wrap().
Referenced by blo_do_versions_410(), and versioning_grease_pencil_stroke_radii_scaling().
|
static |
Definition at line 646 of file versioning_410.cc.
References GEO_NODE_ACCUMULATE_FIELD, GEO_NODE_ATTRIBUTE_STATISTIC, GEO_NODE_BLUR_ATTRIBUTE, GEO_NODE_CAPTURE_ATTRIBUTE, GEO_NODE_EVALUATE_AT_INDEX, GEO_NODE_EVALUATE_ON_DOMAIN, GEO_NODE_INPUT_NAMED_ATTRIBUTE, GEO_NODE_RAYCAST, GEO_NODE_SAMPLE_INDEX, GEO_NODE_SAMPLE_NEAREST_SURFACE, GEO_NODE_SAMPLE_UV_SURFACE, GEO_NODE_STORE_NAMED_ATTRIBUTE, GEO_NODE_VIEWER, LISTBASE_FOREACH, bNodeTree::nodes, version_socket_identifier_suffixes_for_dynamic_types(), and versioning_nodes_dynamic_sockets().
Referenced by blo_do_versions_410(), and versioning_nodes_dynamic_sockets().
|
static |
Definition at line 675 of file versioning_410.cc.
References ELEM, GEO_NODE_SAMPLE_CURVE, GEO_NODE_SWITCH, LISTBASE_FOREACH, bNodeTree::nodes, version_socket_identifier_suffixes_for_dynamic_types(), and versioning_nodes_dynamic_sockets_2().
Referenced by blo_do_versions_410(), and versioning_nodes_dynamic_sockets_2().
|
static |
Definition at line 184 of file versioning_410.cc.
References BLI_findlink(), bNode::custom1, bNode::custom2, data, ELEM, bNode::flag, bNode::inputs, bNodeSocket::label, bNodeTree::links, LISTBASE_FOREACH, LISTBASE_FOREACH_BACKWARD_MUTABLE, bNode::locx_legacy, bNode::locy_legacy, MEM_callocN(), MEM_freeN(), blender::bke::node_add_link(), blender::bke::node_add_static_node(), NODE_CLAMP_MINMAX, blender::bke::node_find_socket(), NODE_HIDDEN, NODE_MATH_ADD, NODE_MATH_GREATER_THAN, NODE_MATH_MAXIMUM, NODE_MATH_MINIMUM, NODE_MATH_MULTIPLY, NODE_MATH_POWER, NODE_MATH_SUBTRACT, blender::bke::node_remove_link(), bNodeTree::nodes, bNode::parent, SH_NODE_CLAMP, SH_NODE_MATH, SH_NODE_TEX_MUSGRAVE_DEPRECATED, SH_NODE_TEX_NOISE, SHD_MATH_CLAMP, SHD_NOISE_HETERO_TERRAIN, SHD_NOISE_MULTIFRACTAL, SHD_NOISE_RIDGED_MULTIFRACTAL, SOCK_IN, SOCK_OUT, STREQ, STRNCPY(), version_cycles_node_socket_float_value(), version_node_input_socket_name(), version_socket_update_is_used(), and versioning_replace_musgrave_texture_node().
Referenced by blo_do_versions_410(), and versioning_replace_musgrave_texture_node().
|
static |
Definition at line 591 of file versioning_410.cc.
References CMP_NODE_SPLIT, CMP_NODE_SPLITVIEWER__DEPRECATED, CMP_NODE_VIEWER, bNode::flag, LISTBASE_FOREACH_MUTABLE, bNode::locx_legacy, bNode::locy_legacy, MEM_freeN(), blender::bke::node_add_link(), blender::bke::node_add_static_node(), blender::bke::node_add_static_socket(), blender::bke::node_find_socket(), NODE_PREVIEW, bNodeTree::nodes, PROP_NONE, SOCK_IMAGE, SOCK_IN, SOCK_OUT, STRNCPY(), versioning_replace_splitviewer(), and bNode::width.
Referenced by blo_do_versions_410(), and versioning_replace_splitviewer().
|
static |
Definition at line 121 of file versioning_410.cc.
References bNode::custom1, bNode::flag, bNodeTree::links, LISTBASE_FOREACH, bNode::locx_legacy, bNode::locy_legacy, blender::bke::node_add_link(), blender::bke::node_add_static_node(), NODE_CLAMP_MINMAX, blender::bke::node_find_socket(), NODE_HIDDEN, blender::bke::node_remove_link(), bNodeTree::nodes, bNode::parent, SH_NODE_CLAMP, SH_NODE_TEX_NOISE, SHD_NOISE_FBM, SOCK_IN, SOCK_OUT, version_cycles_node_socket_float_value(), version_socket_update_is_used(), and versioning_update_noise_texture_node().
Referenced by blo_do_versions_410(), and versioning_update_noise_texture_node().