Commit: 8ef757df3d2ab5867f2361908e524a7de0f4489e
Author: Campbell Barton
Date:   Fri Oct 6 18:57:37 2017 +1100
Branches: master
https://developer.blender.org/rB8ef757df3d2ab5867f2361908e524a7de0f4489e

Vertex Paint: use brush front-face setting

Follow sculpt mode more closely by using the brush front-face option.

===================================================================

M       release/scripts/startup/bl_ui/space_view3d_toolbar.py
M       source/blender/editors/sculpt_paint/paint_vertex.c
M       source/blender/makesdna/DNA_scene_types.h
M       source/blender/makesrna/intern/rna_sculpt_paint.c

===================================================================

diff --git a/release/scripts/startup/bl_ui/space_view3d_toolbar.py 
b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
index d795e09e435..62e88e47e20 100644
--- a/release/scripts/startup/bl_ui/space_view3d_toolbar.py
+++ b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
@@ -1080,10 +1080,8 @@ class VIEW3D_PT_tools_brush(Panel, View3DPaintPanel):
 
             # use_frontface
             col.separator()
-            row = col.row()
-            row.prop(brush, "use_frontface", text="Front Faces Only")
-
-            col.row().prop(brush, "use_projected", expand=True)
+            col.prop(brush, "use_frontface", text="Front Faces Only")
+            col.prop(brush, "use_projected")
 
             # direction
             col.separator()
@@ -1133,13 +1131,15 @@ class VIEW3D_PT_tools_brush(Panel, View3DPaintPanel):
             self.prop_unified_strength(row, context, brush, "strength", 
text="Strength")
             self.prop_unified_strength(row, context, brush, 
"use_pressure_strength")
 
+            col.separator()
             col.prop(brush, "vertex_tool", text="Blend")
 
             if brush.vertex_tool != 'SMEAR':
                 col.prop(brush, "use_accumulate")
                 col.separator()
 
-            col.row().prop(brush, "use_projected")
+            col.prop(brush, "use_frontface", text="Front Faces Only")
+            col.prop(brush, "use_projected")
 
             col = layout.column()
             col.prop(toolsettings, "use_auto_normalize", text="Auto Normalize")
@@ -1166,17 +1166,16 @@ class VIEW3D_PT_tools_brush(Panel, View3DPaintPanel):
             self.prop_unified_strength(row, context, brush, "strength", 
text="Strength")
             self.prop_unified_strength(row, context, brush, 
"use_pressure_strength")
 
-            # XXX - TODO
-            # row = col.row(align=True)
-            # row.prop(brush, "jitter", slider=True)
-            # row.prop(brush, "use_pressure_jitter", toggle=True, text="")
             col.separator()
             col.prop(brush, "vertex_tool", text="Blend")
-
-            col.prop(brush, "use_accumulate")
             col.prop(brush, "use_alpha")
 
-            col.row().prop("use_projected")
+            if brush.vertex_tool != 'SMEAR':
+                col.prop(brush, "use_accumulate")
+                col.separator()
+
+            col.prop(brush, "use_frontface", text="Front Faces Only")
+            col.prop(brush, "use_projected")
 
             col.separator()
             col.template_ID(settings, "palette", new="palette.new")
@@ -1769,8 +1768,7 @@ class VIEW3D_PT_tools_weightpaint_options(Panel, 
View3DPaintPanel):
 
         col = layout.column()
         col.label("Falloff:")
-        row = col.row()
-        row.prop(wpaint, "use_backface_culling")
+
         row = col.row()
         row.prop(wpaint, "use_normal_falloff")
         sub = row.row()
@@ -1811,8 +1809,6 @@ class VIEW3D_PT_tools_vertexpaint(Panel, 
View3DPaintPanel):
         col = layout.column()
         col.label("Falloff:")
         row = col.row()
