Page MenuHome

Refactor: Move PBVH update tag out of MVert
ClosedPublic

Authored by Hans Goudey (HooglyBoogly) on Feb 3 2022, 1:13 AM.

Details

Summary

This is part of the project of converting MVert into float3.
(more details in T93602), The pbvh update flag is removed and
replaced with a bitmap stored in the PBVH structure. This
patch is similar to D13878. This is mainly setup for an eventual
performance improvement by removing the extra data from
mesh vertices, but if it's consistent with testing in the other patch
doing the same thing for another "temp tag", then it may actually
increase the speed of sculpt code slightly, since less memory needs
to be loaded when checking/changing the flags.

One thing I'm not totally confident about is removing the update flag
from SCULPT_dynamic_topology_disable_ex. I did that because
ss->pbvh was null at that point, which suggests to me that
everything will be rebuilt anyway when the PBVH is recreated.
Disabling dynamic topology seems to work as expected.

Diff Detail

Event Timeline

Hans Goudey (HooglyBoogly) requested review of this revision.Feb 3 2022, 1:13 AM
Hans Goudey (HooglyBoogly) created this revision.
Hans Goudey (HooglyBoogly) retitled this revision from Cleanup: Remove PBVH update tag out of MVert to Cleanup: Move PBVH update tag out of MVert.
Hans Goudey (HooglyBoogly) retitled this revision from Cleanup: Move PBVH update tag out of MVert to Refactor: Move PBVH update tag out of MVert.
Hans Goudey (HooglyBoogly) edited the summary of this revision. (Show Details)

Cleanup: Slight changes to comments

The SCULPT_dynamic_topology_disable_ex case looks fine to me.

This revision is now accepted and ready to land.Feb 10 2022, 6:09 AM
Hans Goudey (HooglyBoogly) set the repository for this revision to rB Blender.Feb 10 2022, 5:01 PM