Page MenuHome

Can't lasso select vertices on deformed mesh in Weight paint mode while in wireframe
Confirmed, NormalPublicBUG

Description

System Information
Operating system: Windows-10-10.0.18362-SP0 64 Bits
Graphics card: GeForce GTX 1050 Ti/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 441.66

Blender Version
Broken: version: 2.82 (sub 6), branch: master, commit date: 2020-02-02 08:28, hash: rBf51286cb8cc8
Worked: (optional)

Short description of error
Lasso select doesn't take into account mesh deformations in wireframe if mesh has Mirror modifier

Exact steps for others to reproduce the error

  1. Bind a mesh with mirror modifier to an armature
  2. Rotate some bones
  3. Select armature and mesh
  4. Enter Weight paint mode
  5. Turn on Wireframe shading
  6. Try to make lasso selection on deformed parts

Event Timeline

Campbell Barton (campbellbarton) changed the task status from Needs Triage to Confirmed.EditedTue, Feb 4, 4:01 AM
Campbell Barton (campbellbarton) changed the subtype of this task from "Report" to "Bug".

Looked into this, it's not a new issue in 2.8x, it happens in 2.79 as well.

While this fixes the issue, it's a risky change to make before a release since it may cause issues for other modifier configurations, edge and face versions of these functions should also match.

diff --git a/source/blender/editors/space_view3d/view3d_iterators.c b/source/blender/editors/space_view3d/view3d_iterators.c
index f6fa6f6fb45..efb71f9a682 100644
--- a/source/blender/editors/space_view3d/view3d_iterators.c
+++ b/source/blender/editors/space_view3d/view3d_iterators.c
@@ -126,7 +126,7 @@ void meshobject_foreachScreenVert(
   Scene *scene_eval = DEG_get_evaluated_scene(vc->depsgraph);
   Object *ob_eval = DEG_get_evaluated_object(vc->depsgraph, vc->obact);
 
-  me = mesh_get_eval_deform(vc->depsgraph, scene_eval, ob_eval, &CD_MASK_BAREMESH);
+  me = mesh_get_eval_final(vc->depsgraph, scene_eval, ob_eval, &CD_MASK_BAREMESH);
 
   ED_view3d_check_mats_rv3d(vc->rv3d);