-        row.prop(vpaint, "use_backface_culling")
-        row = col.row()
         row.prop(vpaint, "use_normal_falloff")
         sub = row.row()
         sub.active = (vpaint.use_normal_falloff)
diff --git a/source/blender/editors/sculpt_paint/paint_vertex.c 
b/source/blender/editors/sculpt_paint/paint_vertex.c
index 7c54277639a..1487b75a4d6 100644
--- a/source/blender/editors/sculpt_paint/paint_vertex.c
+++ b/source/blender/editors/sculpt_paint/paint_vertex.c
@@ -143,7 +143,7 @@ static float view_angle_limits_apply_falloff(
 
 static bool vwpaint_use_normal(const VPaint *vp)
 {
-       return ((vp->flag & VP_FLAG_PROJECT_BACKFACE) == 0) ||
+       return ((vp->paint.brush->flag & BRUSH_FRONTFACE) != 0) ||
               ((vp->flag & VP_FLAG_PROJECT_FLAT) == 0);
 }
 
@@ -1556,7 +1556,7 @@ static void do_wpaint_brush_blur_task_cb_ex(
                                        float brush_strength = cache->bstrength;
                                        const float angle_cos = (use_normal && 
vd.no) ?
                                                
dot_vf3vs3(ss->cache->sculpt_normal_symm, vd.no) : 1.0f;
-                                       if (((data->vp->flag & 
VP_FLAG_PROJECT_BACKFACE) ||
+                                       if (((brush->flag & BRUSH_FRONTFACE) == 
0 ||
                                             (angle_cos > 0.0f)) &&
                                            ((data->vp->flag & 
VP_FLAG_PROJECT_FLAT) ||
                                             
view_angle_limits_apply_falloff(&data->wpd->normal_angle_precalc, angle_cos, 
&brush_strength)))
@@ -1632,7 +1632,7 @@ static void do_wpaint_brush_smear_task_cb_ex(
                                        float brush_strength = cache->bstrength;
                                        const float angle_cos = (use_normal && 
vd.no) ?
                                                
dot_vf3vs3(ss->cache->sculpt_normal_symm, vd.no) : 1.0f;
-                                       if (((data->vp->flag & 
VP_FLAG_PROJECT_BACKFACE) ||
+                                       if (((brush->flag & BRUSH_FRONTFACE) == 
0 ||
                                             (angle_cos > 0.0f)) &&
                                            ((data->vp->flag & 
VP_FLAG_PROJECT_FLAT) ||
                                             
view_angle_limits_apply_falloff(&data->wpd->normal_angle_precalc, angle_cos, 
&brush_strength)))
@@ -1733,7 +1733,7 @@ static void do_wpaint_brush_draw_task_cb_ex(
                                float brush_strength = cache->bstrength;
                                const float angle_cos = (use_normal && vd.no) ?
                                        
dot_vf3vs3(ss->cache->sculpt_normal_symm, vd.no) : 1.0f;
-                               if (((data->vp->flag & 
VP_FLAG_PROJECT_BACKFACE) ||
+                               if (((brush->flag & BRUSH_FRONTFACE) == 0 ||
                                     (angle_cos > 0.0f)) &&
                                    ((data->vp->flag & VP_FLAG_PROJECT_FLAT) ||
                                     
view_angle_limits_apply_falloff(&data->wpd->normal_angle_precalc, angle_cos, 
&brush_strength)))
@@ -2530,7 +2530,7 @@ static void do_vpaint_brush_draw_task_cb_ex(
                                float brush_strength = cache->bstrength;
                                const float angle_cos = (use_normal && vd.no) ?
                                        
dot_vf3vs3(ss->cache->sculpt_normal_symm, vd.no) : 1.0f;
-                               if (((data->vp->flag & 
VP_FLAG_PROJECT_BACKFACE) ||
+                               if (((brush->flag & BRUSH_FRONTFACE) == 0 ||
                                     (angle_cos > 0.0f)) &&
                                    ((data->vp->flag & VP_FLAG_PROJECT_FLAT) ||
                                     
view_angle_limits_apply_falloff(&data->vpd->normal_angle_precalc, angle_cos, 
&brush_strength)))
@@ -2616,7 +2616,7 @@ static void do_vpaint_brush_blur_task_cb_ex(
                                float brush_strength = cache->bstrength;
                                const float angle_cos = (use_normal && vd.no) ?
                                        
dot_vf3vs3(ss->cache->sculpt_normal_symm, vd.no) : 1.0f;
-                               if (((data->vp->flag & 
VP_FLAG_PROJECT_BACKFACE) ||
+                               if (((brush->flag & BRUSH_FRONTFACE) == 0 ||
                                     (angle_cos > 0.0f)) &&
                                    ((data->vp->flag & VP_FLAG_PROJECT_FLAT) ||
                                     
view_angle_limits_apply_falloff(&data->vpd->normal_angle_precalc, angle_cos, 
&brush_strength)))
@@ -2731,7 +2731,7 @@ static void do_vpaint_brush_smear_task_cb_ex(
                                        float brush_strength = cache->bstrength;
                                        const float angle_cos = (use_normal && 
vd.no) ?
                                                
dot_vf3vs3(ss->cache->sculpt_normal_symm, vd.no) : 1.0f;
-                                       if (((data->vp->flag & 
VP_FLAG_PROJECT_BACKFACE) ||
+                                       if (((brush->flag & BRUSH_FRONTFACE) == 
0 ||
                                             (angle_cos > 0.0f)) &&
                                            ((data->vp->flag & 
VP_FLAG_PROJECT_FLAT) ||
                                             
view_angle_limits_apply_falloff(&data->vpd->normal_angle_precalc, angle_cos, 
&brush_strength)))
diff --git a/source/blender/makesdna/DNA_scene_types.h 
b/source/blender/makesdna/DNA_scene_types.h
index 830c584529c..acd712843de 100644
--- a/source/blender/makesdna/DNA_scene_types.h
+++ b/source/blender/makesdna/DNA_scene_types.h
@@ -1125,7 +1125,6 @@ typedef struct VPaint {
 
 /* VPaint.flag */
 enum {
-       VP_FLAG_PROJECT_BACKFACE    = (1 << 0),
        /* TODO */
        // VP_FLAG_PROJECT_XRAY        = (1 << 1),
        VP_FLAG_PROJECT_FLAT        = (1 << 3),
diff --git a/source/blender/makesrna/intern/rna_sculpt_paint.c 
b/source/blender/makesrna/intern/rna_sculpt_paint.c
index 6bd4aefed7a..b12fece82d1 100644
--- a/source/blender/makesrna/intern/rna_sculpt_paint.c
+++ b/source/blender/makesrna/intern/rna_sculpt_paint.c
@@ -671,11 +671,6 @@ static void rna_def_vertex_paint(BlenderRNA *brna)
        RNA_def_struct_path_func(srna, "rna_VertexPaint_path");
        RNA_def_struct_ui_text(srna, "Vertex Paint", "Properties of vertex and 
weight paint mode");
 
-       prop = RNA_def_property(srna, "use_backface_culling", PROP_BOOLEAN, 
PROP_NONE);
-       RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", 
VP_FLAG_PROJECT_BACKFACE);
-       RNA_def_property_ui_text(prop, "Cull", "Ignore vertices pointing away 
from the view (faster)");
-       RNA_def_property_update(prop, NC_SCENE | ND_TOOLSETTINGS, NULL);
-
        prop = RNA_def_property(srna, "use_normal_falloff", PROP_BOOLEAN, 
PROP_NONE);
        RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", 
VP_FLAG_PROJECT_FLAT);
        RNA_def_property_ui_text(prop, "Normals", "Paint most on faces pointing 
towards the view");

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to