Page MenuHome

Weight Paint Mode: wrong vertex selection with active xray and object with modifier
Closed, ResolvedPublicBUG


System Information
Operating system: win10 pro - 64bit
Graphics card: GeForce GTX 960

Blender Version
Broken: blender-2.83

Short description of error
Box-selecting vertices in weight paint mode behaves as if the deformation of the armature isn't applied.

Exact steps for others to reproduce the error

  • Open:

  • Use Box selection


  • Start with a model weighted to a armature with a pose != restpose (e.g. take the file I have uploaded)
  • Model needs a Mirror modifier applied before the armature modifier (see example) (without modifier it will work as expected without bug)
  • Activate X-Ray view mode (without it will work), viewport shading doesn't seem to matter
  • Select model and go into weight paint mode
  • Activate vertex selection (Face selection will work)
  • Choose Select Box mode (Single click selection will work)
  • Try to precisely box select one or multiple vertices which are transformed by the armature pose - it will not select them or it will select other vertices depending on your box selection and how far the vertices are transformed from their rest position.
  • Now try to precisely box-select them at their rest position - they will be selected

Event Timeline

Philipp Oeser (lichtwerk) lowered the priority of this task from 90 to 50.Aug 7 2019, 11:39 AM

Confirmed, checking...

Works if X-Ray alpha is actually 1.0 (of course this defeats the purpose -- just saying if this helps resolving the bug...)

Looks like geometry of any generative modifier interferes with selection in this scenario?
(e.g. substituting the mirror with an array modifier will result in non of the generated geo to be selectable at all -- which is not the case if X-Ray is OFF...)

@Jeroen Bakker (jbakker): does this ring a bell?
CC @Clément Foucault (fclem)
CC @Germano Cavalcante (mano-wii)

It seems that this problem has always existed.
The feature was added in rB4612bbf7dbe7
@Campbell Barton (campbellbarton), is there any reason to use mesh deform instead of the final one?

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);
Germano Cavalcante (mano-wii) changed the subtype of this task from "Report" to "Bug".

I think this was probably fixed by rBf1ac64921b49, at least I can't reproduce it any more.

I think this was probably fixed by rBf1ac64921b49, at least I can't reproduce it any more.

It is still reproducible in my case.
I updated the report description.

Ah, I think I was trying face selection mode not vertex selection mode. Can repro now, my bad!

Jeroen Bakker (jbakker) closed this task as Resolved.May 22 2020, 7:57 AM
Jeroen Bakker (jbakker) claimed this task.

I am not able to reproduce this anymore in b2.83/b2.90. But was able to reproduce it in 2.82a