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:
authorHans Goudey <h.goudey@me.com>2021-03-17 20:46:41 +0300
committerHans Goudey <h.goudey@me.com>2021-03-17 20:46:41 +0300
commitbe33d3eccdcdf252201883ea681e261e967c87fc (patch)
treec2e4392fe5dd28f068ede71d49240c1f088be5e7
parent0ff3f96a1b0193d69dae5ca69e7c93d6cdf34558 (diff)
UI: Tweak labels, descriptions, and panel layout for line art
Changes include: - Use `IFACE_` for UI labels set in the modifier panels - Use a sub-sub-panel for transparency - Fix grammar and spelling mistakes - Use more natural user-friendly wording - Make descriptions more specific and more useful - Don't capitalize "line art" in descriptions (tooltips) These changes are aimed at making the UI strings more consistent with the rest of the UI and being more helpful to someone trying to understand how to use the modifier. Differential Revision: https://developer.blender.org/D10750
-rw-r--r--release/scripts/startup/bl_ui/properties_collection.py16
-rw-r--r--source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c103
-rw-r--r--source/blender/gpencil_modifiers/intern/lineart/lineart_ops.c4
-rw-r--r--source/blender/makesrna/intern/rna_collection.c14
-rw-r--r--source/blender/makesrna/intern/rna_gpencil_modifier.c73
-rw-r--r--source/blender/makesrna/intern/rna_material.c20
-rw-r--r--source/blender/makesrna/intern/rna_object.c36
7 files changed, 150 insertions, 116 deletions
diff --git a/release/scripts/startup/bl_ui/properties_collection.py b/release/scripts/startup/bl_ui/properties_collection.py
index fa4c3cdb779..186314f9591 100644
--- a/release/scripts/startup/bl_ui/properties_collection.py
+++ b/release/scripts/startup/bl_ui/properties_collection.py
@@ -62,8 +62,8 @@ class COLLECTION_PT_collection_flags(CollectionButtonsPanel, Panel):
col.prop(vlc, "indirect_only", toggle=False)
-class COLLECTION_PT_lineart_collection(CollectionButtonsPanel, Panel):
- bl_label = "Line Art"
+class COLLECTION_PT_instancing(CollectionButtonsPanel, Panel):
+ bl_label = "Instancing"
def draw(self, context):
layout = self.layout
@@ -72,10 +72,11 @@ class COLLECTION_PT_lineart_collection(CollectionButtonsPanel, Panel):
collection = context.collection
row = layout.row()
- row.prop(collection, "lineart_usage")
+ row.prop(collection, "instance_offset")
-class COLLECTION_PT_instancing(CollectionButtonsPanel, Panel):
- bl_label = "Instancing"
+
+class COLLECTION_PT_lineart_collection(CollectionButtonsPanel, Panel):
+ bl_label = "Line Art"
def draw(self, context):
layout = self.layout
@@ -84,12 +85,13 @@ class COLLECTION_PT_instancing(CollectionButtonsPanel, Panel):
collection = context.collection
row = layout.row()
- row.prop(collection, "instance_offset")
+ row.prop(collection, "lineart_usage")
+
classes = (
COLLECTION_PT_collection_flags,
- COLLECTION_PT_lineart_collection,
COLLECTION_PT_instancing,
+ COLLECTION_PT_lineart_collection,
)
if __name__ == "__main__": # only for live edit.
diff --git a/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c b/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
index 7fed771dabe..67563c5679f 100644
--- a/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
+++ b/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
@@ -267,29 +267,28 @@ static void panel_draw(const bContext *UNUSED(C), Panel *panel)
uiLayout *col = uiLayoutColumnWithHeading(layout, true, IFACE_("Edge Types"));
- uiItemR(col, ptr, "use_contour", 0, "Contour", ICON_NONE);
- uiItemR(col, ptr, "use_material", 0, "Material", ICON_NONE);
- uiItemR(col, ptr, "use_edge_mark", 0, "Edge Marks", ICON_NONE);
- uiItemR(col, ptr, "use_intersection", 0, "Intersection", ICON_NONE);
+ uiItemR(col, ptr, "use_contour", 0, IFACE_("Contour"), ICON_NONE);
+ uiItemR(col, ptr, "use_material", 0, IFACE_("Material Borders"), ICON_NONE);
+ uiItemR(col, ptr, "use_edge_mark", 0, IFACE_("Edge Marks"), ICON_NONE);
+ uiItemR(col, ptr, "use_intersection", 0, IFACE_("Intersections"), ICON_NONE);
+ uiItemR(col, ptr, "use_crease", 0, IFACE_("Crease"), ICON_NONE);
+ uiLayout *sub = uiLayoutRow(col, true);
+ uiLayoutSetActive(sub, RNA_boolean_get(ptr, "use_crease"));
+ uiLayoutSetPropSep(sub, true);
- uiLayout *row = uiLayoutRow(col, true);
- /* Don't automatically add the "animate property" button. */
- uiLayoutSetPropDecorate(row, false);
-
- const bool use_crease = RNA_boolean_get(ptr, "use_crease");
- uiLayout *sub = uiLayoutRow(row, true);
- uiItemR(sub, ptr, "use_crease", 0, "Crease", ICON_NONE);
- sub = uiLayoutRow(sub, true);
- uiLayoutSetEnabled(sub, use_crease);
- uiItemR(sub, ptr, "crease_threshold", UI_ITEM_R_SLIDER, "", ICON_NONE);
- uiItemDecoratorR(row, ptr, "crease_threshold", 0);
+ uiItemR(sub, ptr, "crease_threshold", UI_ITEM_R_SLIDER, " ", ICON_NONE);
uiItemPointerR(layout, ptr, "target_layer", &obj_data_ptr, "layers", NULL, ICON_GREASEPENCIL);
uiItemPointerR(
layout, ptr, "target_material", &obj_data_ptr, "materials", NULL, ICON_SHADING_TEXTURE);
uiItemR(layout, ptr, "remove_doubles", 0, NULL, ICON_NONE);
- uiItemR(layout, ptr, "allow_overlapping_edges", 0, "Overlapping Edges As Contour", ICON_NONE);
+ uiItemR(layout,
+ ptr,
+ "allow_overlapping_edges",
+ 0,
+ IFACE_("Overlapping Edges As Contour"),
+ ICON_NONE);
gpencil_modifier_panel_end(layout, ptr);
}
@@ -322,9 +321,8 @@ static void occlusion_panel_draw(const bContext *UNUSED(C), Panel *panel)
uiLayoutSetEnabled(layout, !is_baked);
const bool use_multiple_levels = RNA_boolean_get(ptr, "use_multiple_levels");
- const bool use_transparency = RNA_boolean_get(ptr, "use_transparency");
- uiItemR(layout, ptr, "use_multiple_levels", 0, "Multiple Levels", ICON_NONE);
+ uiItemR(layout, ptr, "use_multiple_levels", 0, IFACE_("Range"), ICON_NONE);
if (use_multiple_levels) {
uiLayout *col = uiLayoutColumn(layout, true);
@@ -332,28 +330,43 @@ static void occlusion_panel_draw(const bContext *UNUSED(C), Panel *panel)
uiItemR(col, ptr, "level_end", 0, NULL, ICON_NONE);
}
else {
- uiItemR(layout, ptr, "level_start", 0, "Level", ICON_NONE);
+ uiItemR(layout, ptr, "level_start", 0, IFACE_("Level"), ICON_NONE);
}
+}
- uiItemR(layout, ptr, "use_transparency", 0, "Transparency", ICON_NONE);
+static void transparency_panel_draw_header(const bContext *UNUSED(C), Panel *panel)
+{
+ uiLayout *layout = panel->layout;
+ PointerRNA *ptr = gpencil_modifier_panel_get_property_pointers(panel, NULL);
- uiLayout *col = uiLayoutColumn(layout, true);
+ uiItemR(layout, ptr, "use_transparency", 0, IFACE_("Transparency"), ICON_NONE);
+}
- if (use_transparency) {
- uiItemR(col, ptr, "transparency_match", 0, "Match", ICON_NONE);
- }
+static void transparency_panel_draw(const bContext *UNUSED(C), Panel *panel)
+{
+ uiLayout *layout = panel->layout;
+ PointerRNA *ptr = gpencil_modifier_panel_get_property_pointers(panel, NULL);
- if (use_transparency) {
- uiLayout *row = uiLayoutRow(col, true);
- uiItemR(row, ptr, "transparency_mask_0", UI_ITEM_R_TOGGLE, "0", ICON_NONE);
- uiItemR(row, ptr, "transparency_mask_1", UI_ITEM_R_TOGGLE, "1", ICON_NONE);
- uiItemR(row, ptr, "transparency_mask_2", UI_ITEM_R_TOGGLE, "2", ICON_NONE);
- uiItemR(row, ptr, "transparency_mask_3", UI_ITEM_R_TOGGLE, "3", ICON_NONE);
- uiItemR(row, ptr, "transparency_mask_4", UI_ITEM_R_TOGGLE, "4", ICON_NONE);
- uiItemR(row, ptr, "transparency_mask_5", UI_ITEM_R_TOGGLE, "5", ICON_NONE);
- uiItemR(row, ptr, "transparency_mask_6", UI_ITEM_R_TOGGLE, "6", ICON_NONE);
- uiItemR(row, ptr, "transparency_mask_7", UI_ITEM_R_TOGGLE, "7", ICON_NONE);
- }
+ uiLayoutSetPropSep(layout, true);
+
+ uiLayoutSetActive(layout, RNA_boolean_get(ptr, "use_transparency"));
+
+ uiLayout *row = uiLayoutRow(layout, true);
+ uiLayoutSetPropDecorate(row, false);
+ uiLayout *sub = uiLayoutRow(row, true);
+ uiItemR(sub, ptr, "transparency_mask_0", UI_ITEM_R_TOGGLE, IFACE_("0"), ICON_NONE);
+ uiItemR(sub, ptr, "transparency_mask_1", UI_ITEM_R_TOGGLE, IFACE_("1"), ICON_NONE);
+ uiItemR(sub, ptr, "transparency_mask_2", UI_ITEM_R_TOGGLE, IFACE_("2"), ICON_NONE);
+ uiItemR(sub, ptr, "transparency_mask_3", UI_ITEM_R_TOGGLE, IFACE_("3"), ICON_NONE);
+ uiItemR(sub, ptr, "transparency_mask_4", UI_ITEM_R_TOGGLE, IFACE_("4"), ICON_NONE);
+ uiItemR(sub, ptr, "transparency_mask_5", UI_ITEM_R_TOGGLE, IFACE_("5"), ICON_NONE);
+ uiItemR(sub, ptr, "transparency_mask_6", UI_ITEM_R_TOGGLE, IFACE_("6"), ICON_NONE);
+ uiItemR(sub, ptr, "transparency_mask_7", UI_ITEM_R_TOGGLE, IFACE_("7"), ICON_NONE);
+ uiItemL(row, "", ICON_BLANK1); /* Space for decorator. */
+
+ uiLayout *col = uiLayoutColumn(layout, true);
+ // uiLayoutSetPropDecorate(col, true);
+ uiItemR(col, ptr, "transparency_match", 0, IFACE_("Match All Masks"), ICON_NONE);
}
static void chaining_panel_draw(const bContext *UNUSED(C), Panel *panel)
@@ -395,17 +408,18 @@ static void vgroup_panel_draw(const bContext *UNUSED(C), Panel *panel)
uiLayout *col = uiLayoutColumn(layout, true);
uiLayout *row = uiLayoutRow(col, true);
- uiItemR(row, ptr, "source_vertex_group", 0, "Filter Source", ICON_GROUP_VERTEX);
+ uiItemR(row, ptr, "source_vertex_group", 0, IFACE_("Filter Source"), ICON_GROUP_VERTEX);
uiItemR(row, ptr, "invert_source_vertex_group", UI_ITEM_R_TOGGLE, "", ICON_ARROW_LEFTRIGHT);
uiItemR(col, ptr, "match_output_vertex_group", 0, NULL, ICON_NONE);
bool match_output = RNA_boolean_get(ptr, "match_output_vertex_group");
if (!match_output) {
- uiItemPointerR(col, ptr, "vertex_group", &ob_ptr, "vertex_groups", "Target", ICON_NONE);
+ uiItemPointerR(
+ col, ptr, "vertex_group", &ob_ptr, "vertex_groups", IFACE_("Target"), ICON_NONE);
}
- uiItemR(layout, ptr, "soft_selection", 0, NULL, ICON_NONE);
+ uiItemR(col, ptr, "soft_selection", 0, NULL, ICON_NONE);
}
static void baking_panel_draw(const bContext *UNUSED(C), Panel *panel)
@@ -421,8 +435,9 @@ static void baking_panel_draw(const bContext *UNUSED(C), Panel *panel)
if (is_baked) {
uiLayout *col = uiLayoutColumn(layout, false);
uiLayoutSetPropSep(col, false);
- uiItemL(col, "Modifier has baked data.", ICON_NONE);
- uiItemR(col, ptr, "is_baked", UI_ITEM_R_TOGGLE, "Continue Without Clearing", ICON_NONE);
+ uiItemL(col, IFACE_("Modifier has baked data."), ICON_NONE);
+ uiItemR(
+ col, ptr, "is_baked", UI_ITEM_R_TOGGLE, IFACE_("Continue Without Clearing"), ICON_NONE);
}
uiLayout *col = uiLayoutColumn(layout, false);
@@ -442,8 +457,14 @@ static void panelRegister(ARegionType *region_type)
gpencil_modifier_subpanel_register(
region_type, "style", "Style", NULL, style_panel_draw, panel_type);
- gpencil_modifier_subpanel_register(
+ PanelType *occlusion_panel = gpencil_modifier_subpanel_register(
region_type, "occlusion", "Occlusion", NULL, occlusion_panel_draw, panel_type);
+ gpencil_modifier_subpanel_register(region_type,
+ "transparency",
+ "",
+ transparency_panel_draw_header,
+ transparency_panel_draw,
+ occlusion_panel);
gpencil_modifier_subpanel_register(
region_type, "chaining", "Chaining", NULL, chaining_panel_draw, panel_type);
gpencil_modifier_subpanel_register(
diff --git a/source/blender/gpencil_modifiers/intern/lineart/lineart_ops.c b/source/blender/gpencil_modifiers/intern/lineart/lineart_ops.c
index d5bd232cc9c..56490a84279 100644
--- a/source/blender/gpencil_modifiers/intern/lineart/lineart_ops.c
+++ b/source/blender/gpencil_modifiers/intern/lineart/lineart_ops.c
@@ -402,7 +402,7 @@ void OBJECT_OT_lineart_bake_strokes(wmOperatorType *ot)
void OBJECT_OT_lineart_bake_strokes_all(wmOperatorType *ot)
{
ot->name = "Bake Line Art (All)";
- ot->description = "Bake all GPencil objects who has at least one Line Art modifier";
+ ot->description = "Bake all Grease Pencil objects that have a line art modifier";
ot->idname = "OBJECT_OT_lineart_bake_strokes_all";
ot->invoke = lineart_gpencil_bake_strokes_all_invoke;
@@ -424,7 +424,7 @@ void OBJECT_OT_lineart_clear(wmOperatorType *ot)
void OBJECT_OT_lineart_clear_all(wmOperatorType *ot)
{
ot->name = "Clear Baked Line Art (All)";
- ot->description = "Clear all strokes in all GPencil obejcts who has a Line Art modifier";
+ ot->description = "Clear all strokes in all Grease Pencil objects that have a line art modifier";
ot->idname = "OBJECT_OT_lineart_clear_all";
ot->exec = lineart_gpencil_clear_strokes_all_exec;
diff --git a/source/blender/makesrna/intern/rna_collection.c b/source/blender/makesrna/intern/rna_collection.c
index 90e969560b7..643503e52fa 100644
--- a/source/blender/makesrna/intern/rna_collection.c
+++ b/source/blender/makesrna/intern/rna_collection.c
@@ -520,28 +520,32 @@ void RNA_def_collections(BlenderRNA *brna)
RNA_def_property_update(prop, NC_SCENE | ND_LAYER_CONTENT, "rna_Collection_flag_update");
static const EnumPropertyItem rna_collection_lineart_usage[] = {
- {COLLECTION_LRT_INCLUDE, "INCLUDE", 0, "Include", "Collection will produce feature lines"},
+ {COLLECTION_LRT_INCLUDE,
+ "INCLUDE",
+ 0,
+ "Include",
+ "Generate feature lines for this collection"},
{COLLECTION_LRT_OCCLUSION_ONLY,
"OCCLUSION_ONLY",
0,
"Occlusion Only",
"Only use the collection to produce occlusion"},
- {COLLECTION_LRT_EXCLUDE, "EXCLUDE", 0, "Exclude", "Don't use this collection in LRT"},
+ {COLLECTION_LRT_EXCLUDE, "EXCLUDE", 0, "Exclude", "Don't use this collection in line art"},
{COLLECTION_LRT_INTERSECTION_ONLY,
"INTERSECTION_ONLY",
0,
"Intersection Only",
- "Only generate intersection lines with this collection"},
+ "Only generate intersection lines for this collection"},
{COLLECTION_LRT_NO_INTERSECTION,
"NO_INTERSECTION",
0,
"No Intersection",
- "Do not generate intersection lines for this collection"},
+ "Include this collection but do not generate intersection lines"},
{0, NULL, 0, NULL, NULL}};
prop = RNA_def_property(srna, "lineart_usage", PROP_ENUM, PROP_NONE);
RNA_def_property_enum_items(prop, rna_collection_lineart_usage);
- RNA_def_property_ui_text(prop, "Usage", "How to use this collection in LRT");
+ RNA_def_property_ui_text(prop, "Usage", "How to use this collection in line art");
RNA_def_property_update(prop, NC_SCENE, NULL);
prop = RNA_def_property(srna, "color_tag", PROP_ENUM, PROP_NONE);
diff --git a/source/blender/makesrna/intern/rna_gpencil_modifier.c b/source/blender/makesrna/intern/rna_gpencil_modifier.c
index b84fcf4cf7c..0fe0ad26cca 100644
--- a/source/blender/makesrna/intern/rna_gpencil_modifier.c
+++ b/source/blender/makesrna/intern/rna_gpencil_modifier.c
@@ -90,9 +90,9 @@ const EnumPropertyItem rna_enum_object_greasepencil_modifier_type_items[] = {
"Subdivide stroke adding more control points"},
{eGpencilModifierType_Lineart,
"GP_LINEART",
- ICON_MOD_EDGESPLIT,
+ ICON_MOD_EDGESPLIT, /* TODO: Use a proper icon. */
"Line Art",
- "Generate Line Art strokes from selected source"},
+ "Generate line art strokes from selected source"},
{0, "", 0, N_("Deform"), ""},
{eGpencilModifierType_Armature,
"GP_ARMATURE",
@@ -2327,7 +2327,7 @@ static void rna_def_modifier_gpencillineart(BlenderRNA *brna)
srna = RNA_def_struct(brna, "LineartGpencilModifier", "GpencilModifier");
RNA_def_struct_ui_text(
- srna, "Line Art Modifier", "Generate Line Art strokes from selected source");
+ srna, "Line Art Modifier", "Generate line art strokes from selected source");
RNA_def_struct_sdna(srna, "LineartGpencilModifierData");
RNA_def_struct_ui_icon(srna, ICON_MOD_EDGESPLIT);
@@ -2355,9 +2355,10 @@ static void rna_def_modifier_gpencillineart(BlenderRNA *brna)
prop = RNA_def_property(srna, "allow_overlapping_edges", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "calculation_flags", LRT_ALLOW_OVERLAPPING_EDGES);
- RNA_def_property_ui_text(prop,
- "Handle Overlapping Edges",
- "Allow lines from edge split to show properly, may run slower");
+ RNA_def_property_ui_text(
+ prop,
+ "Handle Overlapping Edges",
+ "Allow edges in the same location (i.e. from edge split) to show properly. May run slower");
RNA_def_property_update(prop, NC_SCENE, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "allow_clipping_boundaries", PROP_BOOLEAN, PROP_NONE);
@@ -2384,13 +2385,13 @@ static void rna_def_modifier_gpencillineart(BlenderRNA *brna)
prop = RNA_def_property(srna, "remove_doubles", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "calculation_flags", LRT_REMOVE_DOUBLES);
RNA_def_property_ui_text(
- prop, "Remove Doubles", "Remove doubles when line art is loading geometries");
+ prop, "Remove Doubles", "Remove doubles from the source geometry before generating stokes");
RNA_def_property_update(prop, NC_SCENE, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "chaining_geometry_threshold", PROP_FLOAT, PROP_DISTANCE);
RNA_def_property_ui_text(prop,
"Geometry Threshold",
- "Segments where their geometric distance between them lower than this "
+ "Segments with a geometric distance between them lower than this "
"will be chained together");
RNA_def_property_ui_range(prop, 0.0f, 0.5f, 0.001f, 3);
RNA_def_property_range(prop, 0.0f, 0.5f);
@@ -2407,7 +2408,7 @@ static void rna_def_modifier_gpencillineart(BlenderRNA *brna)
prop = RNA_def_property(srna, "source_type", PROP_ENUM, PROP_NONE);
RNA_def_property_enum_items(prop, modifier_lineart_source_type);
- RNA_def_property_ui_text(prop, "Source Type", "Lineart stroke source type");
+ RNA_def_property_ui_text(prop, "Source Type", "Line art stroke source type");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_dependency_update");
prop = RNA_def_property(srna, "source_object", PROP_POINTER, PROP_NONE);
@@ -2415,7 +2416,7 @@ static void rna_def_modifier_gpencillineart(BlenderRNA *brna)
RNA_def_property_struct_type(prop, "Object");
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
RNA_def_property_ui_text(
- prop, "Source Object", "Source object that this modifier grabs data from");
+ prop, "Source Object", "Source object that this modifier uses data from");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_dependency_update");
prop = RNA_def_property(srna, "source_collection", PROP_POINTER, PROP_NONE);
@@ -2429,45 +2430,45 @@ static void rna_def_modifier_gpencillineart(BlenderRNA *brna)
/* types */
prop = RNA_def_property(srna, "use_contour", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "line_types", LRT_EDGE_FLAG_CONTOUR);
- RNA_def_property_ui_text(prop, "Use Contour", "Include contour lines in the result");
+ RNA_def_property_ui_text(prop, "Use Contour", "Generate strokes from contours lines");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "use_crease", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "line_types", LRT_EDGE_FLAG_CREASE);
- RNA_def_property_ui_text(prop, "Use Crease", "Include sharp edges in the result");
+ RNA_def_property_ui_text(prop, "Use Crease", "Generate strokes from creased edges");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "use_material", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "line_types", LRT_EDGE_FLAG_MATERIAL);
RNA_def_property_ui_text(
- prop, "Use Material", "Include material separation lines in the result");
+ prop, "Use Material", "Generate strokes from borders between materials");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "use_edge_mark", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "line_types", LRT_EDGE_FLAG_EDGE_MARK);
- RNA_def_property_ui_text(prop, "Use Edge Mark", "Include freestyle edge marks in the result");
+ RNA_def_property_ui_text(prop, "Use Edge Mark", "Generate strokes from freestyle marked edges");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "use_intersection", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "line_types", LRT_EDGE_FLAG_INTERSECTION);
- RNA_def_property_ui_text(prop, "Use Intersection", "Include intersection lines in the result");
+ RNA_def_property_ui_text(prop, "Use Intersection", "Generate strokes from intersections");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "use_multiple_levels", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "use_multiple_levels", 0);
RNA_def_property_ui_text(
- prop, "Use Multiple Levels", "Select lines from multiple occlusion levels");
+ prop, "Use Occlusion Range", "Generate strokes from a range of occlusion levels");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "level_start", PROP_INT, PROP_NONE);
RNA_def_property_ui_text(
- prop, "Level Start", "Minimum level of occlusion level that gets selected");
+ prop, "Level Start", "Minimum number of occlusions for the generated strokes");
RNA_def_property_range(prop, 0, 128);
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "level_end", PROP_INT, PROP_NONE);
RNA_def_property_ui_text(
- prop, "Level End", "Maximum level of occlusion level that gets selected");
+ prop, "Level End", "Maximum number of occlusions for the generated strokes");
RNA_def_property_range(prop, 0, 128);
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
@@ -2488,7 +2489,7 @@ static void rna_def_modifier_gpencillineart(BlenderRNA *brna)
RNA_def_property_ui_text(
prop,
"Source Vertex Group",
- "Matches the beginning of vertex group names from mesh objects, match all when left empty");
+ "Match the beginning of vertex group names from mesh objects, match all when left empty");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "vertex_group", PROP_STRING, PROP_NONE);
@@ -2499,18 +2500,18 @@ static void rna_def_modifier_gpencillineart(BlenderRNA *brna)
prop = RNA_def_property(srna, "invert_source_vertex_group", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "flags", LRT_GPENCIL_INVERT_SOURCE_VGROUP);
- RNA_def_property_ui_text(prop, "Invert Source", "Invert source vertex group values");
+ RNA_def_property_ui_text(prop, "Invert Vertex Group", "Invert source vertex group values");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "match_output_vertex_group", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "flags", LRT_GPENCIL_MATCH_OUTPUT_VGROUP);
- RNA_def_property_ui_text(prop, "Match Output", "Match output vertex group");
+ RNA_def_property_ui_text(prop, "Match Output", "Match output vertex group based on name");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "soft_selection", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "flags", LRT_GPENCIL_SOFT_SELECTION);
RNA_def_property_ui_text(
- prop, "Soft selection", "Preserve original vertex weight instead of clipping to 0/1");
+ prop, "Clip", "Preserve original vertex weight instead of clipping to 0/1");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "is_baked", PROP_BOOLEAN, PROP_NONE);
@@ -2519,19 +2520,20 @@ static void rna_def_modifier_gpencillineart(BlenderRNA *brna)
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "thickness", PROP_INT, PROP_NONE);
- RNA_def_property_ui_text(prop, "Thickness", "The thickness that used to generate strokes");
+ RNA_def_property_ui_text(prop, "Thickness", "The thickness for the generated strokes");
RNA_def_property_ui_range(prop, 1, 100, 1, 1);
RNA_def_property_range(prop, 1, 200);
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "opacity", PROP_FLOAT, PROP_FACTOR);
- RNA_def_property_ui_text(prop, "Opacity", "The strength value used to generate strokes");
+ RNA_def_property_ui_text(prop, "Opacity", "The strength value for the generate strokes");
RNA_def_property_ui_range(prop, 0.0f, 1.0f, 0.01f, 2);
RNA_def_property_range(prop, 0.0f, 1.0f);
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "pre_sample_length", PROP_FLOAT, PROP_NONE);
- RNA_def_property_ui_text(prop, "Pre Sample Length", "Sample strokes before sending out");
+ RNA_def_property_ui_text(
+ prop, "Sample Length", "Resolution to sample the generated strokes with");
RNA_def_property_ui_range(prop, 0.0f, 1.0f, 0.01f, 2);
RNA_def_property_range(prop, 0.0f, 1.0f);
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
@@ -2539,52 +2541,53 @@ static void rna_def_modifier_gpencillineart(BlenderRNA *brna)
prop = RNA_def_property(srna, "use_transparency", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_flags", LRT_GPENCIL_TRANSPARENCY_ENABLE);
RNA_def_property_ui_text(
- prop, "Use Transparency", "Use transparency mask from this material in Line Art");
+ prop, "Use Transparency", "Use transparency mask from this material in line art");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "transparency_match", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_flags", LRT_GPENCIL_TRANSPARENCY_MATCH);
- RNA_def_property_ui_text(prop, "Match Transparency", "Match all transparency bits");
+ RNA_def_property_ui_text(
+ prop, "Match Transparency", "Require matching all transparency masks instead of just one");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "transparency_mask_0", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 0);
- RNA_def_property_ui_text(prop, "Mask 0", "Mask bit 0");
+ RNA_def_property_ui_text(prop, "Mask 0", "");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "transparency_mask_1", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 1);
- RNA_def_property_ui_text(prop, "Mask 1", "Mask bit 1");
+ RNA_def_property_ui_text(prop, "Mask 1", "");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "transparency_mask_2", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 2);
- RNA_def_property_ui_text(prop, "Mask 2", "Mask bit 2");
+ RNA_def_property_ui_text(prop, "Mask 2", "");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "transparency_mask_3", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 3);
- RNA_def_property_ui_text(prop, "Mask 3", "Mask bit 3");
+ RNA_def_property_ui_text(prop, "Mask 3", "");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "transparency_mask_4", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 4);
- RNA_def_property_ui_text(prop, "Mask 4", "Mask bit 4");
+ RNA_def_property_ui_text(prop, "Mask 4", "");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "transparency_mask_5", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 5);
- RNA_def_property_ui_text(prop, "Mask 5", "Mask bit 5");
+ RNA_def_property_ui_text(prop, "Mask 5", "");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "transparency_mask_6", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 6);
- RNA_def_property_ui_text(prop, "mask 6", "Mask bit 6");
+ RNA_def_property_ui_text(prop, "Mask 6", "");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
prop = RNA_def_property(srna, "transparency_mask_7", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 7);
- RNA_def_property_ui_text(prop, "Mask 7", "Mask bit 7");
+ RNA_def_property_ui_text(prop, "Mask 7", "");
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
}
diff --git a/source/blender/makesrna/intern/rna_material.c b/source/blender/makesrna/intern/rna_material.c
index 39dd3059f3d..99673f31eb9 100644
--- a/source/blender/makesrna/intern/rna_material.c
+++ b/source/blender/makesrna/intern/rna_material.c
@@ -692,55 +692,55 @@ static void rna_def_material_lineart(BlenderRNA *brna)
RNA_def_property_boolean_default(prop, 0);
RNA_def_property_boolean_sdna(prop, NULL, "flags", LRT_MATERIAL_TRANSPARENCY_ENABLED);
RNA_def_property_ui_text(
- prop, "Use Transparency", "Use transparency mask from this material in Line Art");
+ prop, "Use Transparency", "Use transparency mask from this material in line art");
RNA_def_property_update(prop, NC_GPENCIL | ND_SHADING, "rna_MaterialLineArt_update");
prop = RNA_def_property(srna, "transparency_mask_0", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_default(prop, 0);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 0);
- RNA_def_property_ui_text(prop, "Mask 0", "Mask bit 0");
+ RNA_def_property_ui_text(prop, "Mask 0", "");
RNA_def_property_update(prop, NC_GPENCIL | ND_SHADING, "rna_MaterialLineArt_update");
prop = RNA_def_property(srna, "transparency_mask_1", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_default(prop, 0);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 1);
- RNA_def_property_ui_text(prop, "Mask 1", "Mask bit 1");
+ RNA_def_property_ui_text(prop, "Mask 1", "");
RNA_def_property_update(prop, NC_GPENCIL | ND_SHADING, "rna_MaterialLineArt_update");
prop = RNA_def_property(srna, "transparency_mask_2", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_default(prop, 0);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 2);
- RNA_def_property_ui_text(prop, "Mask 2", "Mask bit 2");
+ RNA_def_property_ui_text(prop, "Mask 2", "");
RNA_def_property_update(prop, NC_GPENCIL | ND_SHADING, "rna_MaterialLineArt_update");
prop = RNA_def_property(srna, "transparency_mask_3", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_default(prop, 0);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 3);
- RNA_def_property_ui_text(prop, "Mask 3", "Mask bit 3");
+ RNA_def_property_ui_text(prop, "Mask 3", "");
RNA_def_property_update(prop, NC_GPENCIL | ND_SHADING, "rna_MaterialLineArt_update");
prop = RNA_def_property(srna, "transparency_mask_4", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_default(prop, 0);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 4);
- RNA_def_property_ui_text(prop, "Mask 4", "Mask bit 4");
+ RNA_def_property_ui_text(prop, "Mask 4", "");
RNA_def_property_update(prop, NC_GPENCIL | ND_SHADING, "rna_MaterialLineArt_update");
prop = RNA_def_property(srna, "transparency_mask_5", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_default(prop, 0);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 5);
- RNA_def_property_ui_text(prop, "Mask 5", "Mask bit 5");
+ RNA_def_property_ui_text(prop, "Mask 5", "");
RNA_def_property_update(prop, NC_GPENCIL | ND_SHADING, "rna_MaterialLineArt_update");
prop = RNA_def_property(srna, "transparency_mask_6", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_default(prop, 0);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 6);
- RNA_def_property_ui_text(prop, "mask 6", "Mask bit 6");
+ RNA_def_property_ui_text(prop, "mask 6", "");
RNA_def_property_update(prop, NC_GPENCIL | ND_SHADING, "rna_MaterialLineArt_update");
prop = RNA_def_property(srna, "transparency_mask_7", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_default(prop, 0);
RNA_def_property_boolean_sdna(prop, NULL, "transparency_mask", 1 << 7);
- RNA_def_property_ui_text(prop, "Mask 7", "Mask bit 7");
+ RNA_def_property_ui_text(prop, "Mask 7", "");
RNA_def_property_update(prop, NC_GPENCIL | ND_SHADING, "rna_MaterialLineArt_update");
}
@@ -911,7 +911,7 @@ void RNA_def_material(BlenderRNA *brna)
/* line art */
prop = RNA_def_property(srna, "lineart", PROP_POINTER, PROP_NONE);
RNA_def_property_pointer_sdna(prop, NULL, "lineart");
- RNA_def_property_ui_text(prop, "Line Art Settings", "Line Art settings for material");
+ RNA_def_property_ui_text(prop, "Line Art Settings", "Line art settings for material");
rna_def_material_greasepencil(brna);
rna_def_material_lineart(brna);
diff --git a/source/blender/makesrna/intern/rna_object.c b/source/blender/makesrna/intern/rna_object.c
index 621245f2a68..77a4d636adc 100644
--- a/source/blender/makesrna/intern/rna_object.c
+++ b/source/blender/makesrna/intern/rna_object.c
@@ -164,17 +164,17 @@ const EnumPropertyItem rna_enum_object_gpencil_type_items[] = {
"LRT_SCENE",
ICON_SCENE_DATA,
"Scene Line Art",
- "Quickly set up Line Art for the whole scene"},
+ "Quickly set up line art for the entire scene"},
{GP_LRT_COLLECTION,
"LRT_COLLECTION",
ICON_OUTLINER_COLLECTION,
"Collection Line Art",
- "Quickly set up Line Art for active collection"},
+ "Quickly set up line art for the active collection"},
{GP_LRT_OBJECT,
"LRT_OBJECT",
ICON_OBJECT_DATA,
"Object Line Art",
- "Quickly set up Line Art for the active object"},
+ "Quickly set up line art for the active object"},
{0, NULL, 0, NULL, NULL}};
static const EnumPropertyItem parent_type_items[] = {
@@ -2673,23 +2673,27 @@ static void rna_def_object_lineart(BlenderRNA *brna)
PropertyRNA *prop;
static EnumPropertyItem prop_feature_line_usage_items[] = {
- {OBJECT_LRT_INHERENT,
- "INHEREIT",
+ {OBJECT_LRT_INHERENT, "INHEREIT", 0, "Inhereit", "Use settings from the parent collection"},
+ {OBJECT_LRT_INCLUDE,
+ "INCLUDE",
0,
- "Inhereit",
- "Follow settings from the parent collection"},
- {OBJECT_LRT_INCLUDE, "INCLUDE", 0, "Include", "Include this object into LRT calculation"},
+ "Include",
+ "Generate feature lines for this object's data"},
{OBJECT_LRT_OCCLUSION_ONLY,
"OCCLUSION_ONLY",
0,
"Occlusion Only",
- "Don't produce lines, only used as occlusion object"},
- {OBJECT_LRT_EXCLUDE, "EXCLUDE", 0, "Exclude", "Don't use this object for LRT rendering"},
+ "Only use the object data to produce occlusion"},
+ {OBJECT_LRT_EXCLUDE,
+ "EXCLUDE",
+ 0,
+ "Exclude",
+ "Don't use this object for Line Art rendering"},
{OBJECT_LRT_INTERSECTION_ONLY,
"INTERSECTION_ONLY",
0,
"Intersection Only",
- "Only to generate intersection lines with this object"},
+ "Only generate intersection lines for this collection"},
{OBJECT_LRT_NO_INTERSECTION,
"NO_INTERSECTION",
0,
@@ -2699,7 +2703,7 @@ static void rna_def_object_lineart(BlenderRNA *brna)
};
srna = RNA_def_struct(brna, "ObjectLineArt", NULL);
- RNA_def_struct_ui_text(srna, "Object Line Art", "Object lineart settings");
+ RNA_def_struct_ui_text(srna, "Object Line Art", "Object line art settings");
RNA_def_struct_sdna(srna, "ObjectLineArt");
prop = RNA_def_property(srna, "usage", PROP_ENUM, PROP_NONE);
@@ -2709,14 +2713,14 @@ static void rna_def_object_lineart(BlenderRNA *brna)
prop = RNA_def_property(srna, "use_crease_override", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "flags", OBJECT_LRT_OWN_CREASE);
- RNA_def_property_ui_text(prop, "Own Crease", "Use own crease setting to overwrite scene global");
+ RNA_def_property_ui_text(
+ prop, "Use Crease", "Use this object's crease setting to overwrite scene global");
RNA_def_property_update(prop, 0, "rna_object_lineart_update");
prop = RNA_def_property(srna, "crease_threshold", PROP_FLOAT, PROP_ANGLE);
RNA_def_property_range(prop, 0, DEG2RAD(180.0f));
RNA_def_property_ui_range(prop, 0.0f, DEG2RAD(180.0f), 0.01f, 1);
- RNA_def_property_ui_text(
- prop, "Own Crease", "Angles smaller than this will be treated as creases");
+ RNA_def_property_ui_text(prop, "Crease", "Angles smaller than this will be treated as creases");
RNA_def_property_update(prop, 0, "rna_object_lineart_update");
}
@@ -3492,7 +3496,7 @@ static void rna_def_object(BlenderRNA *brna)
/* Line Art */
prop = RNA_def_property(srna, "lineart", PROP_POINTER, PROP_NONE);
RNA_def_property_struct_type(prop, "ObjectLineArt");
- RNA_def_property_ui_text(prop, "Line Art", "Line Art settings for the object");
+ RNA_def_property_ui_text(prop, "Line Art", "Line art settings for the object");
RNA_define_lib_overridable(false);