[Bf-blender-cvs] [ac8e2772dc6] greasepencil-object: Change default Drawing brushes
Antonio Vazquez
noreply at git.blender.org
Tue Dec 5 12:39:20 CET 2017
Commit: ac8e2772dc64bd1838068a3b2cee8b3c9269d68d
Author: Antonio Vazquez
Date: Tue Dec 5 12:39:11 2017 +0100
Branches: greasepencil-object
https://developer.blender.org/rBac8e2772dc64bd1838068a3b2cee8b3c9269d68d
Change default Drawing brushes
===================================================================
M source/blender/blenkernel/intern/gpencil.c
===================================================================
diff --git a/source/blender/blenkernel/intern/gpencil.c b/source/blender/blenkernel/intern/gpencil.c
index ec04c250ec5..1c417cfbcc5 100644
--- a/source/blender/blenkernel/intern/gpencil.c
+++ b/source/blender/blenkernel/intern/gpencil.c
@@ -506,23 +506,70 @@ bGPDlayer *BKE_gpencil_layer_addnew(bGPdata *gpd, const char *name, bool setacti
return gpl;
}
+/* cumapping->preset */
+typedef enum eGPCurveMappingPreset {
+ GPCURVE_PRESET_PENCIL = 0,
+ GPCURVE_PRESET_INK = 1,
+ GPCURVE_PRESET_INKNOISE = 2,
+} eGPCurveMappingPreset;
+
+static void gp_brush_curvemap_reset(CurveMap *cuma, int preset)
+{
+ if (cuma->curve)
+ MEM_freeN(cuma->curve);
+
+ cuma->totpoint = 3;
+ cuma->curve = MEM_callocN(cuma->totpoint * sizeof(CurveMapPoint), "curve points");
+
+ switch (preset) {
+ case GPCURVE_PRESET_PENCIL:
+ cuma->curve[0].x = 0.0f;
+ cuma->curve[0].y = 0.0f;
+ cuma->curve[1].x = 0.75115f;
+ cuma->curve[1].y = 0.25f;
+ cuma->curve[2].x = 1.0f;
+ cuma->curve[2].y = 1.0f;
+ break;
+ case GPCURVE_PRESET_INK:
+ cuma->curve[0].x = 0.0f;
+ cuma->curve[0].y = 0.0f;
+ cuma->curve[1].x = 0.63448f;
+ cuma->curve[1].y = 0.375f;
+ cuma->curve[2].x = 1.0f;
+ cuma->curve[2].y = 1.0f;
+ break;
+ case GPCURVE_PRESET_INKNOISE:
+ cuma->curve[0].x = 0.0f;
+ cuma->curve[0].y = 0.0f;
+ cuma->curve[1].x = 0.63134f;
+ cuma->curve[1].y = 0.3625f;
+ cuma->curve[2].x = 1.0f;
+ cuma->curve[2].y = 1.0f;
+ break;
+ }
+
+ if (cuma->table) {
+ MEM_freeN(cuma->table);
+ cuma->table = NULL;
+ }
+}
+
/* create a set of default drawing brushes with predefined presets */
void BKE_gpencil_brush_init_presets(ToolSettings *ts)
{
bGPDbrush *brush;
+ CurveMapping *custom_curve;
float curcolor[3] = { 1.0f, 1.0f, 1.0f };
- /* Basic brush */
- brush = BKE_gpencil_brush_addnew(ts, "Basic", false);
- brush->thickness = 3.0f;
- brush->flag &= ~GP_BRUSH_USE_RANDOM_PRESSURE;
+ /* Pencil brush */
+ brush = BKE_gpencil_brush_addnew(ts, "Pencil", false);
+ brush->thickness = 5.0f;
+ brush->flag |= (GP_BRUSH_USE_RANDOM_PRESSURE | GP_BRUSH_USE_PRESSURE | GP_BRUSH_ENABLE_CURSOR);
brush->draw_sensitivity = 1.0f;
- brush->flag |= GP_BRUSH_USE_PRESSURE;
- brush->flag |= GP_BRUSH_ENABLE_CURSOR;
- brush->flag &= ~GP_BRUSH_USE_RANDOM_STRENGTH;
- brush->draw_strength = 1.0f;
- brush->flag |= ~GP_BRUSH_USE_STENGTH_PRESSURE;
+ brush->flag |= GP_BRUSH_USE_RANDOM_STRENGTH;
+ brush->draw_strength = 0.6f;
+ brush->flag |= GP_BRUSH_USE_STENGTH_PRESSURE;
brush->draw_random_press = 0.0f;
@@ -532,22 +579,28 @@ void BKE_gpencil_brush_init_presets(ToolSettings *ts)
brush->draw_angle = 0.0f;
brush->draw_angle_factor = 0.0f;
- brush->draw_smoothfac = 0.0f;
- brush->draw_smoothlvl = 1;
- brush->sublevel = 0;
+ brush->draw_smoothfac = 1.0f;
+ brush->draw_smoothlvl = 3;
+ brush->thick_smoothfac = 1.0f;
+ brush->thick_smoothlvl = 3;
+ brush->sublevel = 1;
brush->draw_random_sub = 0.0f;
copy_v3_v3(brush->curcolor, curcolor);
+
+ /* Curve */
+ custom_curve = brush->cur_strength;
+ curvemapping_set_defaults(custom_curve, 1, 0.0f, 0.0f, 1.0f, 1.0f);
+ curvemapping_initialize(custom_curve);
+ gp_brush_curvemap_reset(custom_curve->cm, GPCURVE_PRESET_PENCIL);
- /* Pencil brush */
- brush = BKE_gpencil_brush_addnew(ts, "Pencil", false);
- brush->thickness = 15.0f;
- brush->flag &= ~GP_BRUSH_USE_RANDOM_PRESSURE;
+ /* Pen brush */
+ brush = BKE_gpencil_brush_addnew(ts, "Pen", true);
+ brush->thickness = 5.0f;
+ brush->flag |= (GP_BRUSH_USE_RANDOM_PRESSURE | GP_BRUSH_USE_PRESSURE | GP_BRUSH_ENABLE_CURSOR);
brush->draw_sensitivity = 1.0f;
- brush->flag |= GP_BRUSH_USE_PRESSURE;
- brush->flag |= GP_BRUSH_ENABLE_CURSOR;
- brush->flag &= ~GP_BRUSH_USE_RANDOM_STRENGTH;
- brush->draw_strength = 0.7f;
+ brush->flag |= GP_BRUSH_USE_RANDOM_STRENGTH;
+ brush->draw_strength = 1.0f;
brush->flag |= GP_BRUSH_USE_STENGTH_PRESSURE;
brush->draw_random_press = 0.0f;
@@ -558,23 +611,21 @@ void BKE_gpencil_brush_init_presets(ToolSettings *ts)
brush->draw_angle = 0.0f;
brush->draw_angle_factor = 0.0f;
- brush->draw_smoothfac = 0.5f;
- brush->draw_smoothlvl = 1;
+ brush->draw_smoothfac = 1.0f;
+ brush->draw_smoothlvl = 3;
brush->sublevel = 1;
+ brush->thick_smoothfac = 1.0f;
+ brush->thick_smoothlvl = 3;
brush->draw_random_sub = 0.0f;
copy_v3_v3(brush->curcolor, curcolor);
/* Ink brush */
brush = BKE_gpencil_brush_addnew(ts, "Ink", true);
- brush->thickness = 7.0f;
- brush->flag &= ~GP_BRUSH_USE_RANDOM_PRESSURE;
+ brush->thickness = 15.0f;
+ brush->flag |= (GP_BRUSH_USE_PRESSURE | GP_BRUSH_ENABLE_CURSOR);
brush->draw_sensitivity = 1.6f;
- brush->flag |= GP_BRUSH_USE_PRESSURE;
- brush->flag |= GP_BRUSH_ENABLE_CURSOR;
- brush->flag &= ~GP_BRUSH_USE_RANDOM_STRENGTH;
brush->draw_strength = 1.0f;
- brush->flag &= ~GP_BRUSH_USE_STENGTH_PRESSURE;
brush->draw_random_press = 0.0f;
@@ -584,25 +635,29 @@ void BKE_gpencil_brush_init_presets(ToolSettings *ts)
brush->draw_angle = 0.0f;
brush->draw_angle_factor = 0.0f;
- brush->draw_smoothfac = 1.1f;
- brush->draw_smoothlvl = 2;
- brush->sublevel = 2;
+ brush->draw_smoothfac = 1.0f;
+ brush->draw_smoothlvl = 3;
+ brush->thick_smoothfac = 1.0f;
+ brush->thick_smoothlvl = 3;
+ brush->sublevel = 1;
brush->draw_random_sub = 0.0f;
copy_v3_v3(brush->curcolor, curcolor);
+ /* Curve */
+ custom_curve = brush->cur_sensitivity;
+ curvemapping_set_defaults(custom_curve, 1, 0.0f, 0.0f, 1.0f, 1.0f);
+ curvemapping_initialize(custom_curve);
+ gp_brush_curvemap_reset(custom_curve->cm, GPCURVE_PRESET_INK);
+
/* Ink Noise brush */
brush = BKE_gpencil_brush_addnew(ts, "Ink noise", false);
- brush->thickness = 6.0f;
- brush->flag |= GP_BRUSH_USE_RANDOM_PRESSURE;
- brush->draw_sensitivity = 1.611f;
- brush->flag |= GP_BRUSH_USE_PRESSURE;
- brush->flag |= GP_BRUSH_ENABLE_CURSOR;
+ brush->thickness = 15.0f;
+ brush->flag |= (GP_BRUSH_USE_RANDOM_PRESSURE | GP_BRUSH_USE_PRESSURE | GP_BRUSH_ENABLE_CURSOR);
+ brush->draw_sensitivity = 1.0f;
- brush->flag &= ~GP_BRUSH_USE_RANDOM_STRENGTH;
brush->draw_strength = 1.0f;
- brush->flag |= GP_BRUSH_USE_STENGTH_PRESSURE;
- brush->draw_random_press = 1.0f;
+ brush->draw_random_press = 0.7f;
brush->draw_jitter = 0.0f;
brush->flag |= GP_BRUSH_USE_JITTER_PRESSURE;
@@ -610,25 +665,54 @@ void BKE_gpencil_brush_init_presets(ToolSettings *ts)
brush->draw_angle = 0.0f;
brush->draw_angle_factor = 0.0f;
- brush->draw_smoothfac = 1.1f;
+ brush->draw_smoothfac = 1.0f;
brush->draw_smoothlvl = 2;
- brush->sublevel = 2;
+ brush->thick_smoothfac = 0.5f;
+ brush->thick_smoothlvl = 2;
+ brush->sublevel = 1;
brush->draw_random_sub = 0.0f;
copy_v3_v3(brush->curcolor, curcolor);
+ /* Curve */
+ custom_curve = brush->cur_sensitivity;
+ curvemapping_set_defaults(custom_curve, 1, 0.0f, 0.0f, 1.0f, 1.0f);
+ curvemapping_initialize(custom_curve);
+ gp_brush_curvemap_reset(custom_curve->cm, GPCURVE_PRESET_INKNOISE);
+
+ /* Block Basic brush */
+ brush = BKE_gpencil_brush_addnew(ts, "Block Basic", false);
+ brush->thickness = 25.0f;
+ brush->flag |= (GP_BRUSH_USE_PRESSURE | GP_BRUSH_ENABLE_CURSOR);
+ brush->draw_sensitivity = 1.0f;
+
+ brush->draw_strength = 0.7f;
+ brush->flag |= GP_BRUSH_USE_STENGTH_PRESSURE;
+
+ brush->draw_random_press = 0.0f;
+
+ brush->draw_jitter = 0.0f;
+ brush->flag |= GP_BRUSH_USE_JITTER_PRESSURE;
+
+ brush->draw_angle = 0.0f;
+ brush->draw_angle_factor = 0.0f;
+
+ brush->draw_smoothfac = 0.0f;
+ brush->draw_smoothlvl = 1;
+ brush->thick_smoothfac = 1.0f;
+ brush->thick_smoothlvl = 3;
+ brush->sublevel = 0;
+ brush->draw_random_sub = 0;
+ copy_v3_v3(brush->curcolor, curcolor);
+
/* Marker brush */
brush = BKE_gpencil_brush_addnew(ts, "Marker", false);
- brush->thickness = 10.0f;
- brush->flag &= ~GP_BRUSH_USE_RANDOM_PRESSURE;
- brush->draw_sensitivity = 2.0f;
- brush->flag &= ~GP_BRUSH_USE_PRESSURE;
+ brush->thickness = 20.0f;
+ brush->flag |= (GP_BRUSH_USE_RANDOM_PRESSURE | GP_BRUSH_USE_PRESSURE | GP_BRUSH_ENABLE_CURSOR);
+ brush->draw_sensitivity = 1.0f;
- brush->flag &= ~GP_BRUSH_USE_RANDOM_STRENGTH;
brush->draw_strength = 1.0f;
- brush->flag &= ~GP_BRUSH_USE_STENGTH_PRESSURE;
- brush->flag |= GP_BRUSH_ENABLE_CURSOR;
- brush->draw_random_press = 0.0f;
+ brush->draw_random_press = 0.374f;
brush->draw_jitter = 0.0f;
brush->flag |= GP_BRUSH_USE_JITTER_PRESSURE;
@@ -637,35 +721,36 @@ void BKE_gpencil_brush_init_presets(ToolSettings *ts)
brush->draw_angle_factor = 1.0f;
brush->draw_smoothfac = 1.0f;
- brush->draw_smoothlvl = 2;
- brush->sublevel = 2;
+ brush->draw_smoothlvl = 3;
+ brush->thick_smoothfac = 1.0f;
+ brush->thick_smoothlvl = 3;
+ brush->sublevel = 1;
brush->draw_random_sub = 0.0f;
copy_v3_v3(brush->curcolor, curcolor);
- /* Crayon brush */
- brush = BKE_gpencil_brush_addnew(ts, "Crayon", false);
- brush->thickness = 10.0f;
- brush->flag &= ~GP_BRUSH_USE_RANDOM_PRESSURE;
- brush->draw_sensitivity = 3.0f;
- brush->flag &= ~GP_BRUSH_USE_PRESSURE;
- brush->flag |= GP_BRUSH_ENABLE_CURSOR;
+ /* Experimental brush */
+ brush = BKE_gpencil_brush_addnew(ts, "Experimental", false);
+ brush->thickness = 6.0f;
+ brush->flag |= (GP_BRUSH_USE_PRESSURE | GP_BRUSH_ENABLE_CURSOR);
+ brush->draw_sensitivity = 1.0f;
- brush->flag &= ~GP_BRUSH_USE_RANDOM_STRENGTH;
- brush->draw_strength = 0.140f;
+ brush->draw_strength = 0.485f;
brush->flag |= GP_BRUSH_USE_STENGTH_PRESSURE;
brush->draw_random_press = 0.0f;
- brush->draw_jitter = 0.0f;
+ brush->draw_jitter = 0.10f;
brush->flag |= GP_BRUSH_USE_JITTER_PRESSURE;
brush->draw_angle = 0.0f;
brush->draw_angle_factor = 0.0f;
- brush->draw_smoothfac = 0.0f;
+ brush->draw_smoothfac = 1.3f;
brush->draw_smoothlvl = 1;
- brush->sublevel = 2;
- brush->draw_random_sub = 0.5f;
+ brush->thick_smoothfac = 0.0f;
+ brush->thick_smoothlvl = 0;
+ brush->sublevel = 3;
+ brush->draw_random_sub = 0;
copy_v3_v3(brush->curcolor, curcolor);
}
@@ -688,10 +773,10 @@ bGPDbrush *BKE_gpencil_brush_addnew(ToolSettings *ts, const char *name, bool set
/* set basic settings */
brush->thickness = 3;
brush->draw_smoothlvl = 1;
+ brush->flag = 0;
brush->flag |= GP_BRUSH_USE_PRESSURE;
brush->draw_sensitivity = 1.0f;
brush->draw_strength = 1.0f;
- brush->flag |= GP_BRUSH_USE_STENGTH_PRESSU
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list