[Bf-blender-cvs] [72b8f607e77] blender-v3.2-release: Fix T98913: GPU Subdivision: "Show Wire" overlay glitch

Kévin Dietrich noreply at git.blender.org
Wed Jun 22 13:03:01 CEST 2022


Commit: 72b8f607e77f674b5918f0526f55c4cb07c941eb
Author: Kévin Dietrich
Date:   Mon Jun 20 12:13:55 2022 +0200
Branches: blender-v3.2-release
https://developer.blender.org/rB72b8f607e77f674b5918f0526f55c4cb07c941eb

Fix T98913: GPU Subdivision: "Show Wire" overlay glitch

Issue is caused by an off by one error which would map some edge loops to
the loops of some the next polygon in the list of polygon, which may not
be a topological neighbor.

===================================================================

M	source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_lines_paint_mask.cc

===================================================================

diff --git a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_lines_paint_mask.cc b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_lines_paint_mask.cc
index 286c7ea9c43..f435dc0a24f 100644
--- a/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_lines_paint_mask.cc
+++ b/source/blender/draw/intern/mesh_extractors/extract_mesh_ibo_lines_paint_mask.cc
@@ -126,7 +126,8 @@ static void extract_lines_paint_mask_iter_subdiv_mesh(const DRWSubdivCache *subd
       if (!((mr->use_hide && (me->flag & ME_HIDE)) ||
             ((mr->extract_type == MR_EXTRACT_MAPPED) && (mr->e_origindex) &&
              (mr->e_origindex[coarse_edge_index] == ORIGINDEX_NONE)))) {
-        const uint ml_index_other = (loop_idx == end_loop_idx) ? start_loop_idx : loop_idx + 1;
+        const uint ml_index_other = (loop_idx == (end_loop_idx - 1)) ? start_loop_idx :
+                                                                       loop_idx + 1;
         if (coarse_quad->flag & ME_FACE_SEL) {
           if (BLI_BITMAP_TEST_AND_SET_ATOMIC(data->select_map, coarse_edge_index)) {
             /* Hide edge as it has more than 2 selected loop. */



More information about the Bf-blender-cvs mailing list