From 1f35dc9d48a317c85d3587ec54bf092bf2be82bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20T=C3=B6nne?= Date: Thu, 8 Feb 2024 16:45:38 +0100 Subject: [PATCH] Grease Pencil: Fix zero default hardness created by the opacity modifier Opacity modifier can also change hardness. It was creating the curve "hardness" attribute but using the default zero value. Hardness should be 1.0 by default. Pull Request: https://projects.blender.org/blender/blender/pulls/118000 --- .../blender/modifiers/intern/MOD_grease_pencil_opacity.cc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/source/blender/modifiers/intern/MOD_grease_pencil_opacity.cc b/source/blender/modifiers/intern/MOD_grease_pencil_opacity.cc index 2879d271c5d..de75b7f661a 100644 --- a/source/blender/modifiers/intern/MOD_grease_pencil_opacity.cc +++ b/source/blender/modifiers/intern/MOD_grease_pencil_opacity.cc @@ -161,10 +161,10 @@ static void modify_hardness(const GreasePencilOpacityModifierData &omd, const IndexMask &curves_mask) { bke::MutableAttributeAccessor attributes = curves.attributes_for_write(); - bke::SpanAttributeWriter hardnesses = attributes.lookup_for_write_span("hardness"); - if (!hardnesses) { - return; - } + bke::SpanAttributeWriter hardnesses = attributes.lookup_or_add_for_write_span( + "hardness", + bke::AttrDomain::Curve, + bke::AttributeInitVArray(VArray::ForSingle(1.0f, curves.curve_num))); curves_mask.foreach_index(GrainSize(512), [&](int64_t curve_i) { hardnesses.span[curve_i] = std::clamp(