diff options
author | Jeroen Bakker <jbakker> | 2020-05-14 15:22:52 +0300 |
---|---|---|
committer | Jeroen Bakker <j.bakker@atmind.nl> | 2020-05-14 15:28:27 +0300 |
commit | c9360b239bc7ebe09721b7d740995f01ee7d8bb3 (patch) | |
tree | 4901d8eedeca4a4f6fc138ae22231ce865082720 /source/blender/editors/sculpt_paint/paint_image_proj.c | |
parent | 08ac4d3d71dee9fc4ec7f878e57de59c87115280 (diff) |
Fix T73286: Projection Painting Dense Mesh Bleed
When projection painting a dense mesh a face can be marked
PROJ_FACE_DEGENERATE when it is too small. Degenerative faces are
handled differently and as documented can create incorrect results.
Not sure what these incorrect results are and if there could be a better
solution for handling these results.
This fix would only mark a face degenerative when all the verts are the
same.
Reviewed By: Campbell Barton
Differential Revision: https://developer.blender.org/D7662
Diffstat (limited to 'source/blender/editors/sculpt_paint/paint_image_proj.c')
-rw-r--r-- | source/blender/editors/sculpt_paint/paint_image_proj.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/editors/sculpt_paint/paint_image_proj.c b/source/blender/editors/sculpt_paint/paint_image_proj.c index 3dc6305dcf2..5e3204b6d5a 100644 --- a/source/blender/editors/sculpt_paint/paint_image_proj.c +++ b/source/blender/editors/sculpt_paint/paint_image_proj.c @@ -4022,7 +4022,7 @@ static void project_paint_bleed_add_face_user(const ProjPaintState *ps, * Ideally this would be checked later, not to add to the cost of computing non-degenerate * triangles, but that would allow other triangles to still find adjacent seams on degenerate * triangles, potentially causing incorrect results. */ - if (area_tri_v2(UNPACK3(lt_tri_uv)) > FLT_EPSILON) { + if (area_tri_v2(UNPACK3(lt_tri_uv)) > 0.0f) { const int lt_vtri[3] = {PS_LOOPTRI_AS_VERT_INDEX_3(ps, lt)}; void *tri_index_p = POINTER_FROM_INT(tri_index); |