Cleanup: Remove unused DerivedMesh normal handling
This function and flags weren't used outside of DerivedMesh code, and since the plan is to remove the data structure, it makes sense to remove complexity where possible.
This commit is contained in:
parent
a04d0de039
commit
14427f5aaa
|
@ -107,9 +107,6 @@ typedef enum DerivedMeshType {
|
|||
typedef enum DMDirtyFlag {
|
||||
/* dm has valid tessellated faces, but tessellated CDDATA need to be updated. */
|
||||
DM_DIRTY_TESS_CDLAYERS = 1 << 0,
|
||||
|
||||
/* check this with modifier dependsOnNormals callback to see if normals need recalculation */
|
||||
DM_DIRTY_NORMALS = 1 << 1,
|
||||
} DMDirtyFlag;
|
||||
|
||||
typedef struct DerivedMesh DerivedMesh;
|
||||
|
@ -139,9 +136,6 @@ struct DerivedMesh {
|
|||
|
||||
short tangent_mask; /* which tangent layers are calculated */
|
||||
|
||||
/** Calculate vert and face normals */
|
||||
void (*calcNormals)(DerivedMesh *dm);
|
||||
|
||||
/** Loop tessellation cache (WARNING! Only call inside threading-protected code!) */
|
||||
void (*recalcLoopTri)(DerivedMesh *dm);
|
||||
/** accessor functions */
|
||||
|
@ -354,8 +348,6 @@ void DM_copy_vert_data(struct DerivedMesh *source,
|
|||
*/
|
||||
void DM_DupPolys(DerivedMesh *source, DerivedMesh *target);
|
||||
|
||||
void DM_ensure_normals(DerivedMesh *dm);
|
||||
|
||||
/**
|
||||
* Ensure the array is large enough.
|
||||
*
|
||||
|
|
|
@ -464,14 +464,6 @@ void DM_DupPolys(DerivedMesh *source, DerivedMesh *target)
|
|||
}
|
||||
}
|
||||
|
||||
void DM_ensure_normals(DerivedMesh *dm)
|
||||
{
|
||||
if (dm->dirty & DM_DIRTY_NORMALS) {
|
||||
dm->calcNormals(dm);
|
||||
}
|
||||
BLI_assert((dm->dirty & DM_DIRTY_NORMALS) == 0);
|
||||
}
|
||||
|
||||
void DM_ensure_looptri_data(DerivedMesh *dm)
|
||||
{
|
||||
const unsigned int totpoly = dm->numPolyData;
|
||||
|
@ -524,7 +516,7 @@ void DM_set_only_copy(DerivedMesh *dm, const CustomData_MeshMasks *mask)
|
|||
* see replies to r50969, Campbell */
|
||||
#if 0
|
||||
CustomData_set_only_copy(&dm->loopData, mask->lmask);
|
||||
CustomData_set_only_copy(&dm->polyData, mask->pmask);
|
||||
Custom(&dm->polyData, mask->pmask);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
|
@ -265,9 +265,6 @@ static DerivedMesh *cdDM_from_mesh_ex(Mesh *mesh,
|
|||
dm->deformedOnly = 1;
|
||||
dm->cd_flag = mesh->cd_flag;
|
||||
|
||||
if (mesh->runtime.cd_dirty_vert & CD_MASK_NORMAL) {
|
||||
dm->dirty |= DM_DIRTY_NORMALS;
|
||||
}
|
||||
/* TODO: DM_DIRTY_TESS_CDLAYERS ? Maybe not though,
|
||||
* since we probably want to switch to looptris? */
|
||||
|
||||
|
@ -282,7 +279,9 @@ static DerivedMesh *cdDM_from_mesh_ex(Mesh *mesh,
|
|||
CustomData_merge(&mesh->pdata, &dm->polyData, cddata_masks.pmask, alloctype, mesh->totpoly);
|
||||
|
||||
cddm->mvert = CustomData_get_layer(&dm->vertData, CD_MVERT);
|
||||
cddm->vert_normals = CustomData_get_layer(&dm->vertData, CD_NORMAL);
|
||||
/* Though this may be an unnecessary calculation, simply retrieving the layer may return nothing
|
||||
* or dirty normals. */
|
||||
cddm->vert_normals = BKE_mesh_vertex_normals_ensure(mesh);
|
||||
cddm->medge = CustomData_get_layer(&dm->edgeData, CD_MEDGE);
|
||||
cddm->mloop = CustomData_get_layer(&dm->loopData, CD_MLOOP);
|
||||
cddm->mpoly = CustomData_get_layer(&dm->polyData, CD_MPOLY);
|
||||
|
|
Loading…
Reference in New Issue