From 1a6119c8e467f23ae83be12c66b30c5e785700aa Mon Sep 17 00:00:00 2001 From: Antonio Vazquez Date: Sun, 3 May 2020 13:33:58 +0200 Subject: GPencil: More changes to improve Chisel brush More small tweaks to get the right "feeling" when drawing. The defaults has been tested by @pepeland. --- source/blender/editors/gpencil/gpencil_paint.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'source/blender/editors/gpencil') diff --git a/source/blender/editors/gpencil/gpencil_paint.c b/source/blender/editors/gpencil/gpencil_paint.c index 561104b0b98..961c4e05a28 100644 --- a/source/blender/editors/gpencil/gpencil_paint.c +++ b/source/blender/editors/gpencil/gpencil_paint.c @@ -515,7 +515,6 @@ static void gp_brush_angle(bGPdata *gpd, Brush *brush, tGPspoint *pt, const floa float mvec[2]; float sen = brush->gpencil_settings->draw_angle_factor; /* sensitivity */ float fac; - float mpressure; /* default angle of brush in radians */ float angle = brush->gpencil_settings->draw_angle; @@ -543,9 +542,7 @@ static void gp_brush_angle(bGPdata *gpd, Brush *brush, tGPspoint *pt, const floa fac = 1.0f - fabs(dot_v2v2(v0, mvec)); /* 0.0 to 1.0 */ /* interpolate with previous point for smoother transitions */ - mpressure = interpf(pt->pressure - (sen * fac), (pt - 1)->pressure, 0.3f); - pt->pressure = mpressure; - + pt->pressure = interpf(pt->pressure - (sen * fac), (pt - 1)->pressure, 0.3f); CLAMP(pt->pressure, GPENCIL_ALPHA_OPACITY_THRESH, 1.0f); } } @@ -3160,9 +3157,8 @@ static void gp_brush_angle_segment(tGPsdata *p, tGPspoint *pt_prev, tGPspoint *p normalize_v2(mvec); fac = 1.0f - fabs(dot_v2v2(v0, mvec)); /* 0.0 to 1.0 */ /* interpolate with previous point for smoother transitions */ - pt->pressure = interpf(pt->pressure - (sen * fac), pt_prev->pressure, 0.5f); - - CLAMP(pt->pressure, pt_prev->pressure * 0.5f, 1.0f); + pt->pressure = interpf(pt->pressure - (sen * fac), pt_prev->pressure, 0.3f); + CLAMP(pt->pressure, GPENCIL_ALPHA_OPACITY_THRESH, 1.0f); } /* Add arc points between two mouse events using the previous segment to determine the vertice of @@ -3251,7 +3247,7 @@ static void gpencil_add_arc_points(tGPsdata *p, float mval[2], int segments) /* Apply angle of stroke to brush size to interpolated points but slightly attenuated.. */ if (brush_settings->draw_angle_factor != 0.0f) { gp_brush_angle_segment(p, pt_step, pt); - CLAMP(pt->pressure, pt_prev->pressure * 0.8f, 1.0f); + CLAMP(pt->pressure, pt_prev->pressure * 0.5f, 1.0f); /* Use the previous interpolated point for next segment. */ pt_step = pt; } -- cgit v1.2.3