diff options
-rw-r--r-- | source/blender/editors/sculpt_paint/paint_image.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/source/blender/editors/sculpt_paint/paint_image.c b/source/blender/editors/sculpt_paint/paint_image.c index 82d71304cc5..d52b17372f7 100644 --- a/source/blender/editors/sculpt_paint/paint_image.c +++ b/source/blender/editors/sculpt_paint/paint_image.c @@ -662,22 +662,24 @@ void paint_brush_color_get(struct Scene *scene, struct Brush *br, bool color_cor copy_v3_v3(color, BKE_brush_secondary_color_get(scene, br)); else { if (br->flag & BRUSH_USE_GRADIENT) { + float color_gr[4]; switch (br->gradient_stroke_mode) { case BRUSH_GRADIENT_PRESSURE: - do_colorband(br->gradient, pressure, color); + do_colorband(br->gradient, pressure, color_gr); break; case BRUSH_GRADIENT_SPACING_REPEAT: { float coord = fmod(distance / br->gradient_spacing, 1.0); - do_colorband(br->gradient, coord, color); + do_colorband(br->gradient, coord, color_gr); break; } case BRUSH_GRADIENT_SPACING_CLAMP: { - do_colorband(br->gradient, distance / br->gradient_spacing, color); + do_colorband(br->gradient, distance / br->gradient_spacing, color_gr); break; } } + copy_v3_v3(color, color_gr); } else copy_v3_v3(color, BKE_brush_color_get(scene, br)); |