@sidd017 I saw that D12028 was committed. Wonderful to see that aspect of UV selection was made better. I tested it today, and it would seem that this feature is only available with UV Sync Selection turned off? I was curious what the reason for that was, as I think it would be better yet to have it the default be it UV sync on or off. Will something like that be implemented, or is there something stopping it?
@Bobo_The_Imp Thanks for testing and hope you found the changes useful.
I think the default behavior for edge selection in sync select mode is correct. That’s why I didn’t make many changes to the code for UV sync selection.
It is possible that you might have encountered a corner/special case where edge selection is broken for UV sync selection. If that’s the case then let me know about it and I’ll try to fix it ASAP.
Could you explain the issue you are facing with an example?
Specifically, I’m not able to understand the expected behavior that you are suggesting for edge selection in sync select mode.
Oh sorry, I think I explained poorly. What I am referring too, at least from the user end of things, is a visual thing:
Here I start with UV Sync Selection off. It starts in vertex mode, so I switch it to edge mode. Here we see the new beautiful edge selection that reflects what modelling in the viewport would have. Then I switch the UV Sync Selection on, even though I am still in edge mode, vertices are still present. I feel like it should be no different from the behavior when UV sync selection is off (though shared edges would highlight along with your selection as per normal).
The behavior/feature that you are suggesting is actually now available in edge mode (with sync select disabled) as well.
Right next to the vert/edge/face/island buttons in the UI, you can find a dropdown titled Sticky Selection Mode. Change the option to shared vertex and that will allow you to select shared edges similar to your suggestion. Example screenshot :
For Sync selection enabled, this is actually a conflict between desired behavior and implementation logic.
By definition, UV sync select will ensure that UV selections and 3D viewport selections (in edit mode) are in sync. In some cases (ex: edge seams), this allows allows selecting vertices that are part of the selected shared edge, but individually the vertices are not part of any edge selection.
As per your suggestion, disabling vertices in these cases would actually be in conflict with the implementation logic for sync select mode.
Implementing your suggested feature/behavior might be possible, but I’ll have to check the code first.
Ah yes, I thought that was it. That makes sense why it was implemented as you said.
I very much appreciate your work here, but I am also hoping that the sync mode will not be needed in the future. T78393 by Daniel Bysted would remove sync as I understand it, and result in a much nicer workflow. Other software’s I have used circumvent this particular problem you mentioned above by having another mode interaction mode other than vertex, edge, face named UV. It is present in the UV editor but also in the 3D viewport. Having that other mode removes the need for syncing and not syncing.
Anyways, any and all changes to the UV editor are very welcomed, as it rarely gets any love. So thank you once again for your time!
Thanks for the feedback and taking the time to test this.
Checked the code for this, and it seems that both operators perform selection only when the entire UV edge is in the selection area. Another odd thing I noticed is that for UV faces, selection only works when face dots are within the selection area.
This isn’t a bug but I agree that this should match 3D viewport behavior. I’ll look into it.
Nice catch. Indeed there’s a bug with extend selection for the UV edge ring operator. I’ll look into this, but in the meantime could you submit this as a bug report?
Wasn’t aware of this feature. I’ll see what I can do.