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:
-rw-r--r--release/scripts/startup/bl_ui/space_view3d_toolbar.py7
-rw-r--r--source/blender/blenkernel/BKE_brush.h3
-rw-r--r--source/blender/blenkernel/intern/brush.c5
-rw-r--r--source/blender/editors/sculpt_paint/sculpt.c21
-rw-r--r--source/blender/makesrna/intern/rna_brush.c7
5 files changed, 11 insertions, 32 deletions
diff --git a/release/scripts/startup/bl_ui/space_view3d_toolbar.py b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
index ee7191f4662..d01df810307 100644
--- a/release/scripts/startup/bl_ui/space_view3d_toolbar.py
+++ b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
@@ -642,10 +642,9 @@ class VIEW3D_PT_tools_brush(Panel, View3DPaintPanel):
row.prop(brush, "height", slider=True, text="Height")
# use_frontface
- if capabilities.has_frontface:
- col.separator()
- row = col.row()
- row.prop(brush, "use_frontface", text="Front Faces Only")
+ col.separator()
+ row = col.row()
+ row.prop(brush, "use_frontface", text="Front Faces Only")
# direction
col.separator()
diff --git a/source/blender/blenkernel/BKE_brush.h b/source/blender/blenkernel/BKE_brush.h
index ea2aa9c8bd3..b4c5f47cf25 100644
--- a/source/blender/blenkernel/BKE_brush.h
+++ b/source/blender/blenkernel/BKE_brush.h
@@ -111,8 +111,5 @@ void BKE_brush_scale_size(int *BKE_brush_size_get,
/* debugging only */
void BKE_brush_debug_print_state(struct Brush *br);
-/* sculpt */
-bool BKE_sculpt_brush_frontface_only(struct Brush *);
-
#endif
diff --git a/source/blender/blenkernel/intern/brush.c b/source/blender/blenkernel/intern/brush.c
index 7864216f39e..790c1f09ff0 100644
--- a/source/blender/blenkernel/intern/brush.c
+++ b/source/blender/blenkernel/intern/brush.c
@@ -1048,8 +1048,3 @@ struct ImBuf *BKE_brush_gen_radial_control_imbuf(Brush *br, bool secondary)
return im;
}
-
-bool BKE_sculpt_brush_frontface_only(struct Brush *br)
-{
- return br->sculpt_tool == SCULPT_TOOL_CLAY_STRIPS;
-}
diff --git a/source/blender/editors/sculpt_paint/sculpt.c b/source/blender/editors/sculpt_paint/sculpt.c
index a7d851d7a67..d07f447b2fa 100644
--- a/source/blender/editors/sculpt_paint/sculpt.c
+++ b/source/blender/editors/sculpt_paint/sculpt.c
@@ -318,8 +318,6 @@ typedef struct StrokeCache {
float plane_trim_squared;
rcti previous_r; /* previous redraw rectangle */
-
- bool frontface; /* use front face */
} StrokeCache;
/************** Access to original unmodified vertex data *************/
@@ -671,10 +669,10 @@ static int sculpt_brush_test_cube(SculptBrushTest *test, float co[3], float loca
}
}
-static float frontface(bool ff, const float sculpt_normal[3],
+static float frontface(Brush *br, const float sculpt_normal[3],
const short no[3], const float fno[3])
{
- if (ff) {
+ if (br->flag & BRUSH_FRONTFACE) {
float dot;
if (no) {
@@ -1011,7 +1009,7 @@ static float tex_strength(SculptSession *ss, Brush *br,
/* Falloff curve */
avg *= BKE_brush_curve_strength(br, len, cache->radius);
- avg *= frontface(cache->frontface, sculpt_normal, vno, fno);
+ avg *= frontface(br, sculpt_normal, vno, fno);
/* Paint mask */
avg *= 1.0f - mask;
@@ -1289,13 +1287,13 @@ static void update_brush_local_mat(Sculpt *sd, Object *ob)
/* Test whether the StrokeCache.sculpt_normal needs update in
* do_brush_action() */
-static int brush_needs_sculpt_normal(const Brush *brush, SculptSession *ss)
+static int brush_needs_sculpt_normal(const Brush *brush)
{
return ((ELEM(brush->sculpt_tool,
SCULPT_TOOL_GRAB,
SCULPT_TOOL_SNAKE_HOOK) &&
((brush->normal_weight > 0) ||
- ss->cache->frontface)) ||
+ (brush->flag & BRUSH_FRONTFACE))) ||
ELEM7(brush->sculpt_tool,
SCULPT_TOOL_BLOB,
@@ -3139,7 +3137,7 @@ static void do_brush_action(Sculpt *sd, Object *ob, Brush *brush)
BKE_pbvh_node_mark_update(nodes[n]);
}
- if (brush_needs_sculpt_normal(brush, ss))
+ if (brush_needs_sculpt_normal(brush))
update_sculpt_normal(sd, ob, nodes, totnode);
if (brush->mtex.brush_map_mode == MTEX_MAP_MODE_AREA)
@@ -3905,10 +3903,10 @@ static void sculpt_update_cache_invariants(bContext *C, Sculpt *sd, SculptSessio
cache->original = 1;
}
- if (ELEM8(brush->sculpt_tool,
+ if (ELEM9(brush->sculpt_tool,
SCULPT_TOOL_DRAW, SCULPT_TOOL_CREASE, SCULPT_TOOL_BLOB,
SCULPT_TOOL_LAYER, SCULPT_TOOL_INFLATE, SCULPT_TOOL_CLAY,
- SCULPT_TOOL_CLAY_STRIPS, SCULPT_TOOL_ROTATE))
+ SCULPT_TOOL_CLAY_STRIPS, SCULPT_TOOL_ROTATE, SCULPT_TOOL_FLATTEN))
{
if (!(brush->flag & BRUSH_ACCUMULATE)) {
cache->original = 1;
@@ -3922,9 +3920,6 @@ static void sculpt_update_cache_invariants(bContext *C, Sculpt *sd, SculptSessio
cache->previous_vertex_rotation = 0;
cache->init_dir_set = false;
- cache->frontface = ((brush->flag & BRUSH_FRONTFACE) != 0) ||
- BKE_sculpt_brush_frontface_only(brush);
-
sculpt_omp_start(sd, ss);
}
diff --git a/source/blender/makesrna/intern/rna_brush.c b/source/blender/makesrna/intern/rna_brush.c
index 78a1e7aa368..405d38e9683 100644
--- a/source/blender/makesrna/intern/rna_brush.c
+++ b/source/blender/makesrna/intern/rna_brush.c
@@ -237,12 +237,6 @@ static int rna_SculptToolCapabilities_has_strength_get(PointerRNA *ptr)
return !ELEM(br->sculpt_tool, SCULPT_TOOL_GRAB, SCULPT_TOOL_SNAKE_HOOK);
}
-static int rna_SculptToolCapabilities_has_frontface_get(PointerRNA *ptr)
-{
- Brush *br = (Brush *)ptr->data;
- return !BKE_sculpt_brush_frontface_only(br);
-}
-
static int rna_BrushCapabilities_has_texture_angle_get(PointerRNA *ptr)
{
Brush *br = (Brush *)ptr->data;
@@ -562,7 +556,6 @@ static void rna_def_sculpt_capabilities(BlenderRNA *brna)
SCULPT_TOOL_CAPABILITY(has_smooth_stroke, "Has Smooth Stroke");
SCULPT_TOOL_CAPABILITY(has_space_attenuation, "Has Space Attenuation");
SCULPT_TOOL_CAPABILITY(has_strength, "Has Strength");
- SCULPT_TOOL_CAPABILITY(has_frontface, "Has Front Facing");
#undef SCULPT_CAPABILITY
}