|
Blender V5.0
|
#include "DNA_anim_types.h"#include "DNA_brush_types.h"#include "DNA_constraint_types.h"#include "DNA_defaults.h"#include "DNA_genfile.h"#include "DNA_light_types.h"#include "DNA_lightprobe_types.h"#include "DNA_material_types.h"#include "DNA_sequence_types.h"#include "DNA_windowmanager_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 "BKE_anim_data.hh"#include "BKE_colortools.hh"#include "BKE_customdata.hh"#include "BKE_grease_pencil.hh"#include "BKE_main.hh"#include "BKE_material.hh"#include "BKE_node.hh"#include "BKE_node_legacy_types.hh"#include "BKE_report.hh"#include "MOV_enums.hh"#include "SEQ_iterator.hh"#include "SEQ_sequencer.hh"#include "BLT_translation.hh"#include "BLO_read_write.hh"#include "readfile.hh"#include "versioning_common.hh"Go to the source code of this file.
Classes | |
| struct | AlphaSource |
Macros | |
| #define | DNA_DEPRECATED_ALLOW |
| #define | DNA_GENFILE_VERSIONING_MACROS |
| #define DNA_DEPRECATED_ALLOW |
Definition at line 9 of file versioning_420.cc.
| #define DNA_GENFILE_VERSIONING_MACROS |
Definition at line 12 of file versioning_420.cc.
|
static |
Definition at line 641 of file versioning_420.cc.
References do_versions_add_region_if_not_found(), LISTBASE_FOREACH, MEM_callocN(), RGN_ALIGN_BOTTOM, RGN_ALIGN_HIDE_WITH_PREV, RGN_FLAG_HIDDEN, RGN_TYPE_ASSET_SHELF, RGN_TYPE_ASSET_SHELF_HEADER, RGN_TYPE_TOOL_HEADER, Main::screens, and SPACE_IMAGE.
Referenced by blo_do_versions_420().
Definition at line 770 of file versioning_420.cc.
References add_image_editor_asset_shelf(), all_scenes_use(), BLI_assert, BLI_findlink(), BLI_strdup(), BLO_reportf_wrap(), BRUSH_CURVES_SCULPT_FLAG_INTERPOLATE_RADIUS, BRUSH_LOCK_SIZE, Main::brushes, SpaceSeq::cache_overlay, NodeGeometryAttributeCapture::capture_items, NodeGeometryAttributeCapture::capture_items_num, ceil, CMP_NODE_BLUR, CMP_NODE_CURVE_RGB, CMP_NODE_DENOISE, CMP_NODE_DENOISE_PREFILTER_ACCURATE, CONSTRAINT_TYPE_ROTLIMIT, convert_grease_pencil_stroke_hardness_to_softness(), copy_v3_fl(), CurveMapping::cur, CURVE_TONE_FILMLIKE, NodeGeometryAttributeCaptureItem::data_type, NodeGeometryAttributeCapture::data_type_legacy, DEG2RADF, DNA_struct_default_get, Scene::eevee, ELEM, SceneEEVEE::fast_gi_ray_count, SceneEEVEE::fast_gi_step_count, SceneEEVEE::fast_gi_thickness_far, SceneEEVEE::fast_gi_thickness_near, FileData::filesdna, flag, SequencerCacheOverlay::flag, SpaceNodeOverlay::flag, View3D::flag2, FN_NODE_COMBINE_TRANSFORM, FN_NODE_SEPARATE_TRANSFORM, FOREACH_NODETREE_BEGIN, FOREACH_NODETREE_END, blender::seq::foreach_strip(), GEO_NODE_CAPTURE_ATTRIBUTE, Main::grease_pencils, NodeGeometryAttributeCaptureItem::identifier, image_settings_avi_to_ffmpeg(), bNode::inputs, LA_LOCAL, LA_SHAD_RES_ABSOLUTE, LA_SHADOW, LA_SPOT, LA_SUN, LA_USE_SOFT_FALLOFF, blender::bke::greasepencil::LEGACY_RADIUS_CONVERSION_FACTOR, Main::lightprobes, Main::lights, LIMIT_ROT_LEGACY_BEHAVIOR, LISTBASE_FOREACH, M_SQRT2, MA_BL_SS_REFRACTION, MA_BL_THICKNESS_FROM_SHADOW, MA_BL_TRANSLUCENCY, MA_BL_TRANSPARENT_SHADOW, MA_BM_BLEND, MA_BS_SOLID, MA_SURFACE_METHOD_DEFERRED, MA_SURFACE_METHOD_FORWARD, MA_THICKNESS_SLAB, MAIN_VERSION_FILE_ATLEAST, Main::materials, max_ii(), max_iii(), MEM_calloc_arrayN(), MEM_callocN(), Light::mode, Main::movieclips, NodeGeometryAttributeCaptureItem::name, NodeGeometryAttributeCapture::next_identifier, Main::nodetrees, NTREE_COMPOSIT, NTREE_GEOMETRY, NTREE_UNUSED_2, Main::objects, SpaceNode::overlay, R_FILTER_FAST_GAUSS, R_MBLUR, RE_engine_id_BLENDER_EEVEE, RE_engine_id_BLENDER_WORKBENCH, RE_engine_id_CYCLES, FileData::reports, RPT_, RPT_WARNING, SCE_COMPOSITOR_DEVICE_GPU, SCE_EEVEE_MOTION_BLUR_ENABLED_DEPRECATED, SCE_EEVEE_VOLUME_CUSTOM_RANGE, SCE_MB_CENTER, SCE_MB_END, SCE_MB_START, Main::scenes, Main::screens, SEQ_CACHE_SHOW_FINAL_OUT, SEQ_CACHE_UNUSED_5, SEQ_CACHE_UNUSED_6, SEQ_CACHE_UNUSED_7, SEQ_CACHE_UNUSED_8, SEQ_CACHE_UNUSED_9, SEQ_EDIT_SHOW_MISSING_MEDIA, SEQ_SNAP_TO_MARKERS, SET_FLAG_FROM_TEST, SH_NODE_OUTPUT_WORLD, Light::shadow_jitter_overblur, SceneEEVEE::shadow_resolution_scale, SN_OVERLAY_SHOW_REROUTE_AUTO_LABELS, SequencerToolSettings::snap_mode, SPACE_IMAGE, SPACE_NODE, SPACE_SEQ, SPACE_VIEW3D, STR_ELEM, STREQ, SpaceImage::stretch_opacity, strip_hue_correct_set_wrapping(), strip_proxies_timecode_update(), strip_text_data_update(), World::sun_angle, World::sun_shadow_filter_radius, World::sun_shadow_maximum_resolution, World::sun_threshold, MovieClipProxy::tc, CurveMapping::tone, blender::seq::tool_settings_ensure(), V3D_SHOW_CAMERA_GUIDES, V3D_SHOW_CAMERA_PASSEPARTOUT, version_cycles_properties_from_ID(), version_cycles_property_boolean(), version_cycles_property_int(), version_eevee_output_node_get(), version_node_input_socket_name(), version_node_output_socket_name(), version_refraction_depth_to_thickness_value(), Main::versionfile, versioning_node_hue_correct_set_wrappng(), versioning_update_timecode(), WO_USE_EEVEE_FINITE_VOLUME, WO_USE_SUN_SHADOW, and Main::worlds.
Referenced by do_versions().
|
static |
Definition at line 744 of file versioning_420.cc.
References CD_PROP_FLOAT, CurvesGeometry::curve_data_legacy, CurvesGeometry::curve_num, CustomData_get_layer_named_for_write(), CustomData_get_named_layer_index(), data, GreasePencilDrawing::geometry, GP_DRAWING, i, CustomData::layers, CustomDataLayer::name, STRNCPY_UTF8, and wrap().
Referenced by blo_do_versions_420().
Definition at line 496 of file versioning_420.cc.
References AnimData::action, all_scenes_use(), Main::armatures, BKE_animdata_from_id(), BLO_reportf_wrap(), bAction::curves, AnimData::drivers, ELEM, LISTBASE_FOREACH, MA_BM_BLEND, MA_BM_CLIP, MA_BM_HASHED, MA_BS_CLIP, MA_BS_HASHED, MA_BS_NONE, MA_BS_SOLID, MAIN_VERSION_FILE_ATLEAST, Main::materials, NTREE_SHADER, Main::objects, RE_engine_id_BLENDER_EEVEE, FileData::reports, RPT_, RPT_WARNING, SH_NODE_SUBSURFACE_SCATTERING, version_bonecollection_anim(), version_node_socket_index_animdata(), versioning_eevee_material_blend_mode_settings(), versioning_eevee_material_shadow_none(), and versioning_eevee_shadow_settings().
Referenced by do_versions_after_linking().
|
static |
Definition at line 600 of file versioning_420.cc.
References CurveMapping::clipr, CUMA_DO_CLIP, CUMA_USE_WRAPPING, CurveMapping::curr, CurveMapping::flag, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by strip_hue_correct_set_wrapping(), and versioning_node_hue_correct_set_wrappng().
|
static |
Definition at line 587 of file versioning_420.cc.
References ELEM, RenderData::im_format, ImageFormatData::imtype, Scene::r, and R_IMF_IMTYPE_FFMPEG.
Referenced by blo_do_versions_420().
|
static |
Definition at line 616 of file versioning_420.cc.
References HueCorrectModifierData::curve_mapping, eSeqModifierType_HueCorrect, hue_correct_set_wrapping(), LISTBASE_FOREACH, and Strip::modifiers.
Referenced by blo_do_versions_420().
|
static |
Definition at line 715 of file versioning_420.cc.
References Strip::data, StripData::proxy, StripProxy::tc, and versioning_update_timecode().
Referenced by blo_do_versions_420().
|
static |
Definition at line 725 of file versioning_420.cc.
References data, DEG2RADF, Strip::effectdata, STRIP_TYPE_TEXT, and Strip::type.
Referenced by blo_do_versions_420().
|
static |
Change animation/drivers from "collections[..." to "collections_all[..." so they remain stable when the bone collection hierarchy structure changes.
Definition at line 60 of file versioning_420.cc.
References BLI_sprintfN(), blender::StringRef::drop_known_prefix(), MEM_freeN(), FCurve::rna_path, and blender::StringRefBase::startswith().
Referenced by do_versions_after_linking_420().
Definition at line 670 of file versioning_420.cc.
References bNodeTree::links, LISTBASE_FOREACH, bNode::locx_legacy, bNode::locy_legacy, blender::bke::node_add_link(), blender::bke::node_add_static_node(), blender::bke::node_find_socket(), bNodeTree::nodes, bNode::parent, SH_NODE_OUTPUT_MATERIAL, SH_NODE_VALUE, SOCK_IN, SOCK_OUT, version_cycles_node_socket_float_value(), and version_socket_update_is_used().
Referenced by blo_do_versions_420().
|
static |
WARNING: recursive.
Definition at line 199 of file versioning_420.cc.
References AlphaSource::add(), AlphaSource::alpha_source(), BLI_findlink(), AlphaSource::complex_alpha(), bNodeLink::fromnode, AlphaSource::fully_transparent(), bNode::inputs, bNodeSocket::link, AlphaSource::mix(), blender::bke::node_find_socket(), NODE_GROUP, NODE_REROUTE, AlphaSource::opaque(), SH_NODE_ADD_SHADER, SH_NODE_BSDF_PRINCIPLED, SH_NODE_BSDF_TRANSPARENT, SH_NODE_EEVEE_SPECULAR, SH_NODE_MIX_SHADER, SOCK_IN, bNode::type_legacy, version_cycles_node_socket_float_value(), version_cycles_node_socket_rgba_value(), and versioning_eevee_alpha_source_get().
Referenced by versioning_eevee_alpha_source_get(), and versioning_eevee_material_blend_mode_settings().
This function detect the alpha input of a material node-tree and then convert the input alpha to a step function, either statically or using a math node when there is some value plugged in. If the closure mixture mix some alpha more than once, we cannot convert automatically and keep the same behavior. So we bail out in this case.
Only handles the closure tree from the output node.
Definition at line 310 of file versioning_420.cc.
References BLI_findlink(), copy_v4_v4(), bNode::custom1, ListBase::first, bNode::flag, float, bNodeLink::fromnode, bNodeLink::fromsock, bNode::inputs, AlphaSource::is_complex(), AlphaSource::is_transparency, bNodeSocket::link, bNode::locx_legacy, bNode::locy_legacy, min_ff(), blender::bke::node_add_link(), blender::bke::node_add_node(), NODE_COLLAPSED, blender::bke::node_find_socket(), NODE_MATH_GREATER_THAN, blender::bke::node_remove_link(), output, bNode::outputs, bNode::parent, SH_NODE_OUTPUT_MATERIAL, SOCK_IN, SOCK_RGBA, AlphaSource::socket, sum(), bNodeLink::tonode, bNodeLink::tosock, bNodeSocket::type, version_cycles_node_socket_float_value(), version_cycles_node_socket_rgba_value(), version_eevee_output_node_get(), versioning_eevee_alpha_source_get(), and bNode::width.
Referenced by do_versions_after_linking_420().
|
static |
Definition at line 395 of file versioning_420.cc.
References BLI_findlink(), bNode::custom1, bNode::flag, bNodeLink::fromnode, bNodeLink::fromsock, bNode::height, bNode::inputs, bNode::label, bNodeSocket::link, LISTBASE_FOREACH, bNode::locx_legacy, bNode::locy_legacy, blender::bke::node_add_link(), blender::bke::node_add_node(), NODE_COLLAPSED, blender::bke::node_find_socket(), blender::bke::node_remove_link(), Material::nodetree, bNode::outputs, bNode::parent, SH_NODE_OUTPUT_MATERIAL, SHD_OUTPUT_ALL, SHD_OUTPUT_CYCLES, SHD_OUTPUT_EEVEE, SOCK_HIDDEN, SOCK_IN, SOCK_OUT, STRNCPY(), and version_eevee_output_node_get().
Referenced by do_versions_after_linking_420().
|
static |
EEVEE no longer uses the Material::blend_shadow property. Instead, it uses Object::visibility_flag for disabling shadow casting
Definition at line 73 of file versioning_420.cc.
References BKE_object_material_get(), BKE_object_material_len_p(), Material::blend_shadow, i, MA_BS_NONE, OB_HIDE_SHADOW, SET_FLAG_FROM_TEST, and Object::visibility_flag.
Referenced by do_versions_after_linking_420().
|
static |
Definition at line 628 of file versioning_420.cc.
References CMP_NODE_HUECORRECT, hue_correct_set_wrapping(), LISTBASE_FOREACH_MUTABLE, bNodeTree::nodes, NTREE_COMPOSIT, and bNodeTree::type.
Referenced by blo_do_versions_420().
|
static |
Definition at line 707 of file versioning_420.cc.
References ELEM, and IMB_TC_RECORD_RUN.
Referenced by blo_do_versions_420(), and strip_proxies_timecode_update().