Merge branch 'blender-v2.92-release'

This commit is contained in:
Campbell Barton 2021-01-19 17:14:47 +11:00
commit 1cc54107a9
1 changed files with 13 additions and 0 deletions

View File

@ -458,6 +458,7 @@ static void curve_to_displist(Curve *cu,
/**
* \param normal_proj: Optional normal that's used to project the scanfill verts into 2d coords.
* Pass this along if known since it saves time calculating the normal.
* This is also used to initialize #DispList.nors (one normal per display list).
* \param flipnormal: Flip the normal (same as passing \a normal_proj negated)
*/
void BKE_displist_fill(ListBase *dispbase,
@ -550,6 +551,18 @@ void BKE_displist_fill(ListBase *dispbase,
dlnew->index = MEM_mallocN(sizeof(int[3]) * tot, "dlindex");
dlnew->verts = MEM_mallocN(sizeof(float[3]) * totvert, "dlverts");
if (normal_proj != NULL) {
/* Use a single normal for #DL_INDEX3.
* Counter intuitively, the normal must always be the flipped projection vector. */
dlnew->nors = MEM_mallocN(sizeof(float[3]), "dlnors");
if (flipnormal) {
copy_v3_v3(dlnew->nors, normal_proj);
}
else {
negate_v3_v3(dlnew->nors, normal_proj);
}
}
/* vert data */
f1 = dlnew->verts;
totvert = 0;