Page MenuHome

Undo bug while sculpting
Closed, DuplicatePublicBUG

Description

System Information
Operating system: Windows-10-10.0.18362-SP0 64 Bits
Graphics card: GeForce RTX 2070 SUPER/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 456.71

Blender Version
Broken: version: 2.92.0 Alpha, branch: master, commit date: 2020-11-19 16:19, hash: rB72a199e148b2
Worked: (newest version of Blender that worked as expected)

Short description of error
When using undo during sculpting, both the last stroke and the last subdivision level are canceled at the same time.

Exact steps for others to reproduce the error
1 - With the default General scene, got to Sculpt Mode
2 - Add multiresolution
3 - Add a few levels of subdivision
4 - Make a stroke
5 - Press Ctrl+Z (nothing happens)
6 - Press Ctrl+Z again (Both stroke and add last subd level canceled)

The problem occurs only when you try to undo the first stroke after adding a subdivision layer

Event Timeline

Germano Cavalcante (mano-wii) changed the task status from Needs Triage to Confirmed.Nov 20 2020, 3:56 PM
Germano Cavalcante (mano-wii) changed the subtype of this task from "Report" to "Bug".

I can confirm.

@TheRedWaxPolice (TheRedWaxPolice) much better to have a new report, easier to keep track of things...

But indeed almost certainly same root issue as in T82388, will check.

OK, so don't think this is related to previous T82388 actually. Object and mesh do get re-read from memory as expected, yet the sculpt stroke remains visible.

Not sure what is going on here, not even sure how that is possible, since undoing (and re-reading object) should nuke all sculpting data. Could be related to how multires works... need more investigation work. :(

I think this could be related to my report. I also get multiple things undone at once, but in edit mode. https://developer.blender.org/T82991

This is actually same issue as T82532: basically, first sculpt undo step will never be undone in current code (fact that it gets undone on redo is expected due to internal behavior of sculpt undo steps). New memfile undo does not cause any new issue here, it merely reveals existing ones, since it does not do a full complete re-read of the file data anymore, but typically only updates a few IDs.

See T83806.