Blender Git Commits

Blender Git "temp-face-set-fixes" branch commits.

March 25, 2020, 14:30 (GMT)
Merge remote-tracking branch 'origin/master' into temp-face-set-fixes
March 25, 2020, 14:30 (GMT)
Fix T74637: Reset face set data when disabling dyntopo

Last time I checked Face Sets were preserved in a more or less
predictable way when modifying the mesh with dyntopo. As it looks that
in some problems this may cause bugs and you can't see or use face sets
when modifying the topology of the mesh whith dyntopo active, it is
probably better to reset them when going from dyntopo to mesh. This way
you know that you are always going to get a predictable face sets state.

Maniphest Tasks: T74637

Differential Revision:
March 25, 2020, 14:30 (GMT)
Fix T74761: Reimplement vertex to face sets visibility sync

This fixes multiple issues:
- Adds tag to update shading when changing vertex visibiliyt. This makes the mesh visibility update when the operator ends.
- Sync vertex to face sets no longer requires the pmap, so it does not crash. (Maybe we can initialize the pmap on undo to avoid these problems in the future).
- Sync vertex to face sets now works in a coherent way with the rest of visibility operations. Hide Box and Hide mask now sync the visibility changes to the face sets, so the all the operations are now getting a correct visibility state.

Maniphest Tasks: T74761

Differential Revision:
March 25, 2020, 14:29 (GMT)
Fix T74780: Face sets operators not aware of SCULPT_FACE_SET_NONE

SCULPT_FACE_SET_NONE default value is 0 and it is rendered hidden, so
the invert sign operation to show it was not working. Now the show all
function sets this face set to ID 1 before setting its sign.

I also refactored this check in gpu_buffers.

Not related to the reported issue, but the mesh in attached contains non
manifold geometry with hidden loose vertices, so the visibility state
was not syncing correctly to those vertices. Now the toggle operators
checks the current visibility only on the face sets, so no manifold
vertices are ignored (as they are in the rest of operations in sculpt

Maniphest Tasks: T74780

Differential Revision:
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021