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:
Diffstat (limited to 'release/scripts/startup/bl_ui/properties_paint_common.py')
-rw-r--r--release/scripts/startup/bl_ui/properties_paint_common.py72
1 files changed, 46 insertions, 26 deletions
diff --git a/release/scripts/startup/bl_ui/properties_paint_common.py b/release/scripts/startup/bl_ui/properties_paint_common.py
index 72a87703bd5..0e49a506e73 100644
--- a/release/scripts/startup/bl_ui/properties_paint_common.py
+++ b/release/scripts/startup/bl_ui/properties_paint_common.py
@@ -928,60 +928,80 @@ def brush_settings_advanced(layout, context, brush, popover=False):
use_frontface = False
if mode == 'SCULPT':
+ sculpt = context.tool_settings.sculpt
capabilities = brush.sculpt_capabilities
use_accumulate = capabilities.has_accumulate
use_frontface = True
col = layout.column(heading="Auto-Masking", align=True)
- # topology automasking
+ col = layout.column(align=True)
col.prop(brush, "use_automasking_topology", text="Topology")
-
- # face masks automasking
col.prop(brush, "use_automasking_face_sets", text="Face Sets")
- # boundary edges/face sets automasking
+ layout.separator()
+
+ col = layout.column(align=True)
col.prop(brush, "use_automasking_boundary_edges", text="Mesh Boundary")
col.prop(brush, "use_automasking_boundary_face_sets", text="Face Sets Boundary")
- col.prop(brush, "use_automasking_cavity", text="Cavity")
- col.prop(brush, "use_automasking_cavity_inverted", text="Cavity (Inverted)")
- col.prop(brush, "use_automasking_start_normal", text="Area Normal")
- col.prop(brush, "use_automasking_view_normal", text="View Normal")
- col.separator()
- col.prop(brush, "automasking_boundary_edges_propagation_steps")
+ if brush.use_automasking_boundary_edges or brush.use_automasking_boundary_face_sets:
+ col = layout.column()
+ col.use_property_split = False
+ split = col.split(factor=0.4)
+ col = split.column()
+ split.prop(brush, "automasking_boundary_edges_propagation_steps")
- sculpt = context.tool_settings.sculpt
+ layout.separator()
- if brush.use_automasking_start_normal:
- col.separator()
+ col = layout.column(align=True)
+ row = col.row()
+ row.prop(brush, "use_automasking_cavity", text="Cavity")
- col.prop(sculpt, "automasking_start_normal_limit")
- col.prop(sculpt, "automasking_start_normal_falloff")
+ is_cavity_active = brush.use_automasking_cavity or brush.use_automasking_cavity_inverted
- if brush.use_automasking_view_normal:
- col.separator()
+ if is_cavity_active:
+ row.operator("sculpt.mask_from_cavity", text="Create Mask")
- col.prop(brush, "use_automasking_view_occlusion", text="Occlusion")
- col.prop(sculpt, "automasking_view_normal_limit")
- col.prop(sculpt, "automasking_view_normal_falloff")
+ col.prop(brush, "use_automasking_cavity_inverted", text="Cavity (inverted)")
- if brush.use_automasking_cavity or brush.use_automasking_cavity_inverted:
- col.separator()
+ if is_cavity_active:
+ col = layout.column(align=True)
+ col.prop(brush, "automasking_cavity_factor", text="Factor")
+ col.prop(brush, "automasking_cavity_blur_steps", text="Blur")
- col.prop(brush, "automasking_cavity_factor", text="Cavity Factor")
- col.prop(brush, "automasking_cavity_blur_steps", text="Cavity Blur")
- col.prop(brush, "use_automasking_custom_cavity_curve", text="Use Curve")
+ col = layout.column()
+ col.prop(brush, "use_automasking_custom_cavity_curve", text="Custom Curve")
if brush.use_automasking_custom_cavity_curve:
col.template_curve_mapping(brush, "automasking_cavity_curve")
layout.separator()
+ col = layout.column(align=True)
+ col.prop(brush, "use_automasking_view_normal", text="View Normal")
+
+ if brush.use_automasking_view_normal:
+ col.prop(brush, "use_automasking_view_occlusion", text="Occlusion")
+ subcol = col.column(align=True)
+ subcol.active = not brush.use_automasking_view_occlusion
+ subcol.prop(sculpt, "automasking_view_normal_limit", text="Limit")
+ subcol.prop(sculpt, "automasking_view_normal_falloff", text="Falloff")
+
+ col = layout.column()
+ col.prop(brush, "use_automasking_start_normal", text="Area Normal")
+
+ if brush.use_automasking_start_normal:
+ col = layout.column(align=True)
+ col.prop(sculpt, "automasking_start_normal_limit", text="Limit")
+ col.prop(sculpt, "automasking_start_normal_falloff", text="Falloff")
+
+ layout.separator()
+
# sculpt plane settings
if capabilities.has_sculpt_plane:
layout.prop(brush, "sculpt_plane")
- col = layout.column(heading="Use Original", align=True)
+ col = layout.column(heading="Original", align=True)
col.prop(brush, "use_original_normal", text="Normal")
col.prop(brush, "use_original_plane", text="Plane")
layout.separator()