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");