From b37482bc3d86e74f03568d62fa0184e1e78767e6 Mon Sep 17 00:00:00 2001 From: Pablo Dobarro Date: Tue, 10 Mar 2020 15:41:29 +0100 Subject: Fix T74613: Assign the default face set color in the versioning code A default face set color was not being set in previously saved meshes, so it will always render the default face set with a random color until the colors were recalculated. Bump subversion to 283.8 Reviewed By: dfelinto Maniphest Tasks: T74613 Differential Revision: https://developer.blender.org/D7094 --- source/blender/blenkernel/BKE_blender_version.h | 2 +- source/blender/blenkernel/intern/paint.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) (limited to 'source/blender/blenkernel') diff --git a/source/blender/blenkernel/BKE_blender_version.h b/source/blender/blenkernel/BKE_blender_version.h index 233c385c247..eb7078213da 100644 --- a/source/blender/blenkernel/BKE_blender_version.h +++ b/source/blender/blenkernel/BKE_blender_version.h @@ -27,7 +27,7 @@ * \note Use #STRINGIFY() rather than defining with quotes. */ #define BLENDER_VERSION 283 -#define BLENDER_SUBVERSION 7 +#define BLENDER_SUBVERSION 8 /** Several breakages with 280, e.g. collections vs layers. */ #define BLENDER_MINVERSION 280 #define BLENDER_MINSUBVERSION 0 diff --git a/source/blender/blenkernel/intern/paint.c b/source/blender/blenkernel/intern/paint.c index 6afa498cf86..eb21883f0dd 100644 --- a/source/blender/blenkernel/intern/paint.c +++ b/source/blender/blenkernel/intern/paint.c @@ -1545,6 +1545,9 @@ static void sculpt_update_object( for (int i = 0; i < me->totpoly; i++) { ss->face_sets[i] = 1; } + + /* Set the default face set color if the datalayer did not exist. */ + me->face_sets_color_default = 1; } ss->face_sets = CustomData_get_layer(&me->pdata, CD_SCULPT_FACE_SETS); } @@ -1555,6 +1558,8 @@ static void sculpt_update_object( BLI_assert(pbvh == ss->pbvh); UNUSED_VARS_NDEBUG(pbvh); + BKE_pbvh_face_sets_color_set(ss->pbvh, me->face_sets_color_seed, me->face_sets_color_default); + if (need_pmap && ob->type == OB_MESH && !ss->pmap) { BKE_mesh_vert_poly_map_create( &ss->pmap, &ss->pmap_mem, me->mpoly, me->mloop, me->totvert, me->totpoly, me->totloop); -- cgit v1.2.3