13#define DNA_DEPRECATED_ALLOW
16#define DNA_GENFILE_VERSIONING_MACROS
41#undef DNA_GENFILE_VERSIONING_MACROS
84#define CLANG_FORMAT_NOP_WORKAROUND ((void)0)
87#define U (*((const UserDef *)&U))
152 R_OPENEXR_HALF = (1 << 0),
153 R_OPENEXR_ZBUF = (1 << 1),
154 R_PREVIEW_JPG = (1 << 2),
155 R_CINEON_LOG = (1 << 3),
156 R_TIFF_16BIT = (1 << 4),
158 R_JPEG2K_12BIT = (1 << 5),
160 R_JPEG2K_16BIT = (1 << 6),
161 R_JPEG2K_YCC = (1 << 7),
163 R_JPEG2K_CINE_PRESET = (1 << 8),
164 R_JPEG2K_CINE_48FPS = (1 << 9),
173 imf->
imtype = char(rd->imtype);
174 imf->
planes = char(rd->planes);
176 imf->
quality = char(rd->quality);
187 if (rd->subimtype & R_PREVIEW_JPG) {
192 if (rd->subimtype & R_TIFF_16BIT) {
197 if (rd->subimtype & R_JPEG2K_16BIT) {
200 else if (rd->subimtype & R_JPEG2K_12BIT) {
204 if (rd->subimtype & R_JPEG2K_YCC) {
207 if (rd->subimtype & R_JPEG2K_CINE_PRESET) {
210 if (rd->subimtype & R_JPEG2K_CINE_48FPS) {
216 if (rd->subimtype & R_CINEON_LOG) {
265 node->storage = nimf;
273 old_data->
name, basepath,
sizeof(basepath), filename,
sizeof(filename));
290 SNPRINTF(sockpath,
"%s_Image", filename);
294 if (old_image->
link) {
299 SNPRINTF(sockpath,
"%s_Z", filename);
312 if (old_image->
link) {
355 for (
int i = 0; i < mesh->
corners_num; i++, mloopcol++) {
356 std::swap(mloopcol->
r, mloopcol->
b);
416 if (node->storage ==
nullptr) {
418 node->storage =
data;
421 data->flag = node->custom1;
423 data->label_size = 20;
428 node->color[0] = node->color[1] = node->color[2] = 0.608f;
434 for (
int i = 0; i < track->
markersnr; i++) {
467 return "CompositorNodeGroup";
469 return "ShaderNodeGroup";
471 return "TextureNodeGroup";
481 return "NodeGroupInput";
483 return "NodeGroupOutput";
485 return "NodeReroute";
487 return "ShaderNodeOutput";
489 return "ShaderNodeMaterial";
491 return "ShaderNodeRGB";
493 return "ShaderNodeValue";
495 return "ShaderNodeMixRGB";
497 return "ShaderNodeValToRGB";
499 return "ShaderNodeRGBToBW";
501 return "ShaderNodeTexture";
503 return "ShaderNodeNormal";
505 return "ShaderNodeGamma";
507 return "ShaderNodeBrightContrast";
509 return "ShaderNodeGeometry";
511 return "ShaderNodeMapping";
513 return "ShaderNodeVectorCurve";
515 return "ShaderNodeRGBCurve";
517 return "ShaderNodeCameraData";
519 return "ShaderNodeMath";
521 return "ShaderNodeVectorMath";
523 return "ShaderNodeSqueeze";
525 return "ShaderNodeExtendedMaterial";
527 return "ShaderNodeInvert";
529 return "ShaderNodeSeparateRGB";
531 return "ShaderNodeCombineRGB";
533 return "ShaderNodeHueSaturation";
535 return "ShaderNodeOutputMaterial";
537 return "ShaderNodeOutputLamp";
539 return "ShaderNodeOutputWorld";
541 return "ShaderNodeFresnel";
543 return "ShaderNodeLayerWeight";
545 return "ShaderNodeMixShader";
547 return "ShaderNodeAddShader";
549 return "ShaderNodeAttribute";
551 return "ShaderNodeAmbientOcclusion";
553 return "ShaderNodeBackground";
555 return "ShaderNodeHoldout";
557 return "ShaderNodeBsdfAnisotropic";
559 return "ShaderNodeBsdfDiffuse";
561 return "ShaderNodeBsdfGlossy";
563 return "ShaderNodeBsdfGlass";
565 return "ShaderNodeBsdfRefraction";
567 return "ShaderNodeBsdfTranslucent";
569 return "ShaderNodeBsdfTransparent";
571 return "ShaderNodeBsdfRayPortal";
573 return "ShaderNodeBsdfVelvet";
575 return "ShaderNodeVolumeTransparent";
577 return "ShaderNodeVolumeIsotropic";
579 return "ShaderNodeEmission";
581 return "ShaderNodeNewGeometry";
583 return "ShaderNodeLightPath";
585 return "ShaderNodeLightFalloff";
587 return "ShaderNodeObjectInfo";
589 return "ShaderNodeParticleInfo";
591 return "ShaderNodeHairInfo";
593 return "ShaderNodeBump";
595 return "ShaderNodeNormalMap";
597 return "ShaderNodeTangent";
599 return "ShaderNodeScript";
601 return "ShaderNodeTexImage";
603 return "ShaderNodeTexEnvironment";
605 return "ShaderNodeTexSky";
607 return "ShaderNodeTexGradient";
609 return "ShaderNodeTexNoise";
611 return "ShaderNodeTexMagic";
613 return "ShaderNodeTexWave";
615 return "ShaderNodeTexMusgrave";
617 return "ShaderNodeTexVoronoi";
619 return "ShaderNodeTexChecker";
621 return "ShaderNodeTexBrick";
623 return "ShaderNodeTexCoord";
625 return "CompositorNodeViewer";
627 return "CompositorNodeRGB";
629 return "CompositorNodeValue";
631 return "CompositorNodeMixRGB";
633 return "CompositorNodeValToRGB";
635 return "CompositorNodeRGBToBW";
637 return "CompositorNodeNormal";
639 return "CompositorNodeCurveVec";
641 return "CompositorNodeCurveRGB";
643 return "CompositorNodeAlphaOver";
645 return "CompositorNodeBlur";
647 return "CompositorNodeFilter";
649 return "CompositorNodeMapValue";
651 return "CompositorNodeMapRange";
653 return "CompositorNodeTime";
655 return "CompositorNodeVecBlur";
657 return "CompositorNodeSepRGBA";
659 return "CompositorNodeSepHSVA";
661 return "CompositorNodeSetAlpha";
663 return "CompositorNodeHueSat";
665 return "CompositorNodeImage";
667 return "CompositorNodeRLayers";
669 return "CompositorNodeComposite";
671 return "CompositorNodeOutputFile";
673 return "CompositorNodeTexture";
675 return "CompositorNodeTranslate";
677 return "CompositorNodeZcombine";
679 return "CompositorNodeCombRGBA";
681 return "CompositorNodeDilateErode";
683 return "CompositorNodeInpaint";
685 return "CompositorNodeDespeckle";
687 return "CompositorNodeRotate";
689 return "CompositorNodeScale";
691 return "CompositorNodeSepYCCA";
693 return "CompositorNodeCombYCCA";
695 return "CompositorNodeSepYUVA";
697 return "CompositorNodeCombYUVA";
699 return "CompositorNodeDiffMatte";
701 return "CompositorNodeColorSpill";
703 return "CompositorNodeChromaMatte";
705 return "CompositorNodeChannelMatte";
707 return "CompositorNodeFlip";
709 return "CompositorNodeSplitViewer";
711 return "CompositorNodeMapUV";
713 return "CompositorNodeIDMask";
715 return "CompositorNodeDoubleEdgeMask";
717 return "CompositorNodeDefocus";
719 return "CompositorNodeDisplace";
721 return "CompositorNodeCombHSVA";
723 return "CompositorNodeMath";
725 return "CompositorNodeLumaMatte";
727 return "CompositorNodeBrightContrast";
729 return "CompositorNodeGamma";
731 return "CompositorNodeInvert";
733 return "CompositorNodeNormalize";
735 return "CompositorNodeCrop";
737 return "CompositorNodeDBlur";
739 return "CompositorNodeBilateralblur";
741 return "CompositorNodePremulKey";
743 return "CompositorNodeGlare";
745 return "CompositorNodeTonemap";
747 return "CompositorNodeLensdist";
749 return "CompositorNodeLevels";
751 return "CompositorNodeColorMatte";
753 return "CompositorNodeDistanceMatte";
755 return "CompositorNodeColorBalance";
757 return "CompositorNodeHueCorrect";
759 return "CompositorNodeMovieClip";
761 return "CompositorNodeTransform";
763 return "CompositorNodeStabilize";
765 return "CompositorNodeMovieDistortion";
767 return "CompositorNodeBoxMask";
769 return "CompositorNodeEllipseMask";
771 return "CompositorNodeBokehImage";
773 return "CompositorNodeBokehBlur";
775 return "CompositorNodeSwitch";
777 return "CompositorNodeColorCorrection";
779 return "CompositorNodeMask";
781 return "CompositorNodeKeyingScreen";
783 return "CompositorNodeKeying";
785 return "CompositorNodeTrackPos";
787 return "CompositorNodePixelate";
789 return "TextureNodeOutput";
791 return "TextureNodeChecker";
793 return "TextureNodeTexture";
795 return "TextureNodeBricks";
797 return "TextureNodeMath";
799 return "TextureNodeMixRGB";
801 return "TextureNodeRGBToBW";
803 return "TextureNodeValToRGB";
805 return "TextureNodeImage";
807 return "TextureNodeCurveRGB";
809 return "TextureNodeInvert";
811 return "TextureNodeHueSaturation";
813 return "TextureNodeCurveTime";
815 return "TextureNodeRotate";
817 return "TextureNodeViewer";
819 return "TextureNodeTranslate";
821 return "TextureNodeCoordinates";
823 return "TextureNodeDistance";
825 return "TextureNodeCompose";
827 return "TextureNodeDecompose";
829 return "TextureNodeValToNor";
831 return "TextureNodeScale";
833 return "TextureNodeAt";
835 return "TextureNodeTexVoronoi";
837 return "TextureNodeTexBlend";
839 return "TextureNodeTexMagic";
841 return "TextureNodeTexMarble";
843 return "TextureNodeTexClouds";
845 return "TextureNodeTexWood";
847 return "TextureNodeTexMusgrave";
849 return "TextureNodeTexNoise";
851 return "TextureNodeTexStucci";
853 return "TextureNodeTexDistNoise";
861 switch (sock->
type) {
898 switch (ntree->
type) {
958 STRNCPY(sock->identifier, sock->name);
964 sizeof(sock->identifier));
967 STRNCPY(sock->identifier, sock->name);
973 sizeof(sock->identifier));
977 STRNCPY(sock->identifier, sock->name);
983 sizeof(sock->identifier));
986 STRNCPY(sock->identifier, sock->name);
992 sizeof(sock->identifier));
1001 if (strip && strip->color_balance) {
1015 strip->color_balance =
nullptr;
1022 enum { SEQ_MAKE_PREMUL = (1 << 6) };
1023 if (seq->
flag & SEQ_MAKE_PREMUL) {
1045 const char *identifier,
1047 const void *default_value,
1050 bNodeSocket *socket = MEM_cnew<bNodeSocket>(__func__);
1051 socket->
runtime = MEM_new<blender::bke::bNodeSocketRuntime>(__func__);
1075 ListBase *ntree_socket_list =
nullptr;
1076 ListBase *node_socket_list =
nullptr;
1079 bNode *node = MEM_cnew<bNode>(
"new node");
1083 ntree_socket_list = &ntree->inputs_legacy;
1085 node_socket_list = &node->
outputs;
1090 ntree_socket_list = &ntree->outputs_legacy;
1092 node_socket_list = &node->
inputs;
1100 node->
runtime = MEM_new<blender::bke::bNodeRuntime>(__func__);
1109 ntree->
typeinfo->node_add_init(ntree, node);
1118 tree_socket->identifier,
1120 tree_socket->default_value,
1142 if (sce->r.ffcodecdata.audio_channels == 0) {
1143 sce->r.ffcodecdata.audio_channels = 2;
1146 if (sce->nodetree) {
1162 if (part->rotmode == 0) {
1172 ob->collision_boundtype = ob->boundtype;
1177 if (cam->sensor_x < 0.01f) {
1181 if (cam->sensor_y < 0.01f) {
1209 if (sce->nodetree) {
1215 if (mat->nodetree) {
1253 if (clip->aspx < 1.0f) {
1260 if (clip->proxy.build_size_flag == 0) {
1264 if (clip->proxy.quality == 0) {
1265 clip->proxy.quality = 90;
1268 if (clip->tracking.camera.pixel_aspect < 0.01f) {
1269 clip->tracking.camera.pixel_aspect = 1.0f;
1273 clip->tracking.tracks_legacy.first);
1305 for (i = 0; i < 3; i++) {
1306 if ((ob->dsize[i] == 0.0f) ||
1307 (ob->scale[i] == 0.0f))
1310 ob->dscale[i] = 1.0f;
1313 ob->dscale[i] = (ob->scale[i] + ob->dsize[i]) / ob->scale[i];
1333 brush->alpha = 1.0f;
1343 if (sce->nodetree) {
1349 if (mat->nodetree) {
1355 if (tex->nodetree) {
1367 if (
world->nodetree) {
1392 while (tracking_object) {
1393 if (!tracking_object->
scale) {
1394 tracking_object->
scale = 1.0f;
1406 if (
data->invmat[3][3] == 0.0f) {
1422 ups->
size = ts->sculpt_paint_unified_size;
1424 ups->
alpha = ts->sculpt_paint_unified_alpha;
1425 ups->
flag = ts->sculpt_paint_settings;
1441 if (added && tl == text->curl) {
1501 if (sce->nodetree) {
1525 if (!ks->idname[0]) {
1526 STRNCPY(ks->idname, ks->name);
1549 if (fmd->
fss->viscosityMode == 3) {
1553 else if (fmd->
fss->viscosityMode == 4) {
1572 if (sce->nodetree) {
1594 brush->weight = 0.5;
1636 if (cu->bevfac2 == 0.0f) {
1647 if (sce->nodetree) {
1662 if (sce->nodetree) {
1668 if (mat->nodetree) {
1674 if (tex->nodetree) {
1686 if (
world->nodetree) {
1735 if (
data->maxblur == 0.0f) {
1736 data->maxblur = 16.0f;
1753 if (sclip->
around == 0) {
1764 clip->start_frame = 1;
1772 clip->tracking.tracks_legacy.first);
1786 if (node->storage ==
nullptr) {
1789 node->storage =
data;
1805 if (
data->despill_balance == 0.0f) {
1806 data->despill_balance = 0.5f;
1829 if (node->storage ==
nullptr) {
1832 data->size_x =
int(node->custom3);
1833 data->size_y =
int(node->custom4);
1834 node->custom3 = 0.5f;
1835 node->storage =
data;
1854 bool colormanagement_disabled =
false;
1867 colormanagement_disabled =
true;
1875 else if (colormanagement_disabled) {
1884 STRNCPY(ima->colorspace_settings.name,
"Raw");
1911 if (ob->pose->avs.path_step == 0) {
1935 if (tracking_object->keyframe1 == 0 && tracking_object->keyframe2 == 0) {
2004 if (scene->toolsettings->uvcalc_margin == 0.0f) {
2005 scene->toolsettings->uvcalc_margin = 0.001f;
2016 if (scene->r.tilex == 0 || scene->r.tiley == 1) {
2017 scene->r.tilex = scene->r.tiley = 64;
2025 if (ob->col_group == 0) {
2026 ob->col_group = 0x01;
2027 ob->col_mask = 0xff;
2051 switch (sl->spacetype) {
2089 if (scene->r.bake_samples == 0) {
2090 scene->r.bake_samples = 256;
2095 if (
image->flag & IMA_DO_PREMUL) {
2108 if (
image && (
image->flag & IMA_DO_PREMUL) == 0) {
2109 enum { IMA_IGNORE_ALPHA = (1 << 12) };
2110 image->flag |= IMA_IGNORE_ALPHA;
2146 if (cu->extrude != 0.0f || cu->bevel_radius != 0.0f) {
2161 a = nu->pntsu * nu->pntsv;
2194 node->storage = MEM_cnew<NodeTranslateData>(
"node translate data");
2219 snode->
id =
nullptr;
2220 snode->
from =
nullptr;
2223 switch (snode->treetype) {
2249 if (
id == &ntree->id) {
2274 bNode *input_node =
nullptr, *output_node =
nullptr;
2275 int num_inputs = 0, num_outputs = 0;
2283 float input_locx = 1000000.0f, input_locy = 0.0f;
2284 float output_locx = -1000000.0f, output_locy = 0.0f;
2286 const float offsetx = 42 + 3 * 20 + 20;
2289 if (create_io_nodes) {
2290 if (ntree->inputs_legacy.first) {
2294 if (ntree->outputs_legacy.first) {
2303 for (link =
static_cast<bNodeLink *
>(ntree->links.first); link !=
nullptr; link = next_link)
2305 bool free_link =
false;
2306 next_link = link->
next;
2316 if (input_locx > link->
tonode->
locx - offsetx) {
2327 if (link->
tonode ==
nullptr) {
2329 link->
tonode = output_node;
2335 if (output_locx < link->fromnode->locx + offsetx) {
2351 if (num_inputs > 0) {
2352 input_locy /= num_inputs;
2353 input_node->
locx = input_locx;
2354 input_node->
locy = input_locy;
2356 if (num_outputs > 0) {
2357 output_locy /= num_outputs;
2358 output_node->locx = output_locx;
2359 output_node->locy = output_locy;
2372 for (link =
static_cast<bNodeLink *
>(ntree->links.first); link !=
nullptr; link = next_link)
2374 next_link = link->
next;
2388 brush->spacing /= 2;
2394#define BRUSH_TEXTURE_OVERLAY (1 << 21)
2397 brush->overlay_flags = 0;
2402#undef BRUSH_TEXTURE_OVERLAY
2408 if (brush->stencil_dimension[0] == 0) {
2409 brush->stencil_dimension[0] = 256;
2410 brush->stencil_dimension[1] = 256;
2411 brush->stencil_pos[0] = 256;
2412 brush->stencil_pos[1] = 256;
2414 if (brush->mask_stencil_dimension[0] == 0) {
2415 brush->mask_stencil_dimension[0] = 256;
2416 brush->mask_stencil_dimension[1] = 256;
2417 brush->mask_stencil_pos[0] = 256;
2418 brush->mask_stencil_pos[1] = 256;
2437 if (sce->r.line_thickness_mode == 0) {
2439 sce->r.unit_line_thickness = 1.0f;
2442 if (srl->freestyleConfig.mode == 0) {
2445 if (
ELEM(srl->freestyleConfig.raycasting_algorithm,
2449 srl->freestyleConfig.raycasting_algorithm = 0;
2456 MeshStatVis *statvis = &sce->toolsettings->statvis;
2480 if (linestyle->thickness_position == 0) {
2482 linestyle->thickness_ratio = 0.5f;
2484 if (linestyle->chaining == 0) {
2487 if (linestyle->rounds == 0) {
2488 linestyle->rounds = 3;
2511 if (active_viewer_key.
value != 0) {
2515 if (active_viewer_key.
value != 0) {
2522 if (scene->nodetree) {
2523 scene->nodetree->active_viewer_key = active_viewer_key;
2534 if (fmd->
domain->
flags & FLUID_DOMAIN_USE_HIGH_SMOOTH) {
2548 brush->spacing = std::max(1, brush->spacing);
2553#define BRUSH_FIXED (1 << 6)
2557 if (brush->cursor_overlay_alpha < 2) {
2558 brush->cursor_overlay_alpha = 33;
2560 if (brush->texture_overlay_alpha < 2) {
2561 brush->texture_overlay_alpha = 33;
2563 if (brush->mask_overlay_alpha < 2) {
2564 brush->mask_overlay_alpha = 33;
2612 if (snode->
zoom < 0.02f) {
2636 if (region ==
nullptr) {
2640 ARegion *arnew = MEM_cnew<ARegion>(
"node tools");
2658 if (node->custom1 == SHD_SUBSURFACE_COMPATIBLE) {
2659 node->custom1 = SHD_SUBSURFACE_CUBIC;
2675 if (node->custom1 == 0) {
2679 else if (node->custom1 == 1) {
2713 if (!DNA_struct_member_exists(fd->
filesdna,
"MovieTrackingTrack",
"float",
"weight")) {
2719 &tracking_object->tracks;
2721 track->weight = 1.0f;
2727 if (!DNA_struct_member_exists(fd->
filesdna,
"TriangulateModifierData",
"int",
"quad_method")) {
2732 if (tmd->
flag & MOD_TRIANGULATE_BEAUTY) {
2753 if (scene->toolsettings->snap_node_mode == 0) {
2754 scene->toolsettings->snap_node_mode = 8;
2759 if (scene->r.ffcodecdata.type >= FFMPEG_INVALID) {
2760 scene->r.ffcodecdata.type = FFMPEG_AVI;
2770 la->spotsize =
DEG2RADF(la->spotsize);
2813 if (!DNA_struct_member_exists(
2814 fd->
filesdna,
"MovieTrackingPlaneTrack",
"float",
"image_opacity"))
2820 plane_track->image_opacity = 1.0f;
2828 Sculpt *sd = scene->toolsettings->sculpt;
2832 SCULPT_SYMM_X = (1 << 0),
2833 SCULPT_SYMM_Y = (1 << 1),
2834 SCULPT_SYMM_Z = (1 << 2),
2835 SCULPT_SYMMETRY_FEATHER = (1 << 6),
2837 int symmetry_flags = sd->
flags & 7;
2839 if (symmetry_flags & SCULPT_SYMM_X) {
2842 if (symmetry_flags & SCULPT_SYMM_Y) {
2845 if (symmetry_flags & SCULPT_SYMM_Z) {
2848 if (symmetry_flags & SCULPT_SYMMETRY_FEATHER) {
2883 if (space_link == area->spacedata.first) {
2884 lb = &area->regionbase;
2887 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, int totelem)
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 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 NODE_GROUP_OUTPUT
#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 FOREACH_NODETREE_END
#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 FOREACH_NODETREE_BEGIN(bmain, _nodetree, _id)
#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_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()
BLI_INLINE bool BLI_listbase_is_empty(const struct ListBase *lb)
#define LISTBASE_FOREACH(type, var, list)
BLI_INLINE void BLI_listbase_clear(struct ListBase *lb)
void BLI_insertlinkafter(struct ListBase *listbase, void *vprevlink, void *vnewlink) ATTR_NONNULL(1)
void * BLI_findlink(const struct ListBase *listbase, int number) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
void BLI_addtail(struct ListBase *listbase, void *vlink) 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 STRNCPY(dst, src)
#define SNPRINTF(dst, format,...)
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
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.
#define ID_IS_LINKED(_id)
@ SCULPT_BRUSH_TYPE_ROTATE
#define DEFAULT_SENSOR_HEIGHT
#define DEFAULT_SENSOR_WIDTH
@ CONSTRAINT_TYPE_OBJECTSOLVER
@ CONSTRAINT_TYPE_SHRINKWRAP
@ FREESTYLE_ALGO_CULLED_ADAPTIVE_CUMULATIVE
@ FREESTYLE_ALGO_CULLED_ADAPTIVE_TRADITIONAL
@ FREESTYLE_CONTROL_EDITOR_MODE
blenloader genfile private function prototypes
@ MOD_BUILD_FLAG_RANDOMIZE
@ MOD_TRIANGULATE_NGON_BEAUTY
@ MOD_TRIANGULATE_NGON_EARCLIP
@ eModifierType_EdgeSplit
@ eModifierType_DynamicPaint
@ eModifierType_Triangulate
@ MOD_SHRINKWRAP_PROJECT_OVER_X_AXIS
@ MOD_SHRINKWRAP_PROJECT_OVER_Y_AXIS
@ MOD_TRIANGULATE_QUAD_FIXED
@ MOD_TRIANGULATE_QUAD_BEAUTY
@ CMP_NODE_IMAGE_USE_STRAIGHT_OUTPUT
Object is a sort of wrapper for general info.
@ UVCALC_UNWRAP_METHOD_ANGLE
@ R_LINE_THICKNESS_ABSOLUTE
@ SCULPT_DYNTOPO_SUBDIVIDE
@ R_IMF_IMTYPE_MULTILAYER
@ R_IMF_JP2_FLAG_CINE_PRESET
@ seqModifierType_ColorBalance
@ SEQ_PREVIEW_SHOW_GPENCIL
@ TRACK_MOTION_MODEL_TRANSLATION
@ V3D_SHOW_RECONSTRUCTION
@ V3D_AROUND_CENTER_MEDIAN
@ IMB_TC_RECORD_RUN_NO_GAPS
Read Guarded memory(de)allocation.
in reality light always falls off quadratically Particle Retrieve the data of the particle that spawned the object for example to give variation to multiple instances of an object Point Retrieve information about points in a point cloud Retrieve the edges of an object as it appears to Cycles topology will always appear triangulated Convert a blackbody temperature to an RGB value Normal Generate a perturbed normal from an RGB normal map image Typically used for faking highly detailed surfaces Generate an OSL shader from a file or text data block Image Sample an image file as a texture Gabor Generate Gabor noise Gradient Generate interpolated color and intensity values based on the input vector Magic Generate a psychedelic color texture Voronoi Generate Worley noise based on the distance to random points Typically used to generate textures such as or biological cells Brick Generate a procedural texture producing bricks Texture Retrieve multiple types of texture coordinates nTypically used as inputs for texture nodes Vector Convert a or normal between world
input_tx image(0, GPU_RGBA16F, Qualifier::WRITE, ImageType::FLOAT_2D, "preview_img") .compute_source("compositor_compute_preview.glsl") .do_static_compilation(true)
draw_view push_constant(Type::INT, "radiance_src") .push_constant(Type capture_info_buf storage_buf(1, Qualifier::READ, "ObjectBounds", "bounds_buf[]") .push_constant(Type draw_view int
void SEQ_for_each_callback(ListBase *seqbase, SeqForEachFunc callback, void *user_data)
void MEM_freeN(void *vmemh)
void *(* MEM_dupallocN)(const void *vmemh)
void node_remove_socket(bNodeTree *ntree, bNode *node, bNodeSocket *sock)
void node_remove_link(bNodeTree *ntree, bNodeLink *link)
const char * node_static_socket_type(int type, int subtype)
void node_unique_id(bNodeTree *ntree, bNode *node)
void node_unique_name(bNodeTree *ntree, bNode *node)
bNodeSocket * node_group_input_find_socket(bNode *node, const char *identifier)
bNodeSocket * node_group_output_find_socket(bNode *node, const char *identifier)
void ntreeCompositColorBalanceSyncFromLGG(bNodeTree *, bNode *node)
void ntreeCompositColorBalanceSyncFromCDL(bNodeTree *, bNode *node)
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)
SequenceModifierData * SEQ_modifier_new(Sequence *seq, const char *name, int type)
void SEQ_alpha_mode_from_file_extension(Sequence *seq)
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 const char * node_socket_get_static_idname(bNodeSocket *sock)
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 bool seq_set_alpha_mode_cb(Sequence *seq, void *)
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 void do_versions_affine_tracker_track(MovieTrackingTrack *track)
static bool seq_set_wipe_angle_cb(Sequence *seq, void *)
#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 bool seq_colorbalance_update_cb(Sequence *seq, void *)
static void do_versions_mesh_mloopcol_swap_2_62_1(Mesh *mesh)
static void do_versions_nodetree_image_layer_2_64_5(bNodeTree *ntree)
static void do_versions_nodetree_image_default_alpha_output(bNodeTree *ntree)
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