fix for error in recent commit. passing totface rather then totpoly, also add asserts if PBVH attempts to build without any faces (but with polys).
This commit is contained in:
@@ -218,7 +218,7 @@ static ListBase *cdDM_getPolyMap(Object *ob, DerivedMesh *dm)
|
||||
|
||||
create_vert_poly_map(&cddm->pmap, &cddm->pmap_mem,
|
||||
me->mpoly, me->mloop,
|
||||
me->totvert, me->totface, me->totloop);
|
||||
me->totvert, me->totpoly, me->totloop);
|
||||
}
|
||||
|
||||
return cddm->pmap;
|
||||
@@ -284,6 +284,7 @@ static struct PBVH *cdDM_getPBVH(Object *ob, DerivedMesh *dm)
|
||||
Mesh *me= ob->data;
|
||||
cddm->pbvh = BLI_pbvh_new();
|
||||
cddm->pbvh_draw = can_pbvh_draw(ob, dm);
|
||||
BLI_assert(!(me->mface == NULL && me->mpoly != NULL)); /* BMESH ONLY complain if mpoly is valid but not mface */
|
||||
BLI_pbvh_build_mesh(cddm->pbvh, me->mface, me->mvert,
|
||||
me->totface, me->totvert);
|
||||
|
||||
|
||||
@@ -2747,7 +2747,7 @@ static ListBase *ccgDM_getPolyMap(Object *ob, DerivedMesh *dm)
|
||||
|
||||
create_vert_poly_map(&ccgdm->pmap, &ccgdm->pmap_mem,
|
||||
me->mpoly, me->mloop,
|
||||
me->totvert, me->totface, me->totloop);
|
||||
me->totvert, me->totpoly, me->totloop);
|
||||
}
|
||||
|
||||
return ccgdm->pmap;
|
||||
@@ -2825,6 +2825,7 @@ static struct PBVH *ccgDM_getPBVH(Object *ob, DerivedMesh *dm)
|
||||
} else if(ob->type == OB_MESH) {
|
||||
Mesh *me= ob->data;
|
||||
ob->sculpt->pbvh= ccgdm->pbvh = BLI_pbvh_new();
|
||||
BLI_assert(!(me->mface == NULL && me->mpoly != NULL)); /* BMESH ONLY complain if mpoly is valid but not mface */
|
||||
BLI_pbvh_build_mesh(ccgdm->pbvh, me->mface, me->mvert,
|
||||
me->totface, me->totvert);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user