GPencil: Fix unreported primitive color always set as Vertex Color

When drawing a primitive, the color was always assigned as vertex color, so it was impossible to change it in the material settings.

Now, the color is set to material color or vertex color as expected.
This commit is contained in:
Antonio Vazquez 2020-07-01 18:54:52 +02:00
parent 11a1ddfd30
commit bf5a656ff6
1 changed files with 7 additions and 1 deletions

View File

@ -695,6 +695,7 @@ static void gpencil_primitive_update_strokes(bContext *C, tGPDprimitive *tgpi)
bool is_depth = (bool)(*align_flag & (GP_PROJECT_DEPTH_VIEW | GP_PROJECT_DEPTH_STROKE));
const bool is_camera = (bool)(ts->gp_sculpt.lock_axis == 0) &&
(tgpi->rv3d->persp == RV3D_CAMOB) && (!is_depth);
const bool is_vertex_stroke = GPENCIL_USE_VERTEX_COLOR_STROKE(ts, brush);
if (tgpi->type == GP_STROKE_BOX) {
gps->totpoints = (tgpi->tot_edges * 4 + tgpi->tot_stored_edges);
@ -1019,7 +1020,12 @@ static void gpencil_primitive_update_strokes(bContext *C, tGPDprimitive *tgpi)
pt->time = 0.0f;
pt->flag = 0;
pt->uv_fac = tpt->uv_fac;
copy_v4_v4(pt->vert_color, tpt->vert_color);
if (is_vertex_stroke) {
copy_v4_v4(pt->vert_color, tpt->vert_color);
}
else {
zero_v4(pt->vert_color);
}
if (gps->dvert != NULL) {
MDeformVert *dvert = &gps->dvert[i];