[Bf-blender-cvs] [1401125f7b8] temp-T97352-3d-texturing-seam-bleeding-b2: Merge branch 'master' into temp-T97352-3d-texturing-seam-bleeding-b2
Jeroen Bakker
noreply at git.blender.org
Tue Jun 28 14:44:20 CEST 2022
Commit: 1401125f7b83f49c889de3f801a54d5e122a211c
Author: Jeroen Bakker
Date: Tue Jun 28 14:44:15 2022 +0200
Branches: temp-T97352-3d-texturing-seam-bleeding-b2
https://developer.blender.org/rB1401125f7b83f49c889de3f801a54d5e122a211c
Merge branch 'master' into temp-T97352-3d-texturing-seam-bleeding-b2
===================================================================
===================================================================
diff --cc source/blender/blenkernel/intern/pbvh.c
index 619352fbffb,5e5443f48ca..3d38feeb953
--- a/source/blender/blenkernel/intern/pbvh.c
+++ b/source/blender/blenkernel/intern/pbvh.c
@@@ -714,8 -714,10 +714,12 @@@ void BKE_pbvh_free(PBVH *pbvh
MEM_SAFE_FREE(pbvh->vert_bitmap);
+ if (pbvh->vbo_id) {
+ GPU_pbvh_free_format(pbvh->vbo_id);
+ }
+
+ pbvh_pixels_free(pbvh);
+
MEM_freeN(pbvh);
}
diff --cc source/blender/blenkernel/intern/pbvh_intern.h
index d93fb83792d,a4ac2744a73..eb9898b5f27
--- a/source/blender/blenkernel/intern/pbvh_intern.h
+++ b/source/blender/blenkernel/intern/pbvh_intern.h
@@@ -205,7 -205,7 +205,9 @@@ struct PBVH
/* Used by DynTopo to invalidate the draw cache. */
bool draw_cache_invalid;
+ struct PBVHGPUFormat *vbo_id;
++
+ PBVHPixels pixels;
};
/* pbvh.c */
diff --cc source/blender/blenloader/intern/versioning_300.c
index 58821987d64,57fd71f8933..a26f8ee3b36
--- a/source/blender/blenloader/intern/versioning_300.c
+++ b/source/blender/blenloader/intern/versioning_300.c
@@@ -3067,11 -3093,113 +3093,120 @@@ void blo_do_versions_300(FileData *fd,
}
}
+ /* Use the curves type enum for the set spline type node, instead of a special one. */
+ FOREACH_NODETREE_BEGIN (bmain, ntree, id) {
+ if (ntree->type == NTREE_GEOMETRY) {
+ LISTBASE_FOREACH (bNode *, node, &ntree->nodes) {
+ if (node->type == GEO_NODE_CURVE_SPLINE_TYPE) {
+ NodeGeometryCurveSplineType *storage = (NodeGeometryCurveSplineType *)node->storage;
+ switch (storage->spline_type) {
+ case 0: /* GEO_NODE_SPLINE_TYPE_BEZIER */
+ storage->spline_type = CURVE_TYPE_BEZIER;
+ break;
+ case 1: /* GEO_NODE_SPLINE_TYPE_NURBS */
+ storage->spline_type = CURVE_TYPE_NURBS;
+ break;
+ case 2: /* GEO_NODE_SPLINE_TYPE_POLY */
+ storage->spline_type = CURVE_TYPE_POLY;
+ break;
+ }
+ }
+ }
+ }
+ }
+ FOREACH_NODETREE_END;
+ }
+
+ if (!MAIN_VERSION_ATLEAST(bmain, 303, 2)) {
+ LISTBASE_FOREACH (bScreen *, screen, &bmain->screens) {
+ LISTBASE_FOREACH (ScrArea *, area, &screen->areabase) {
+ LISTBASE_FOREACH (SpaceLink *, sl, &area->spacedata) {
+ if (sl->spacetype == SPACE_CLIP) {
+ ((SpaceClip *)sl)->mask_info.blend_factor = 1.0;
+ }
+ }
+ }
+ }
+ }
+
+ if (!MAIN_VERSION_ATLEAST(bmain, 303, 3)) {
+ LISTBASE_FOREACH (bScreen *, screen, &bmain->screens) {
+ LISTBASE_FOREACH (ScrArea *, area, &screen->areabase) {
+ LISTBASE_FOREACH (SpaceLink *, sl, &area->spacedata) {
+ if (sl->spacetype == SPACE_CLIP) {
+ ((SpaceClip *)sl)->mask_info.draw_flag |= MASK_DRAWFLAG_SPLINE;
+ }
+ else if (sl->spacetype == SPACE_IMAGE) {
+ ((SpaceImage *)sl)->mask_info.draw_flag |= MASK_DRAWFLAG_SPLINE;
+ }
+ }
+ }
+ }
+ }
+
+ if (!MAIN_VERSION_ATLEAST(bmain, 303, 4)) {
+ FOREACH_NODETREE_BEGIN (bmain, ntree, id) {
+ if (ntree->type == NTREE_COMPOSIT) {
+ LISTBASE_FOREACH (bNode *, node, &ntree->nodes) {
+ if (node->type == CMP_NODE_OUTPUT_FILE) {
+ LISTBASE_FOREACH (bNodeSocket *, sock, &node->inputs) {
+ if (sock->storage) {
+ NodeImageMultiFileSocket *sockdata = (NodeImageMultiFileSocket *)sock->storage;
+ version_fix_image_format_copy(bmain, &sockdata->format);
+ }
+ }
+
+ if (node->storage) {
+ NodeImageMultiFile *nimf = (NodeImageMultiFile *)node->storage;
+ version_fix_image_format_copy(bmain, &nimf->format);
+ }
+ }
+ }
+ }
+ }
+ FOREACH_NODETREE_END;
+
+ LISTBASE_FOREACH (Scene *, scene, &bmain->scenes) {
+ version_fix_image_format_copy(bmain, &scene->r.im_format);
+ }
+ }
+
+ /**
+ * Versioning code until next subversion bump goes here.
+ *
+ * \note Be sure to check when bumping the version:
+ * - "versioning_userdef.c", #blo_do_versions_userdef
+ * - "versioning_userdef.c", #do_versions_theme
+ *
+ * \note Keep this message at the bottom of the function.
+ */
+ {
+ /* Keep this block, even when empty. */
+
+ /* Fix for T98925 - remove channels region, that was initialized in incorrect editor types. */
+ for (bScreen *screen = bmain->screens.first; screen; screen = screen->id.next) {
+ LISTBASE_FOREACH (ScrArea *, area, &screen->areabase) {
+ LISTBASE_FOREACH (SpaceLink *, sl, &area->spacedata) {
+ if (ELEM(sl->spacetype, SPACE_ACTION, SPACE_CLIP, SPACE_GRAPH, SPACE_NLA, SPACE_SEQ)) {
+ continue;
+ }
+
+ ListBase *regionbase = (sl == area->spacedata.first) ? &area->regionbase :
+ &sl->regionbase;
+ ARegion *channels_region = BKE_region_find_in_listbase_by_type(regionbase,
+ RGN_TYPE_CHANNELS);
+ if (channels_region) {
+ BLI_freelinkN(regionbase, channels_region);
+ }
+ }
+ }
+ }
++
+ /* UVSeam fixing distance. */
+ if (!DNA_struct_elem_find(fd->filesdna, "Image", "short", "seamfix_iter")) {
+ LISTBASE_FOREACH (Image *, image, &bmain->images) {
+ image->seamfix_iter = 2;
+ }
+ }
}
}
More information about the Bf-blender-cvs
mailing list