[Bf-blender-cvs] [24bbe059132] sculpt-dev: Add automatic falloff type switching to expand
Pablo Dobarro
noreply at git.blender.org
Thu Jan 14 02:05:28 CET 2021
Commit: 24bbe0591327f6f925f3023022167e3751c8bf20
Author: Pablo Dobarro
Date: Thu Jan 14 02:03:49 2021 +0100
Branches: sculpt-dev
https://developer.blender.org/rB24bbe0591327f6f925f3023022167e3751c8bf20
Add automatic falloff type switching to expand
===================================================================
M source/blender/editors/sculpt_paint/sculpt_expand.c
M source/blender/editors/sculpt_paint/sculpt_intern.h
===================================================================
diff --git a/source/blender/editors/sculpt_paint/sculpt_expand.c b/source/blender/editors/sculpt_paint/sculpt_expand.c
index 73458d4590e..37b472ded30 100644
--- a/source/blender/editors/sculpt_paint/sculpt_expand.c
+++ b/source/blender/editors/sculpt_paint/sculpt_expand.c
@@ -539,6 +539,7 @@ static int sculpt_expand_invoke(bContext *C, wmOperator *op, const wmEvent *even
/* Update object. */
BKE_sculpt_update_object_for_edit(depsgraph, ob, true, true, false);
SCULPT_vertex_random_access_ensure(ss);
+ SCULPT_boundary_info_ensure(ob);
SCULPT_undo_push_begin(ob, "expand");
/* Create the Expand Cache. */
@@ -561,8 +562,14 @@ static int sculpt_expand_invoke(bContext *C, wmOperator *op, const wmEvent *even
sculpt_expand_initial_state_store(ob, ss->expand_cache);
/* Initialize the factors. */
+
+ eSculptExpandFalloffType falloff_type = SCULPT_EXPAND_FALLOFF_GEODESICS;
+ if (SCULPT_vertex_is_boundary(ss, initial_vertex)) {
+ falloff_type = SCULPT_EXPAND_FALLOFF_BOUNDARY_TOPOLOGY;
+ }
+
sculpt_expand_falloff_factors_from_vertex_and_symm_create(
- ss->expand_cache, sd, ob, initial_vertex, SCULPT_EXPAND_FALLOFF_BOUNDARY_TOPOLOGY);
+ ss->expand_cache, sd, ob, initial_vertex, falloff_type);
/* Initial update. */
sculpt_expand_update_for_vertex(C, ob, initial_vertex);
diff --git a/source/blender/editors/sculpt_paint/sculpt_intern.h b/source/blender/editors/sculpt_paint/sculpt_intern.h
index b149864b545..0c2b4d5f53a 100644
--- a/source/blender/editors/sculpt_paint/sculpt_intern.h
+++ b/source/blender/editors/sculpt_paint/sculpt_intern.h
@@ -1175,12 +1175,15 @@ typedef struct ExpandCache {
int totnode;
bool invert;
-
bool mask_preserve_previous;
+ int update_face_set;
+
eSculptExpandTargetType target;
float *initial_mask;
int *initial_face_sets;
+
+
} ExpandCache;
typedef struct FilterCache {
More information about the Bf-blender-cvs
mailing list