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:
authorAntonio Vazquez <blendergit@gmail.com>2020-05-07 16:02:21 +0300
committerAntonio Vazquez <blendergit@gmail.com>2020-05-07 16:11:16 +0300
commitb571516237a94e944b9182d233b9ba64819d92c4 (patch)
tree89a3b9446acc83730cd81886d44b16f0fdadbe1e /source/blender/blenkernel
parent9b7754883b3d41d41cd2df3b079cc1fce78c044a (diff)
GPencil: Include new Brush random curves
Now the brushes have several new random settings and use curves to define the effect. The curves have been moved below the parameter to keep UI standards and extra curve panels have been removed. {F8505387} The new curves are: * Hue. * Saturation. * Value. New option to random at stroke level instead to random at point level for the following values: * Thickness. * Strength. * UV. * Hue. * Saturation. * Value. Curves have been moved below the corresponding parameter and only are displayed in properties panel. Display the curves in the popover made it unusable. {F8505392} Also, the Pressure random has been renamed to Radius because the old name was not clear enough. Reviewed By: mendio, pablovazquez Differential Revision: https://developer.blender.org/D7577
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r--source/blender/blenkernel/intern/brush.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/brush.c b/source/blender/blenkernel/intern/brush.c
index f0ea820a1ac..0e6b9409404 100644
--- a/source/blender/blenkernel/intern/brush.c
+++ b/source/blender/blenkernel/intern/brush.c
@@ -89,6 +89,19 @@ static void brush_copy_data(Main *UNUSED(bmain), ID *id_dst, const ID *id_src, c
brush_src->gpencil_settings->curve_strength);
brush_dst->gpencil_settings->curve_jitter = BKE_curvemapping_copy(
brush_src->gpencil_settings->curve_jitter);
+
+ brush_dst->gpencil_settings->curve_rand_pressure = BKE_curvemapping_copy(
+ brush_src->gpencil_settings->curve_rand_pressure);
+ brush_dst->gpencil_settings->curve_rand_strength = BKE_curvemapping_copy(
+ brush_src->gpencil_settings->curve_rand_strength);
+ brush_dst->gpencil_settings->curve_rand_uv = BKE_curvemapping_copy(
+ brush_src->gpencil_settings->curve_rand_uv);
+ brush_dst->gpencil_settings->curve_rand_hue = BKE_curvemapping_copy(
+ brush_src->gpencil_settings->curve_rand_hue);
+ brush_dst->gpencil_settings->curve_rand_saturation = BKE_curvemapping_copy(
+ brush_src->gpencil_settings->curve_rand_saturation);
+ brush_dst->gpencil_settings->curve_rand_value = BKE_curvemapping_copy(
+ brush_src->gpencil_settings->curve_rand_value);
}
/* enable fake user by default */
@@ -107,6 +120,14 @@ static void brush_free_data(ID *id)
BKE_curvemapping_free(brush->gpencil_settings->curve_sensitivity);
BKE_curvemapping_free(brush->gpencil_settings->curve_strength);
BKE_curvemapping_free(brush->gpencil_settings->curve_jitter);
+
+ BKE_curvemapping_free(brush->gpencil_settings->curve_rand_pressure);
+ BKE_curvemapping_free(brush->gpencil_settings->curve_rand_strength);
+ BKE_curvemapping_free(brush->gpencil_settings->curve_rand_uv);
+ BKE_curvemapping_free(brush->gpencil_settings->curve_rand_hue);
+ BKE_curvemapping_free(brush->gpencil_settings->curve_rand_saturation);
+ BKE_curvemapping_free(brush->gpencil_settings->curve_rand_value);
+
MEM_SAFE_FREE(brush->gpencil_settings);
}
@@ -280,6 +301,13 @@ void BKE_brush_init_gpencil_settings(Brush *brush)
brush->gpencil_settings->curve_sensitivity = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
brush->gpencil_settings->curve_strength = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
brush->gpencil_settings->curve_jitter = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
+
+ brush->gpencil_settings->curve_rand_pressure = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
+ brush->gpencil_settings->curve_rand_strength = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
+ brush->gpencil_settings->curve_rand_uv = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
+ brush->gpencil_settings->curve_rand_hue = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
+ brush->gpencil_settings->curve_rand_saturation = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
+ brush->gpencil_settings->curve_rand_value = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
}
/* add a new gp-brush */