Subsurf: minor optimization setting edge origindex
This commit is contained in:
parent
1e6fa59e4f
commit
bba974241b
|
@ -3388,7 +3388,7 @@ static CCGDerivedMesh *getCCGDerivedMesh(CCGSubSurf *ss,
|
|||
int index, totvert, totedge, totface;
|
||||
int i;
|
||||
int vertNum, edgeNum, faceNum;
|
||||
int *vertOrigIndex, *faceOrigIndex, *polyOrigIndex, *base_polyOrigIndex; /* *edgeOrigIndex - as yet, unused */
|
||||
int *vertOrigIndex, *faceOrigIndex, *polyOrigIndex, *base_polyOrigIndex, *edgeOrigIndex;
|
||||
short *edgeFlags;
|
||||
DMFlagMat *faceFlags;
|
||||
int *polyidx = NULL;
|
||||
|
@ -3398,7 +3398,7 @@ static CCGDerivedMesh *getCCGDerivedMesh(CCGSubSurf *ss,
|
|||
BLI_array_declare(vertidx);
|
||||
#endif
|
||||
int loopindex, loopindex2;
|
||||
int edgeSize, has_edge_origindex;
|
||||
int edgeSize;
|
||||
int gridSize;
|
||||
int gridFaces, gridCuts;
|
||||
/*int gridSideVerts;*/
|
||||
|
@ -3566,7 +3566,7 @@ static CCGDerivedMesh *getCCGDerivedMesh(CCGSubSurf *ss,
|
|||
faceFlags = ccgdm->faceFlags = MEM_callocN(sizeof(DMFlagMat) * totface, "faceFlags");
|
||||
|
||||
vertOrigIndex = DM_get_vert_data_layer(&ccgdm->dm, CD_ORIGINDEX);
|
||||
/*edgeOrigIndex = DM_get_edge_data_layer(&ccgdm->dm, CD_ORIGINDEX);*/
|
||||
edgeOrigIndex = DM_get_edge_data_layer(&ccgdm->dm, CD_ORIGINDEX);
|
||||
|
||||
faceOrigIndex = DM_get_tessface_data_layer(&ccgdm->dm, CD_ORIGINDEX);
|
||||
polyOrigIndex = DM_get_poly_data_layer(&ccgdm->dm, CD_ORIGINDEX);
|
||||
|
@ -3579,9 +3579,6 @@ static CCGDerivedMesh *getCCGDerivedMesh(CCGSubSurf *ss,
|
|||
mcol = DM_get_tessface_data_layer(&ccgdm->dm, CD_MCOL);
|
||||
#endif
|
||||
|
||||
has_edge_origindex = CustomData_has_layer(&ccgdm->dm.edgeData, CD_ORIGINDEX);
|
||||
|
||||
|
||||
loopindex = loopindex2 = 0; /* current loop index */
|
||||
for (index = 0; index < totface; index++) {
|
||||
CCGFace *f = ccgdm->faceMap[index].face;
|
||||
|
@ -3671,10 +3668,10 @@ static CCGDerivedMesh *getCCGDerivedMesh(CCGSubSurf *ss,
|
|||
}
|
||||
}
|
||||
|
||||
if (has_edge_origindex) {
|
||||
for (i = 0; i < numFinalEdges; ++i)
|
||||
*(int *)DM_get_edge_data(&ccgdm->dm, edgeNum + i,
|
||||
CD_ORIGINDEX) = ORIGINDEX_NONE;
|
||||
if (edgeOrigIndex) {
|
||||
for (i = 0; i < numFinalEdges; ++i) {
|
||||
edgeOrigIndex[edgeNum + i] = ORIGINDEX_NONE;
|
||||
}
|
||||
}
|
||||
|
||||
for (s = 0; s < numVerts; s++) {
|
||||
|
@ -3768,9 +3765,9 @@ static CCGDerivedMesh *getCCGDerivedMesh(CCGSubSurf *ss,
|
|||
vertNum++;
|
||||
}
|
||||
|
||||
for (i = 0; i < numFinalEdges; ++i) {
|
||||
if (has_edge_origindex) {
|
||||
*(int *)DM_get_edge_data(&ccgdm->dm, edgeNum + i, CD_ORIGINDEX) = mapIndex;
|
||||
if (edgeOrigIndex) {
|
||||
for (i = 0; i < numFinalEdges; ++i) {
|
||||
edgeOrigIndex[edgeNum + i] = mapIndex;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue