diff options
author | Antony Riakiotakis <kalast@gmail.com> | 2015-05-27 20:52:12 +0300 |
---|---|---|
committer | Antony Riakiotakis <kalast@gmail.com> | 2015-05-27 20:52:12 +0300 |
commit | 07def553d2ad948f128a6be390abbab726dc89f0 (patch) | |
tree | a00c774a5d1575520c255a66e396f4949267e3e1 /source/blender/blenkernel/BKE_pbvh.h | |
parent | 9aea98d33cb1d3769532670ee194e466baf75f46 (diff) |
Fix T44745 non manifold edges of mesh do not work when smoothing in
multires.
Code had special guards for such edges to stop this from happening. I
don't see why this is needed though since code above assigns smoothed
positions for all vertices in the grid.
After removing the guards I saw that this in fact was the only place
where grd adjacency was used, so I completely removed it.
Diffstat (limited to 'source/blender/blenkernel/BKE_pbvh.h')
-rw-r--r-- | source/blender/blenkernel/BKE_pbvh.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/source/blender/blenkernel/BKE_pbvh.h b/source/blender/blenkernel/BKE_pbvh.h index c7ef53589aa..227994b73ee 100644 --- a/source/blender/blenkernel/BKE_pbvh.h +++ b/source/blender/blenkernel/BKE_pbvh.h @@ -34,7 +34,6 @@ struct CCGElem; struct CCGKey; struct CustomData; struct DMFlagMat; -struct DMGridAdjacency; struct MFace; struct MVert; struct PBVH; @@ -63,7 +62,7 @@ PBVH *BKE_pbvh_new(void); void BKE_pbvh_build_mesh(PBVH *bvh, struct MFace *faces, struct MVert *verts, int totface, int totvert, struct CustomData *vdata); void BKE_pbvh_build_grids(PBVH *bvh, struct CCGElem **grid_elems, - struct DMGridAdjacency *gridadj, int totgrid, + int totgrid, struct CCGKey *key, void **gridfaces, struct DMFlagMat *flagmats, unsigned int **grid_hidden); void BKE_pbvh_build_bmesh(PBVH *bvh, struct BMesh *bm, bool smooth_shading, struct BMLog *log, const int cd_vert_node_offset, const int cd_face_node_offset); @@ -176,7 +175,7 @@ void BKE_pbvh_node_fully_hidden_set(PBVHNode *node, int fully_hidden); void BKE_pbvh_node_get_grids(PBVH *bvh, PBVHNode *node, int **grid_indices, int *totgrid, int *maxgrid, int *gridsize, - struct CCGElem ***grid_elems, struct DMGridAdjacency **gridadj); + struct CCGElem ***grid_elems); void BKE_pbvh_node_num_verts(PBVH *bvh, PBVHNode *node, int *uniquevert, int *totvert); void BKE_pbvh_node_get_verts(PBVH *bvh, PBVHNode *node, @@ -204,7 +203,7 @@ void BKE_pbvh_update(PBVH *bvh, int flags, float (*face_nors)[3]); void BKE_pbvh_redraw_BB(PBVH *bvh, float bb_min[3], float bb_max[3]); void BKE_pbvh_get_grid_updates(PBVH *bvh, int clear, void ***r_gridfaces, int *r_totface); void BKE_pbvh_grids_update(PBVH *bvh, struct CCGElem **grid_elems, - struct DMGridAdjacency *gridadj, void **gridfaces, + void **gridfaces, struct DMFlagMat *flagmats, unsigned int **grid_hidden); /* Layer displacement */ |