Page MenuHome

Fix transform_conversions.c::set_prop_dist(...) to check all selected vertices when finding nearest selected vertex.
Changes PlannedPublic

Authored by Alan Troth (Al) on Mon, Nov 26, 12:44 AM.

Details

Summary

Upgrade transform_conversions.c::set_prop_dist(...) to check all selected vertices when finding nearest selected vertex.

The current implementation of the set_prop_dist only looks for the nearest selected vertex to an unselected vertex from the same object as the unselected vertex. The new implementation looks across all objects for the nearest selected vertex.

I found this bug while looking in to why multi object edit proportional editing wasn't working as expected.

You will need diff D3992 to test this code. Also note that at the date of this diff, any objects that are being edited that don't have any vertices selected won't have a TransDataContainer - in other words if an object doesn't have at least one selected vertex it will not be affected by proportional editing.

Diff Detail

Repository
rB Blender
Branch
set_prop_dist (branched from blender2.8)
Build Status
Buildable 2543
Build 2543: arc lint + arc unit

Event Timeline

Alan Troth (Al) planned changes to this revision.EditedMon, Nov 26, 12:48 AM

Since updating to the newest blender2.8 code I'm having crashes transforming uv vertices.

I've also noticed that my code needs to transform vertices to world space in order to compare them across objects. At the moment the code only rotates to world space. (I've been testing mainly in the uv window.)

I'll do a full recompile and get back to this code when I can.

Could you do a performance comparison with a single fairly high poly mesh, with around half the vertices selected?

For changes to internal workings like this we should take care it doesn't introduce performance regressions.