Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Goudey <h.goudey@me.com>2022-02-10 19:58:35 +0300
committerHans Goudey <h.goudey@me.com>2022-02-10 19:59:20 +0300
commit7682d7de046185382985999f8f6b6e7dcf860582 (patch)
tree6fae3aeb24d1d1a5d40e40bc489d8498566583fb /source/blender/editors/sculpt_paint/sculpt_paint_color.c
parent2cd1472f86dd0c3f8792f8d28b1238f9dffb3739 (diff)
Refactor: Move PBVH update tag out of MVert
This is part of the project of converting `MVert` into `float3`. (more details in T93602), The pbvh update flag is removed and replaced with a bitmap stored in the PBVH structure. This patch is similar to D13878. This is mainly setup for an eventual performance improvement by removing the extra data from mesh vertices, but if it's consistent with testing in the other patch doing the same thing for another "temp tag", then it may actually increase the speed of sculpt code slightly, since less memory needs to be loaded when checking/changing the flags. Differential Revision: https://developer.blender.org/D14000
Diffstat (limited to 'source/blender/editors/sculpt_paint/sculpt_paint_color.c')
-rw-r--r--source/blender/editors/sculpt_paint/sculpt_paint_color.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/editors/sculpt_paint/sculpt_paint_color.c b/source/blender/editors/sculpt_paint/sculpt_paint_color.c
index 936ebb7e8f7..e4f548bc07f 100644
--- a/source/blender/editors/sculpt_paint/sculpt_paint_color.c
+++ b/source/blender/editors/sculpt_paint/sculpt_paint_color.c
@@ -104,7 +104,7 @@ static void do_color_smooth_task_cb_exec(void *__restrict userdata,
blend_color_interpolate_float(vd.col, vd.col, smooth_color, fade);
if (vd.mvert) {
- vd.mvert->flag |= ME_VERT_PBVH_UPDATE;
+ BKE_pbvh_vert_mark_update(ss->pbvh, vd.index);
}
}
BKE_pbvh_vertex_iter_end;
@@ -198,7 +198,7 @@ static void do_paint_brush_task_cb_ex(void *__restrict userdata,
CLAMP4(vd.col, 0.0f, 1.0f);
if (vd.mvert) {
- vd.mvert->flag |= ME_VERT_PBVH_UPDATE;
+ BKE_pbvh_vert_mark_update(ss->pbvh, vd.index);
}
}
BKE_pbvh_vertex_iter_end;
@@ -436,7 +436,7 @@ static void do_smear_brush_task_cb_exec(void *__restrict userdata,
blend_color_interpolate_float(vd.col, ss->cache->prev_colors[vd.index], interp_color, fade);
if (vd.mvert) {
- vd.mvert->flag |= ME_VERT_PBVH_UPDATE;
+ BKE_pbvh_vert_mark_update(ss->pbvh, vd.index);
}
}
BKE_pbvh_vertex_iter_end;