I’m experimenting with a different method of undo for dyntopo. If successful, it will use less memory and affect fewer parts of the code outside sculpting. It’s still in the early stages, and not pushed publicly anywhere. Just wanted to pass that along so that y’all know the project is still moving forward.
14 thoughts on “Variations on Undo”
Great news, Nicholas! Thank you! Just wanted to note that we (BA users) noticed significant growth of memory usage when sculpting with Dynatopo enabled. This happens even when undo is disabled. RAM usage grows after every brush stroke. When sculpting with dynatopo enabled blender may reach the peak of the available RAM in minutes. To free memory you should press Tab to go to edit mode. Please see http://blenderartists.org/forum/showthread.php?257749-The-Dynamic-Topology-Branch-is-here!&p=2200309&viewfull=1#post2200309
A significant portion of that RAM usage might still be undo. Disabling undo in the dyntopo branch probably isn’t doing what you expect right now.
I’ve found that simply toggling Smooth shading on/off has the same effect as going in-out of edit mode, and is usually much faster.
Thank you for the update. This branch is the ONE I really hope gets merged into trunk ASAP after the 2.64 release. Thank you for your hard work!
I think it’s scheduled for 2.65. AFAIK 2.64 is feature frozen already.
Excuse my french – that’s what you said.
Awwwwww I hope we will get “Euler operations” in to a regular mesh editing, not only for sculpt.
The euler operations are already in Blender — that’s what BMesh uses. The BMesh log is just logging those operations in a way that can be reversed.
I thought euler operations will make undo use less memory.
I mean this issue: (Entering and exiting mesh edit mode uses a LOT of undo memory)
There are a variety of issues at play. Bmesh is more memory intensive, more data is being stored in customdata layers, and yes, the undo stack is storing full copies.
The bmlog would help some with that last problem, but not in all cases: subdiving the entire mesh, for example, is more efficient to log as a full mesh copy.
Further, I had not yet written the customdata support for bmlog.
dyntopo’s brushes are still not as smooth as sculptris. but its getting there. I notice that the dynamic tessalation is not in any way listening to the angle of the brush stroke you make or the shape of the brush.. As a result I have to constantly smooth out areas and switch between pinch and polish brushes
Actually the brushes in Blender just need to be tweeked a bit and then they feel almost on-par with Sculptris. For instance, adjusting the curve (make it “wider”/”less-steep”) and enabling auto-smooth will usually make the brushes feel right. Also, Grab-brush defaults to “Area Plane”; changing it to “View Plane” seems to make it easier to control (granted i’m not positive about this).
I just wanted to say thank you, because you’re a developer that really puts out your work for the community to enjoy and cooperate (if possible).
Hey Nicholas, after several months of being out of communication due to a lack of internet access, Farsthary is back. Have you considered contacting him to discuss any of his insights into dynamic topology sculpting? I’m not sure to what extent he is able to collaborate, now that he is once again working on 3D Coat’s LiveClay.
Congratulations to both of you! Obviously, your talents are not going unnoticed.