16#define DNA_DEPRECATED_ALLOW
19#define DNA_GENFILE_VERSIONING_MACROS
44#undef DNA_GENFILE_VERSIONING_MACROS
88#define CLANG_FORMAT_NOP_WORKAROUND ((void)0)
91#define U (*((const UserDef *)&U))
116 ndbd->angle =
DEG2RADF(ndbd->angle);
137 ndg->angle_ofs =
DEG2RADF(ndg->angle_ofs * 255.0f);
156 R_OPENEXR_HALF = (1 << 0),
157 R_OPENEXR_ZBUF = (1 << 1),
158 R_PREVIEW_JPG = (1 << 2),
159 R_CINEON_LOG = (1 << 3),
160 R_TIFF_16BIT = (1 << 4),
162 R_JPEG2K_12BIT = (1 << 5),
164 R_JPEG2K_16BIT = (1 << 6),
165 R_JPEG2K_YCC = (1 << 7),
167 R_JPEG2K_CINE_PRESET = (1 << 8),
168 R_JPEG2K_CINE_48FPS = (1 << 9),
177 imf->
imtype = char(rd->imtype);
178 imf->
planes = char(rd->planes);
180 imf->
quality = char(rd->quality);
191 if (rd->subimtype & R_PREVIEW_JPG) {
196 if (rd->subimtype & R_TIFF_16BIT) {
201 if (rd->subimtype & R_JPEG2K_16BIT) {
204 else if (rd->subimtype & R_JPEG2K_12BIT) {
208 if (rd->subimtype & R_JPEG2K_YCC) {
211 if (rd->subimtype & R_JPEG2K_CINE_PRESET) {
214 if (rd->subimtype & R_JPEG2K_CINE_48FPS) {
220 if (rd->subimtype & R_CINEON_LOG) {
269 node->storage = nimf;
277 old_data->
name, basepath,
sizeof(basepath), filename,
sizeof(filename));
294 SNPRINTF(sockpath,
"%s_Image", filename);
298 if (old_image->
link) {
303 SNPRINTF(sockpath,
"%s_Z", filename);
316 if (old_image->
link) {
360 std::swap(mloopcol->
r, mloopcol->
b);
420 if (node->storage ==
nullptr) {
422 node->storage =
data;
425 data->flag = node->custom1;
427 data->label_size = 20;
432 node->color[0] = node->color[1] = node->color[2] = 0.608f;
471 return "CompositorNodeGroup";
473 return "ShaderNodeGroup";
475 return "TextureNodeGroup";
485 return "NodeGroupInput";
487 return "NodeGroupOutput";
489 return "NodeReroute";
491 return "ShaderNodeOutput";
493 return "ShaderNodeMaterial";
495 return "ShaderNodeRGB";
497 return "ShaderNodeValue";
499 return "ShaderNodeMixRGB";
501 return "ShaderNodeValToRGB";
503 return "ShaderNodeRGBToBW";
505 return "ShaderNodeTexture";
507 return "ShaderNodeNormal";
509 return "ShaderNodeGamma";
511 return "ShaderNodeBrightContrast";
513 return "ShaderNodeGeometry";
515 return "ShaderNodeMapping";
517 return "ShaderNodeVectorCurve";
519 return "ShaderNodeRGBCurve";
521 return "ShaderNodeCameraData";
523 return "ShaderNodeMath";
525 return "ShaderNodeVectorMath";
527 return "ShaderNodeSqueeze";
529 return "ShaderNodeExtendedMaterial";
531 return "ShaderNodeInvert";
533 return "ShaderNodeSeparateRGB";
535 return "ShaderNodeCombineRGB";
537 return "ShaderNodeHueSaturation";
539 return "ShaderNodeOutputMaterial";
541 return "ShaderNodeOutputLamp";
543 return "ShaderNodeOutputWorld";
545 return "ShaderNodeFresnel";
547 return "ShaderNodeLayerWeight";
549 return "ShaderNodeMixShader";
551 return "ShaderNodeAddShader";
553 return "ShaderNodeAttribute";
555 return "ShaderNodeAmbientOcclusion";
557 return "ShaderNodeBackground";
559 return "ShaderNodeHoldout";
561 return "ShaderNodeBsdfAnisotropic";
563 return "ShaderNodeBsdfDiffuse";
565 return "ShaderNodeBsdfGlossy";
567 return "ShaderNodeBsdfGlass";
569 return "ShaderNodeBsdfRefraction";
571 return "ShaderNodeBsdfTranslucent";
573 return "ShaderNodeBsdfTransparent";
575 return "ShaderNodeBsdfRayPortal";
577 return "ShaderNodeBsdfVelvet";
579 return "ShaderNodeVolumeTransparent";
581 return "ShaderNodeVolumeIsotropic";
583 return "ShaderNodeEmission";
585 return "ShaderNodeNewGeometry";
587 return "ShaderNodeLightPath";
589 return "ShaderNodeLightFalloff";
591 return "ShaderNodeObjectInfo";
593 return "ShaderNodeParticleInfo";
595 return "ShaderNodeHairInfo";
597 return "ShaderNodeBump";
599 return "ShaderNodeNormalMap";
601 return "ShaderNodeTangent";
603 return "ShaderNodeScript";
605 return "ShaderNodeTexImage";
607 return "ShaderNodeTexEnvironment";
609 return "ShaderNodeTexSky";
611 return "ShaderNodeTexGradient";
613 return "ShaderNodeTexNoise";
615 return "ShaderNodeTexMagic";
617 return "ShaderNodeTexWave";
619 return "ShaderNodeTexMusgrave";
621 return "ShaderNodeTexVoronoi";
623 return "ShaderNodeTexChecker";
625 return "ShaderNodeTexBrick";
627 return "ShaderNodeTexCoord";
629 return "CompositorNodeViewer";
631 return "CompositorNodeRGB";
633 return "CompositorNodeValue";
635 return "CompositorNodeMixRGB";
637 return "CompositorNodeValToRGB";
639 return "CompositorNodeRGBToBW";
641 return "CompositorNodeNormal";
643 return "CompositorNodeCurveVec";
645 return "CompositorNodeCurveRGB";
647 return "CompositorNodeAlphaOver";
649 return "CompositorNodeBlur";
651 return "CompositorNodeFilter";
653 return "CompositorNodeMapValue";
655 return "CompositorNodeMapRange";
657 return "CompositorNodeTime";
659 return "CompositorNodeVecBlur";
661 return "CompositorNodeSepRGBA";
663 return "CompositorNodeSepHSVA";
665 return "CompositorNodeSetAlpha";
667 return "CompositorNodeHueSat";
669 return "CompositorNodeImage";
671 return "CompositorNodeRLayers";
673 return "CompositorNodeComposite";
675 return "CompositorNodeOutputFile";
677 return "CompositorNodeTexture";
679 return "CompositorNodeTranslate";
681 return "CompositorNodeZcombine";
683 return "CompositorNodeCombRGBA";
685 return "CompositorNodeDilateErode";
687 return "CompositorNodeInpaint";
689 return "CompositorNodeDespeckle";
691 return "CompositorNodeRotate";
693 return "CompositorNodeScale";
695 return "CompositorNodeSepYCCA";
697 return "CompositorNodeCombYCCA";
699 return "CompositorNodeSepYUVA";
701 return "CompositorNodeCombYUVA";
703 return "CompositorNodeDiffMatte";
705 return "CompositorNodeColorSpill";
707 return "CompositorNodeChromaMatte";
709 return "CompositorNodeChannelMatte";
711 return "CompositorNodeFlip";
713 return "CompositorNodeSplitViewer";
715 return "CompositorNodeMapUV";
717 return "CompositorNodeIDMask";
719 return "CompositorNodeDoubleEdgeMask";
721 return "CompositorNodeDefocus";
723 return "CompositorNodeDisplace";
725 return "CompositorNodeCombHSVA";
727 return "CompositorNodeMath";
729 return "CompositorNodeLumaMatte";
731 return "CompositorNodeBrightContrast";
733 return "CompositorNodeGamma";
735 return "CompositorNodeInvert";
737 return "CompositorNodeNormalize";
739 return "CompositorNodeCrop";
741 return "CompositorNodeDBlur";
743 return "CompositorNodeBilateralblur";
745 return "CompositorNodePremulKey";
747 return "CompositorNodeGlare";
749 return "CompositorNodeTonemap";
751 return "CompositorNodeLensdist";
753 return "CompositorNodeLevels";
755 return "CompositorNodeColorMatte";
757 return "CompositorNodeDistanceMatte";
759 return "CompositorNodeColorBalance";
761 return "CompositorNodeHueCorrect";
763 return "CompositorNodeMovieClip";
765 return "CompositorNodeTransform";
767 return "CompositorNodeStabilize";
769 return "CompositorNodeMovieDistortion";
771 return "CompositorNodeBoxMask";
773 return "CompositorNodeEllipseMask";
775 return "CompositorNodeBokehImage";
777 return "CompositorNodeBokehBlur";
779 return "CompositorNodeSwitch";
781 return "CompositorNodeColorCorrection";
783 return "CompositorNodeMask";
785 return "CompositorNodeKeyingScreen";
787 return "CompositorNodeKeying";
789 return "CompositorNodeTrackPos";
791 return "CompositorNodePixelate";
793 return "TextureNodeOutput";
795 return "TextureNodeChecker";
797 return "TextureNodeTexture";
799 return "TextureNodeBricks";
801 return "TextureNodeMath";
803 return "TextureNodeMixRGB";
805 return "TextureNodeRGBToBW";
807 return "TextureNodeValToRGB";
809 return "TextureNodeImage";
811 return "TextureNodeCurveRGB";
813 return "TextureNodeInvert";
815 return "TextureNodeHueSaturation";
817 return "TextureNodeCurveTime";
819 return "TextureNodeRotate";
821 return "TextureNodeViewer";
823 return "TextureNodeTranslate";
825 return "TextureNodeCoordinates";
827 return "TextureNodeDistance";
829 return "TextureNodeCompose";
831 return "TextureNodeDecompose";
833 return "TextureNodeValToNor";
835 return "TextureNodeScale";
837 return "TextureNodeAt";
839 return "TextureNodeTexVoronoi";
841 return "TextureNodeTexBlend";
843 return "TextureNodeTexMagic";
845 return "TextureNodeTexMarble";
847 return "TextureNodeTexClouds";
849 return "TextureNodeTexWood";
851 return "TextureNodeTexMusgrave";
853 return "TextureNodeTexNoise";
855 return "TextureNodeTexStucci";
857 return "TextureNodeTexDistNoise";
865 switch (sock->
type) {
902 switch (ntree->
type) {
918 sizeof(node->idname));
963 STRNCPY(sock->identifier, sock->name);
969 sizeof(sock->identifier));
972 STRNCPY(sock->identifier, sock->name);
978 sizeof(sock->identifier));
982 STRNCPY(sock->identifier, sock->name);
988 sizeof(sock->identifier));
991 STRNCPY(sock->identifier, sock->name);
997 sizeof(sock->identifier));
1010 for (
int c = 0; c < 3; c++) {
1011 n->slope[c] = (2.0f - n->lift[c]) * n->gain[c];
1012 n->offset[c] = (n->lift[c] - 1.0f) * n->gain[c];
1013 n->power[c] = (n->gamma[c] != 0.0f) ? 1.0f / n->gamma[c] : 1000000.0f;
1021 for (
int c = 0; c < 3; c++) {
1022 float d = n->slope[c] + n->offset[c];
1023 n->lift[c] = (d != 0.0f ? n->slope[c] + 2.0f * n->offset[c] / d : 0.0f);
1025 n->gamma[c] = (n->power[c] != 0.0f) ? 1.0f / n->power[c] : 1000000.0f;
1048 data->color_balance =
nullptr;
1055 enum { SEQ_MAKE_PREMUL = (1 << 6) };
1056 if (strip->
flag & SEQ_MAKE_PREMUL) {
1078 const char *identifier,
1080 const void *default_value,
1084 socket->
runtime = MEM_new<blender::bke::bNodeSocketRuntime>(__func__);
1086 socket->
type = int(type);
1087 socket->
in_out = int(in_out);
1108 ListBase *ntree_socket_list =
nullptr;
1109 ListBase *node_socket_list =
nullptr;
1116 ntree_socket_list = &ntree->inputs_legacy;
1118 node_socket_list = &node->
outputs;
1123 ntree_socket_list = &ntree->outputs_legacy;
1125 node_socket_list = &node->
inputs;
1133 node->
runtime = MEM_new<blender::bke::bNodeRuntime>(__func__);
1142 ntree->
typeinfo->node_add_init(ntree, node);
1151 tree_socket->identifier,
1153 tree_socket->default_value,
1175 if (sce->r.ffcodecdata.audio_channels == 0) {
1176 sce->r.ffcodecdata.audio_channels = 2;
1179 if (sce->nodetree) {
1195 if (part->rotmode == 0) {
1205 ob->collision_boundtype = ob->boundtype;
1210 if (cam->sensor_x < 0.01f) {
1214 if (cam->sensor_y < 0.01f) {
1242 if (sce->nodetree) {
1248 if (mat->nodetree) {
1286 if (clip->aspx < 1.0f) {
1293 if (clip->proxy.build_size_flag == 0) {
1297 if (clip->proxy.quality == 0) {
1298 clip->proxy.quality = 90;
1301 if (clip->tracking.camera.pixel_aspect < 0.01f) {
1302 clip->tracking.camera.pixel_aspect = 1.0f;
1306 clip->tracking.tracks_legacy.first);
1338 for (
i = 0;
i < 3;
i++) {
1339 if ((ob->dsize[
i] == 0.0f) ||
1340 (ob->scale[
i] == 0.0f))
1343 ob->dscale[
i] = 1.0f;
1346 ob->dscale[
i] = (ob->scale[
i] + ob->dsize[
i]) / ob->scale[
i];
1366 brush->alpha = 1.0f;
1376 if (sce->nodetree) {
1382 if (mat->nodetree) {
1388 if (tex->nodetree) {
1400 if (world->nodetree) {
1425 while (tracking_object) {
1426 if (!tracking_object->
scale) {
1427 tracking_object->
scale = 1.0f;
1439 if (
data->invmat[3][3] == 0.0f) {
1455 ups->
size = ts->sculpt_paint_unified_size;
1457 ups->
alpha = ts->sculpt_paint_unified_alpha;
1458 ups->
flag = ts->sculpt_paint_settings;
1474 if (added && tl == text->curl) {
1534 if (sce->nodetree) {
1558 if (!ks->idname[0]) {
1559 STRNCPY(ks->idname, ks->name);
1582 if (fmd->
fss->viscosityMode == 3) {
1586 else if (fmd->
fss->viscosityMode == 4) {
1605 if (sce->nodetree) {
1627 brush->weight = 0.5;
1669 if (cu->bevfac2 == 0.0f) {
1680 if (sce->nodetree) {
1695 if (sce->nodetree) {
1701 if (mat->nodetree) {
1707 if (tex->nodetree) {
1719 if (world->nodetree) {
1768 if (
data->maxblur == 0.0f) {
1769 data->maxblur = 16.0f;
1786 if (sclip->
around == 0) {
1797 clip->start_frame = 1;
1805 clip->tracking.tracks_legacy.first);
1819 if (node->storage ==
nullptr) {
1822 node->storage =
data;
1838 if (
data->despill_balance == 0.0f) {
1839 data->despill_balance = 0.5f;
1862 if (node->storage ==
nullptr) {
1865 data->size_x = int(node->custom3);
1866 data->size_y = int(node->custom4);
1867 node->custom3 = 0.5f;
1868 node->storage =
data;
1888 bool colormanagement_disabled =
false;
1901 colormanagement_disabled =
true;
1909 else if (colormanagement_disabled) {
1918 STRNCPY(ima->colorspace_settings.name,
"Raw");
1945 if (ob->pose->avs.path_step == 0) {
1969 if (tracking_object->keyframe1 == 0 && tracking_object->keyframe2 == 0) {
2038 if (scene->toolsettings->uvcalc_margin == 0.0f) {
2039 scene->toolsettings->uvcalc_margin = 0.001f;
2050 if (scene->r.tilex == 0 || scene->r.tiley == 1) {
2051 scene->r.tilex = scene->r.tiley = 64;
2059 if (ob->col_group == 0) {
2060 ob->col_group = 0x01;
2061 ob->col_mask = 0xff;
2085 switch (sl->spacetype) {
2123 if (scene->r.bake_samples == 0) {
2124 scene->r.bake_samples = 256;
2129 if (image->flag & IMA_DO_PREMUL) {
2142 if (image && (image->
flag & IMA_DO_PREMUL) == 0) {
2143 enum { IMA_IGNORE_ALPHA = (1 << 12) };
2144 image->
flag |= IMA_IGNORE_ALPHA;
2180 if (cu->extrude != 0.0f || cu->bevel_radius != 0.0f) {
2195 a = nu->pntsu * nu->pntsv;
2253 snode->
id =
nullptr;
2254 snode->
from =
nullptr;
2257 switch (snode->treetype) {
2283 if (
id == &ntree->id) {
2308 bNode *input_node =
nullptr, *output_node =
nullptr;
2309 int num_inputs = 0, num_outputs = 0;
2317 float input_locx = 1000000.0f, input_locy = 0.0f;
2318 float output_locx = -1000000.0f, output_locy = 0.0f;
2320 const float offsetx = 42 + 3 * 20 + 20;
2323 if (create_io_nodes) {
2324 if (ntree->inputs_legacy.first) {
2328 if (ntree->outputs_legacy.first) {
2337 for (link =
static_cast<bNodeLink *
>(ntree->links.first); link !=
nullptr; link = next_link)
2339 bool free_link =
false;
2340 next_link = link->
next;
2359 if (link->
tonode ==
nullptr) {
2361 link->
tonode = output_node;
2381 if (num_inputs > 0) {
2382 input_locy /= num_inputs;
2386 if (num_outputs > 0) {
2387 output_locy /= num_outputs;
2388 output_node->locx_legacy = output_locx;
2389 output_node->locy_legacy = output_locy;
2402 for (link =
static_cast<bNodeLink *
>(ntree->links.first); link !=
nullptr; link = next_link)
2404 next_link = link->
next;
2418 brush->spacing /= 2;
2424#define BRUSH_TEXTURE_OVERLAY (1 << 21)
2427 brush->overlay_flags = 0;
2432#undef BRUSH_TEXTURE_OVERLAY
2438 if (brush->stencil_dimension[0] == 0) {
2439 brush->stencil_dimension[0] = 256;
2440 brush->stencil_dimension[1] = 256;
2441 brush->stencil_pos[0] = 256;
2442 brush->stencil_pos[1] = 256;
2444 if (brush->mask_stencil_dimension[0] == 0) {
2445 brush->mask_stencil_dimension[0] = 256;
2446 brush->mask_stencil_dimension[1] = 256;
2447 brush->mask_stencil_pos[0] = 256;
2448 brush->mask_stencil_pos[1] = 256;
2467 if (sce->r.line_thickness_mode == 0) {
2469 sce->r.unit_line_thickness = 1.0f;
2472 if (srl->freestyleConfig.mode == 0) {
2475 if (
ELEM(srl->freestyleConfig.raycasting_algorithm,
2479 srl->freestyleConfig.raycasting_algorithm = 0;
2486 MeshStatVis *statvis = &sce->toolsettings->statvis;
2510 if (linestyle->thickness_position == 0) {
2512 linestyle->thickness_ratio = 0.5f;
2514 if (linestyle->chaining == 0) {
2517 if (linestyle->rounds == 0) {
2518 linestyle->rounds = 3;
2541 if (active_viewer_key.
value != 0) {
2545 if (active_viewer_key.
value != 0) {
2552 if (scene->nodetree) {
2553 scene->nodetree->active_viewer_key = active_viewer_key;
2564 if (fmd->
domain->
flags & FLUID_DOMAIN_USE_HIGH_SMOOTH) {
2578 brush->spacing = std::max(1, brush->spacing);
2583#define BRUSH_FIXED (1 << 6)
2587 if (brush->cursor_overlay_alpha < 2) {
2588 brush->cursor_overlay_alpha = 33;
2590 if (brush->texture_overlay_alpha < 2) {
2591 brush->texture_overlay_alpha = 33;
2593 if (brush->mask_overlay_alpha < 2) {
2594 brush->mask_overlay_alpha = 33;
2642 if (snode->
zoom < 0.02f) {
2666 if (region ==
nullptr) {
2688 if (node->custom1 == SHD_SUBSURFACE_COMPATIBLE) {
2689 node->custom1 = SHD_SUBSURFACE_CUBIC;
2705 if (node->custom1 == 0) {
2709 else if (node->custom1 == 1) {
2743 if (!DNA_struct_member_exists(fd->
filesdna,
"MovieTrackingTrack",
"float",
"weight")) {
2749 &tracking_object->tracks;
2751 track->weight = 1.0f;
2757 if (!DNA_struct_member_exists(fd->
filesdna,
"TriangulateModifierData",
"int",
"quad_method")) {
2762 if (tmd->
flag & MOD_TRIANGULATE_BEAUTY) {
2783 if (scene->toolsettings->snap_node_mode == 0) {
2784 scene->toolsettings->snap_node_mode = 8;
2798 la->spotsize =
DEG2RADF(la->spotsize);
2829 n->rotation =
DEG2RADF(n->rotation);
2833 n->rotation =
DEG2RADF(n->rotation);
2841 if (!DNA_struct_member_exists(
2842 fd->
filesdna,
"MovieTrackingPlaneTrack",
"float",
"image_opacity"))
2848 plane_track->image_opacity = 1.0f;
2856 Sculpt *sd = scene->toolsettings->sculpt;
2860 SCULPT_SYMM_X = (1 << 0),
2861 SCULPT_SYMM_Y = (1 << 1),
2862 SCULPT_SYMM_Z = (1 << 2),
2863 SCULPT_SYMMETRY_FEATHER = (1 << 6),
2865 int symmetry_flags = sd->
flags & 7;
2867 if (symmetry_flags & SCULPT_SYMM_X) {
2870 if (symmetry_flags & SCULPT_SYMM_Y) {
2873 if (symmetry_flags & SCULPT_SYMM_Z) {
2876 if (symmetry_flags & SCULPT_SYMMETRY_FEATHER) {
2911 if (space_link == area->spacedata.first) {
2912 lb = &area->regionbase;
2915 lb = &space_link->regionbase;
void animviz_settings_init(struct bAnimVizSettings *avs)
CustomData interface, see also DNA_customdata_types.h.
void CustomData_free_layers(CustomData *data, eCustomDataType type)
void CustomData_update_typemap(CustomData *data)
IDProperty * IDP_CopyProperty(const IDProperty *prop) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL()
void BKE_image_alpha_mode_from_extension(Image *image)
#define MAIN_VERSION_FILE_ATLEAST(main, ver, subver)
#define MAIN_VERSION_FILE_OLDER(main, ver, subver)
void BKE_mesh_do_versions_cd_flag_init(Mesh *mesh)
#define NODE_GROUP_OUTPUT
#define FOREACH_NODETREE_END
#define FOREACH_NODETREE_BEGIN(bmain, _nodetree, _id)
#define SH_NODE_TEX_NOISE
#define SH_NODE_MIX_SHADER
#define CMP_NODE_PREMULKEY
#define CMP_NODE_VALTORGB
#define SH_NODE_MIX_RGB_LEGACY
#define SH_NODE_TEX_GRADIENT
#define SH_NODE_COMBRGB_LEGACY
#define TEX_NODE_DISTANCE
#define CMP_NODE_COMPOSITE
#define CMP_NODE_MAP_RANGE
#define CMP_NODE_SEPHSVA_LEGACY
#define CMP_NODE_COLOR_SPILL
#define SH_NODE_TEX_MAGIC
#define SH_NODE_OUTPUT_WORLD
#define SH_NODE_BRIGHTCONTRAST
#define CMP_NODE_DESPECKLE
#define CMP_NODE_LUMA_MATTE
#define CMP_NODE_KEYINGSCREEN
#define CMP_NODE_MASK_ELLIPSE
#define CMP_NODE_DISPLACE
#define SH_NODE_TEX_IMAGE
#define CMP_NODE_COMBYCCA_LEGACY
#define CMP_NODE_SEPRGBA_LEGACY
#define CMP_NODE_BILATERALBLUR
#define CMP_NODE_MAP_VALUE
#define CMP_NODE_TRANSLATE
#define CMP_NODE_MOVIEDISTORTION
#define SH_NODE_ADD_SHADER
#define SH_NODE_LAYER_WEIGHT
#define SH_NODE_SUBSURFACE_SCATTERING
#define CMP_NODE_COLORBALANCE
#define TEX_NODE_DECOMPOSE_LEGACY
#define CMP_NODE_BOKEHIMAGE
#define SH_NODE_TEX_BRICK
#define SH_NODE_SEPRGB_LEGACY
#define CMP_NODE_COMBYUVA_LEGACY
#define SH_NODE_TEX_COORD
#define CMP_NODE_DIFF_MATTE
#define SH_NODE_VECTOR_MATH
#define SH_NODE_TEX_ENVIRONMENT
#define SH_NODE_NORMAL_MAP
#define SH_NODE_CURVE_VEC
#define CMP_NODE_ALPHAOVER
#define TEX_NODE_TRANSLATE
#define CMP_NODE_HUECORRECT
#define CMP_NODE_SEPYUVA_LEGACY
#define TEX_NODE_VALTONOR
#define CMP_NODE_COMBHSVA_LEGACY
#define CMP_NODE_CHROMA_MATTE
#define SH_NODE_BSDF_TRANSPARENT
#define CMP_NODE_MOVIECLIP
#define CMP_NODE_TRANSFORM
#define CMP_NODE_DILATEERODE
#define SH_NODE_BSDF_DIFFUSE
#define SH_NODE_HAIR_INFO
#define SH_NODE_AMBIENT_OCCLUSION
#define CMP_NODE_BOKEHBLUR
#define TEX_NODE_COMPOSE_LEGACY
#define CMP_NODE_LENSDIST
#define CMP_NODE_NORMALIZE
#define CMP_NODE_ZCOMBINE
#define CMP_NODE_TRACKPOS
#define SH_NODE_OUTPUT_MATERIAL
#define CMP_NODE_OUTPUT_FILE
#define CMP_NODE_COLORCORRECTION
#define SH_NODE_BSDF_TRANSLUCENT
#define CMP_NODE_SETALPHA
#define SH_NODE_BACKGROUND
#define SH_NODE_BSDF_RAY_PORTAL
#define CMP_NODE_CURVE_RGB
#define CMP_NODE_DOUBLEEDGEMASK
#define SH_NODE_TEX_CHECKER
#define SH_NODE_TEX_VORONOI
#define CMP_NODE_STABILIZE2D
#define SH_NODE_OBJECT_INFO
#define SH_NODE_TEX_MUSGRAVE_DEPRECATED
#define CMP_NODE_PIXELATE
#define SH_NODE_CURVE_RGB
#define CMP_NODE_COMBRGBA_LEGACY
#define CMP_NODE_MASK_BOX
#define CMP_NODE_SPLITVIEWER__DEPRECATED
#define TEX_NODE_CURVE_TIME
#define SH_NODE_LIGHT_FALLOFF
#define SH_NODE_BSDF_GLASS
#define CMP_NODE_R_LAYERS
#define SH_NODE_NEW_GEOMETRY
#define CMP_NODE_CURVE_VEC
#define CMP_NODE_SEPYCCA_LEGACY
#define SH_NODE_PARTICLE_INFO
#define CMP_NODE_COLOR_MATTE
#define CMP_NODE_DIST_MATTE
#define CMP_NODE_OUTPUT_MULTI_FILE__DEPRECATED
#define SH_NODE_BSDF_REFRACTION
#define CMP_NODE_VIEW_LEVELS
#define SH_NODE_OUTPUT_LIGHT
#define TEX_NODE_VALTORGB
#define CMP_NODE_BRIGHTCONTRAST
#define TEX_NODE_CURVE_RGB
#define CMP_NODE_CHANNEL_MATTE
#define SH_NODE_ATTRIBUTE
#define SH_NODE_LIGHT_PATH
void BKE_ntree_update_tag_node_new(bNodeTree *ntree, bNode *node)
void BKE_ntree_update_tag_socket_type(bNodeTree *ntree, bNodeSocket *socket)
void BKE_ntree_update_tag_socket_new(bNodeTree *ntree, bNodeSocket *socket)
void BKE_scene_disable_color_management(Scene *scene)
ARegion * BKE_area_region_new()
ARegion * BKE_area_find_region_type(const ScrArea *area, int region_type)
int txt_extended_ascii_as_utf8(char **str)
void BKE_texture_mtex_default(struct MTex *mtex)
struct MovieTrackingObject * BKE_tracking_object_add(struct MovieTracking *tracking, const char *name)
#define BLI_assert_unreachable()
void * BLI_findlink(const ListBase *listbase, int number) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
#define LISTBASE_FOREACH(type, var, list)
BLI_INLINE void BLI_listbase_clear(ListBase *lb)
BLI_INLINE bool BLI_listbase_is_empty(const ListBase *lb)
void BLI_addtail(ListBase *listbase, void *vlink) ATTR_NONNULL(1)
void BLI_insertlinkafter(ListBase *listbase, void *vprevlink, void *vnewlink) ATTR_NONNULL(1)
MINLINE int max_iii(int a, int b, int c)
void unit_m4(float m[4][4])
MINLINE void copy_v2_v2(float r[2], const float a[2])
MINLINE bool is_zero_v2(const float v[2]) ATTR_WARN_UNUSED_RESULT
MINLINE void copy_v3_v3(float r[3], const float a[3])
void copy_vn_fl(float *array_tar, int size, float val)
MINLINE bool is_zero_v3(const float v[3]) ATTR_WARN_UNUSED_RESULT
void BLI_path_split_dir_file(const char *filepath, char *dir, size_t dir_maxncpy, char *file, size_t file_maxncpy) ATTR_NONNULL(1
#define SNPRINTF(dst, format,...)
char * STRNCPY(char(&dst)[N], const char *src)
char * BLI_strncpy(char *__restrict dst, const char *__restrict src, size_t dst_maxncpy) ATTR_NONNULL(1
size_t BLI_strlen_utf8(const char *strc) ATTR_NONNULL(1) ATTR_WARN_UNUSED_RESULT
#define STRNCPY_UTF8(dst, src)
void BLI_uniquename(const struct ListBase *list, void *vlink, const char *defname, char delim, int name_offset, size_t name_maxncpy) ATTR_NONNULL(1
#define POINTER_AS_INT(i)
external readfile function prototypes.
@ SCULPT_BRUSH_TYPE_ROTATE
#define DEFAULT_SENSOR_HEIGHT
#define DEFAULT_SENSOR_WIDTH
@ CONSTRAINT_TYPE_OBJECTSOLVER
@ CONSTRAINT_TYPE_SHRINKWRAP
@ FREESTYLE_CONTROL_EDITOR_MODE
@ FREESTYLE_ALGO_CULLED_ADAPTIVE_CUMULATIVE
@ FREESTYLE_ALGO_CULLED_ADAPTIVE_TRADITIONAL
blenloader genfile private function prototypes
@ MOD_SHRINKWRAP_PROJECT_OVER_X_AXIS
@ MOD_SHRINKWRAP_PROJECT_OVER_Y_AXIS
@ MOD_TRIANGULATE_NGON_BEAUTY
@ MOD_TRIANGULATE_NGON_EARCLIP
@ MOD_BUILD_FLAG_RANDOMIZE
@ eModifierType_EdgeSplit
@ eModifierType_DynamicPaint
@ eModifierType_Triangulate
@ MOD_TRIANGULATE_QUAD_FIXED
@ MOD_TRIANGULATE_QUAD_BEAUTY
@ CMP_NODE_IMAGE_USE_STRAIGHT_OUTPUT
Object is a sort of wrapper for general info.
@ R_IMF_JP2_FLAG_CINE_PRESET
@ SCULPT_DYNTOPO_SUBDIVIDE
@ R_IMF_IMTYPE_MULTILAYER
@ R_LINE_THICKNESS_ABSOLUTE
@ UVCALC_UNWRAP_METHOD_ANGLE
@ seqModifierType_ColorBalance
@ SEQ_PREVIEW_SHOW_GPENCIL
@ TRACK_MOTION_MODEL_TRANSLATION
@ V3D_SHOW_RECONSTRUCTION
@ V3D_AROUND_CENTER_MEDIAN
Read Guarded memory(de)allocation.
@ IMB_TC_RECORD_RUN_NO_GAPS
BMesh const char void * data
#define ID_IS_LINKED(_id)
void * MEM_callocN(size_t len, const char *str)
void * MEM_dupallocN(const void *vmemh)
void MEM_freeN(void *vmemh)
void node_remove_socket(bNodeTree &ntree, bNode &node, bNodeSocket &sock)
void node_unique_id(bNodeTree &ntree, bNode &node)
void node_remove_link(bNodeTree *ntree, bNodeLink &link)
std::optional< StringRefNull > node_static_socket_type(int type, int subtype, std::optional< int > dimensions=std::nullopt)
void node_unique_name(bNodeTree &ntree, bNode &node)
void for_each_callback(ListBase *seqbase, ForEachFunc callback, void *user_data)
StripModifierData * modifier_new(Strip *strip, const char *name, int type)
void alpha_mode_from_file_extension(Strip *strip)
bNodeSocket * node_group_output_find_socket(bNode *node, const StringRef identifier)
bNodeSocket * node_group_input_find_socket(bNode *node, const StringRef identifier)
void ntreeCompositOutputFileUniqueLayer(ListBase *list, bNodeSocket *sock, const char defname[], char delim)
bNodeSocket * ntreeCompositOutputFileAddSocket(bNodeTree *ntree, bNode *node, const char *name, const ImageFormatData *im_format)
void ntreeCompositOutputFileUniquePath(ListBase *list, bNodeSocket *sock, const char defname[], char delim)
void * blo_do_versions_newlibadr(FileData *fd, ID *self_id, const bool is_linked_only, const void *adr)
void blo_do_versions_key_uidgen(Key *key)
struct ClothSimSettings * sim_parms
StripColorBalance color_balance
struct DynamicPaintCanvasSettings * canvas
float color_dry_threshold
struct DynamicPaintSurface * next
float flame_smoke_color[3]
struct FluidDomainSettings * domain
struct FluidFlowSettings * flow
struct FluidsimSettings * fss
float pattern_corners[4][2]
struct MovieTrackingObject * next
short default_motion_model
float default_minimum_correlation
short default_pattern_size
short default_search_size
float minimum_correlation
float search_max_legacy[2]
MovieTrackingMarker * markers
struct MovieTrackingTrack * next
float search_min_legacy[2]
MovieTrackingSettings settings
struct ImageFormatData im_format
struct ImageFormatData im_format
struct MovieClipScopes scopes
struct bNodeTree * edittree
struct bNodeTree * nodetree
bNodeSocketRuntimeHandle * runtime
bNodeInstanceKey parent_key
bNodeTreeTypeHandle * typeinfo
bNodeRuntimeHandle * runtime
static bool strip_set_alpha_mode_cb(Strip *strip, void *)
static bool strip_colorbalance_update_cb(Strip *strip, void *)
void blo_do_versions_260(FileData *fd, Library *, Main *bmain)
static void do_versions_nodetree_multi_file_output_path_2_63_1(bNodeTree *ntree)
static void do_versions_nodetree_file_output_layers_2_64_5(bNodeTree *ntree)
static void do_versions_nodetree_convert_angle(bNodeTree *ntree)
static bNode * version_add_group_in_out_node(bNodeTree *ntree, const int type)
static blender::StringRefNull node_socket_get_static_idname(bNodeSocket *sock)
static void do_versions_affine_tracker_track(MovieTrackingTrack *track)
static void color_balance_node_lgg_from_cdl(bNode *node)
#define CLANG_FORMAT_NOP_WORKAROUND
void do_versions_after_linking_260(Main *)
static void do_versions_image_settings_2_60(Scene *sce)
static void do_versions_nodetree_socket_use_flags_2_62(bNodeTree *ntree)
static const char * node_get_static_idname(int type, int treetype)
static void do_versions_mesh_mloopcol_swap_2_62_1(Mesh *mesh)
static void color_balance_node_cdl_from_lgg(bNode *node)
static void do_versions_nodetree_image_layer_2_64_5(bNodeTree *ntree)
static void do_versions_nodetree_image_default_alpha_output(bNodeTree *ntree)
static bool strip_set_wipe_angle_cb(Strip *strip, void *)
static void do_versions_nodetree_frame_2_64_6(bNodeTree *ntree)
static void do_versions_nodetree_customnodes(bNodeTree *ntree, int)
static bNodeSocket * version_make_socket_stub(const char *idname, eNodeSocketDatatype type, eNodeSocketInOut in_out, const char *identifier, const char *name, const void *default_value, const IDProperty *prop)
static void do_versions_nodetree_multi_file_output_format_2_62_1(Scene *sce, bNodeTree *ntree)
#define BRUSH_TEXTURE_OVERLAY