Page MenuHome

Fix T98773: GPU Subdivision breaks auto selection in UV edit mode
AbandonedPublic

Authored by Kévin Dietrich (kevindietrich) on Jun 21 2022, 7:55 AM.

Details

Summary

When GPU subdivision is used, and the modifier is not set to be applied
on the cage, UV selection is not synced with the face selection in the
viewport.

This happens because the extraction, despite being in edit mode, is set
to MESH instead of BMESH (or MAPPED in some cases) like for CPU
subdivision, and since the mesh is not always synchrnised with the BMesh
the edit mode flags are not always updated.

With GPU subdivision, when creating the MeshRenderData, the condition
has_mdata && do_final && editmesh_eval_final != editmesh_eval_cage is
true which forces the MESH extraction. Following comment in D14485,
this replace the has_mdata in the condition with use_mapped which
solves the issue.

Diff Detail

Repository
rB Blender

Event Timeline

Kévin Dietrich (kevindietrich) requested review of this revision.Jun 21 2022, 7:55 AM
Kévin Dietrich (kevindietrich) created this revision.
This revision is now accepted and ready to land.Jun 21 2022, 7:29 PM

Reopening since the fix was reverted.

This revision is now accepted and ready to land.Jul 28 2022, 9:31 PM
Brecht Van Lommel (brecht) requested changes to this revision.Jul 28 2022, 9:31 PM
This revision now requires changes to proceed.Jul 28 2022, 9:31 PM